[184] in bugtraq

home help back first fref pref prev next nref lref last post

SunOS loses with sending broadcast packets.

daemon@ATHENA.MIT.EDU (Darren Reed)
Sun Nov 6 05:31:49 1994

From: Darren Reed <avalon@coombs.anu.edu.au>
To: bugtraq@fc.net
Date: Sun, 6 Nov 1994 20:06:14 +1100 (EDT)


In SunOS 4.1.x, the following 4 lines seem to be missing from ip_output():
                if ((flags & IP_ALLOWBROADCAST) == 0) {
                        error = EACCES;
                        goto bad;
                }
(in ip_output.c).  They're there in 4.3, 4.4...

My educated guess is that they did this so that RPC would work (programs
such as "rusers" don't appear to do a setsockopt to toggle SO_BROADCAST)
rather than fix the RPC library (clnt_broadcast doesn't set this option
in the RPC library I have).  I managed to discover this by replacing
Sun's ip_output.o with one I compiled from 4.3BSD and found rusers no
longer worked...(I'm scared to think what else I've broken!).  Using a
version of rusers I wrote myself, I had to insert a setsockopt in the
clnt_broadcast() routine before it would work - it returned the "send:
permission denied" which has been observed elsewhere.

Luckily I wasn't stuck trying to `debug' this problem with Solaris2...

darren

p.s. has anyone reported this as a bug to Sun or know if Sun plan on
     doing anything about this problem ?

home help back first fref pref prev next nref lref last post