]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Fix a regression in IPv4 multicast join path (IP_ADD_MEMBERSHIP).
authorbms <bms@FreeBSD.org>
Mon, 9 Jul 2007 10:36:47 +0000 (10:36 +0000)
committerbms <bms@FreeBSD.org>
Mon, 9 Jul 2007 10:36:47 +0000 (10:36 +0000)
commit73f66e3d099a10e58aa871eaa8f7fd964a3bc288
tree940a10664e03182d81af18435e890808935e19d4
parent4cd173a329dbe3f4d052194878a5a7c266bd9173
Fix a regression in IPv4 multicast join path (IP_ADD_MEMBERSHIP).

With the in_mcast.c code, if an interface for an IPv4 multicast join was
not specified, and a route did not exist for the specified group in the
unicast forwarding tables, the join would be rejected with the error
EADDRNOTAVAIL.
This change restores the old behaviour whereby if no interface is specified,
and no route exists for the group destination, the IPv4 address list is
walked to find a non-loopback, multicast-capable interface to satisfy
the join request.
This should resolve problems with starting multicast services during
system boot or when a default forwarding entry does not exist.

Approved by: re (rwatson)
sys/netinet/in_mcast.c