summaryrefslogtreecommitdiffstats
path: root/net/ipv6/mcast.c
diff options
context:
space:
mode:
authorJeff Garzik <jgarzik@pobox.com>2005-12-06 10:14:13 +0100
committerJeff Garzik <jgarzik@pobox.com>2005-12-06 10:14:13 +0100
commit451ec6ab310602515b361418debe93d00f67e273 (patch)
tree933cbbe7232ae6cb19986012e3162e65a184b77a /net/ipv6/mcast.c
parentMerge branch 'master' (diff)
parentLinux v2.6.15-rc5 (diff)
downloadlinux-451ec6ab310602515b361418debe93d00f67e273.tar.xz
linux-451ec6ab310602515b361418debe93d00f67e273.zip
Merge branch 'master'
Diffstat (limited to 'net/ipv6/mcast.c')
-rw-r--r--net/ipv6/mcast.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/net/ipv6/mcast.c b/net/ipv6/mcast.c
index f15e04ad026e..fd939da090c4 100644
--- a/net/ipv6/mcast.c
+++ b/net/ipv6/mcast.c
@@ -1231,6 +1231,11 @@ int igmp6_event_report(struct sk_buff *skb)
if (skb->pkt_type == PACKET_LOOPBACK)
return 0;
+ /* send our report if the MC router may not have heard this report */
+ if (skb->pkt_type != PACKET_MULTICAST &&
+ skb->pkt_type != PACKET_BROADCAST)
+ return 0;
+
if (!pskb_may_pull(skb, sizeof(struct in6_addr)))
return -EINVAL;