Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 10 Apr 2007 06:35:39 +0100
From:      Bruce M Simpson <bms@incunabulum.net>
To:        Yar Tikhiy <yar@comp.chem.msu.su>
Cc:        Eugene Grosbein <eugen@kuzbass.ru>, net@freebsd.org
Subject:   Re: Interface index hack in IP_ADD_MEMBERSHIP
Message-ID:  <461B222B.5030602@incunabulum.net>
In-Reply-To: <20070321092605.GB41715@comp.chem.msu.su>
References:  <45FE9E24.8010201@incunabulum.net>	<20070319152837.GA3984@svzserv.kemerovo.su> <20070321092605.GB41715@comp.chem.msu.su>

next in thread | previous in thread | raw e-mail | index | archive | help
Yar Tikhiy wrote:
> Quagga still uses it, too, if its configure script detects FreeBSD
> or NetBSD.  I'm afraid it was me who submitted the patch to the
> Quagga folks when I'd found that Quagga's ospfd couldn't handle
> unnumbered P2P interfaces in FreeBSD because their local IPs weren't
> unique.  Unfortunately, Quagga doesn't seem to use the protocol
> independent part of the RFC 3678 API yet.
>   

A preliminary patch for the Rhyolite.com routed is available at:
    http://people.freebsd.org/~bms/dump/routed.rfc3678.diff

The upcoming rewrite of IPv4 multicast host-mdoe logic (currently in 
bms_netdev) adds support for the Linux-derived 'struct ip_mreqn' for 
specifying interface indexes to IP_MULTICAST_IF. The RFC 3678 API is 
implemented; IGMPv3 and MLDv2 may be hooked in later on subject to 
available resources.

The RFC 1724 hack has been completely removed from the kernel in this 
spin. The new code passes the existing regression tests for any-source 
multicast. I hope to have source-specific multicast regression tests in 
the main tree ASAP, I am very close to a code drop.

Whilst the radical approach of rewriting this stuff may break legacy 
applications, they should probably be updated to support the new APIs 
anyway, given that Linux 2.6 and Microsoft Windows "Longhorn" both 
support RFC 3678.

Regards,
BMS



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?461B222B.5030602>