diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2005-12-02 23:09:38 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-12-02 23:09:38 -0800 |
commit | b3c6aeb3ce26b286769d2deafec47d218c83dd09 (patch) | |
tree | 06378a021f5873003a07f0388aa0cb6e81a32c19 /net/ipv6/mcast.c | |
parent | af2eb17bac41a116b73d85b3fb160405c32bea5b (diff) | |
parent | af1afe866297448ad8a1da99fa8a6af86c43c909 (diff) |
Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Diffstat (limited to 'net/ipv6/mcast.c')
-rw-r--r-- | net/ipv6/mcast.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/net/ipv6/mcast.c b/net/ipv6/mcast.c index f15e04ad026..fd939da090c 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; |