On Sun, Apr 10, 2005 at 03:27:51PM +0200, Christian Hammers wrote:
> > 
> > For some reason, zebra opens a raw ICMPv6 socket, but it looks like it
> > does not reads data on it :
> > 
> > # netstat -l
> > Proto Recv-Q Send-Q Local Address           Foreign Address
> > State       PID/Program name
> > (...)
> > raw6  109380      0 *:ipv6-icmp             *:*
> > 7           22504/zebra
> > 
> > If it doesn't need it, it should be closed/not opened. If it's only for
> > writing, the socket should be shutdown for reading. If otherwise, it's
> > a bug.

I just fixed a similar problem with ICMP V4 IRDP sockets being created
for no reason.  A quick glance suggests that the problem is that
main() always calls rtadv_init(), and rtadv_init() calls rtadv_make_socket().
And rtadv_make_socket() creates an ICMPV6 socket.  I would guess that
the fix is to wait until no_ipv6_nd_suppress_ra() is called before creating
the socket, but it would be best if somebody more familiar with that
code could comment...

Regards,
Andy


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to