Name Last modified Size Description
Parent Directory -
freebsd_vifctln.patch 31-May-2006 15:10 2.3K
linux-2.6.1-mr.patch 17-Jan-2004 19:53 2.5K
linux-2.6.25.7-mr.patch 13-Jul-2008 23:03 2.6K
mcast-checkpatch.c 27-May-2005 09:53 2.8K
mcast-checkpatch2.c 31-May-2006 13:47 3.3K
mcjoin.c 19-Aug-2005 21:33 4.3K
pimd-2.1.0-alpha29.18-ifindex.patch 19-Aug-2005 03:16 9.5K
pimd-2.1.0-alpha29.18-vifctln.patch 19-Aug-2005 16:41 1.1K
pimd-2.1.0-alpha29.19-IFF_MULTICAST.patch 19-Aug-2005 03:16 841
pimd-2.1.0-alpha29.19.tar.gz 15-Jan-2005 02:40 188K GZIP compressed docume>
What's the problem with this stuff? Simple: when the multicast routing API was designed, they didn't take into account that multiple interfaces might have the same IP assigned.
Example:
11: br0:mtu 1500 qdisc noqueue inet 172.22.2.22/28 brd 172.22.2.31 scope global br0 12: dc24@NONE: mtu 1476 qdisc noqueue inet 172.22.2.22 peer 172.22.24.1/32 scope global dc24 13: dc20@NONE: mtu 16412 qdisc noqueue inet 172.22.2.22 peer 172.22.20.1/32 scope global dc20
The problem is that pimd will bind 3 times to the same interface. The patches here fix this.
Modifies the kernel to accept both ip_mreq and ip_mreqn as vif requests. The latter is the former plus an interface index field. Really not much of an issue, safe to apply to any kernel. Patch applies to all recent 2.4.x and 2.6.x kernels.
Checks whether the kernel has been patched with the previous patch. Take a look at the source.
Adds interface index support to pimd. Sadly, it is not only ip_mreq, but a few other places too. Not really a big patch though.
Removes the check for IFF_MULTICAST from pimd. IFF_MULTICAST only indicates special handling, not multicast capability. All links are multicast capable, at least under Linux. Workaround:
ip l s interface multicast on