[quagga-dev 3704] Re: Patch to fix multicast problem on FreeBSD 5.x

Paul Jakma paul at clubi.ie
Sat Oct 1 20:10:43 BST 2005


On Sat, 1 Oct 2005, Andrew J. Schorr wrote:

> I have not tried to figure out whether Linux or Solaris have this 
> issue. I think the attached patch should hit the FreeBSD case.  If 
> someone else can try to figure out whether other platforms need a 
> similar patch, that would be great...

I can give it a try. It probably wouldn't hurt to enable it 
unconditionally either.

> Regards,
> Andy

>    if (ret < 0 && save_errno == EADDRINUSE)
>      {
>        /*
>         * Group is already joined.  This occurs due to sloppy group
>         * management, in particular declining to leave the group on
>         * an interface that has just gone down.
>         */
>        zlog_warn ("ripng join on %s EADDRINUSE (ignoring)\n", ifp->name);
>        return 0;               /* not an error */
>
> So is it OK to interpret EADDRINUSE as meaning the membership is 
> already there (so ignore and just return success), or is it really 
> necessary to drop and then re-add?

Hmm, now that is interesting. And it does make sense that if the 
error is EADDRINUSE, then the 'address' is still there. But 
the drop/add approach might be better from a defensive programming 
POV.

I'd be inclined to see if the above approach fixes things for the 
original problem reporter..

regards,
-- 
Paul Jakma	paul at clubi.ie	paul at jakma.org	Key ID: 64A2FF6A
Fortune:
Like so many Americans, she was trying to construct a life that made
sense from things she found in gift shops.
 		-- Kurt Vonnegut, Jr.



More information about the Quagga-dev mailing list