]> git.baikalelectronics.ru Git - kernel.git/commit
mcast: add multicast proxy support (IPv4 and IPv6)
authorNicolas Dichtel <nicolas.dichtel@6wind.com>
Mon, 21 Jan 2013 06:00:26 +0000 (06:00 +0000)
committerDavid S. Miller <davem@davemloft.net>
Mon, 21 Jan 2013 18:55:14 +0000 (13:55 -0500)
commitf444362247e15749b5d84e47093e2e6ba300e9d8
tree867f1141b7cc2396443b7fa293124a8ef0948330
parent00979af8c4ef69bff5605c500a37b7f01145f1b9
mcast: add multicast proxy support (IPv4 and IPv6)

This patch add the support of proxy multicast, ie being able to build a static
multicast tree. It adds the support of (*,*) and (*,G) entries.

The user should define an (*,*) entry which is not used for real forwarding.
This entry defines the upstream in iif and contains all interfaces from the
static tree in its oifs. It will be used to forward packet upstream when they
come from an interface belonging to the static tree.
Hence, the user should define (*,G) entries to build its static tree. Note that
upstream interface must be part of oifs: packets are sent to all oifs
interfaces except the input interface. This ensures to always join the whole
static tree, even if the packet is not coming from the upstream interface.

Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
Acked-by: David L Stevens <dlstevens@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/uapi/linux/mroute.h
include/uapi/linux/mroute6.h
net/ipv4/ipmr.c
net/ipv6/ip6mr.c