diff options
| author | Jeff Garzik <jgarzik@pobox.com> | 2005-12-03 21:03:28 -0500 |
|---|---|---|
| committer | Jeff Garzik <jgarzik@pobox.com> | 2005-12-03 21:03:28 -0500 |
| commit | 2fde9901f6702ab82b5b2740fec9a7f9a80ddde4 (patch) | |
| tree | 0ca92fabd4169095a50b43b8981d2a6c54f98531 /net/ipv4/igmp.c | |
| parent | f89c2b464558a21fd3be8d578b7d13e810fb6b8a (diff) | |
| parent | 3b6efee9231e12fce09c94930bfc59f66f18d662 (diff) | |
Merge branch 'master'
Diffstat (limited to 'net/ipv4/igmp.c')
| -rw-r--r-- | net/ipv4/igmp.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/net/ipv4/igmp.c b/net/ipv4/igmp.c index c04607b49212..4a195c724f01 100644 --- a/net/ipv4/igmp.c +++ b/net/ipv4/igmp.c @@ -897,7 +897,10 @@ int igmp_rcv(struct sk_buff *skb) /* Is it our report looped back? */ if (((struct rtable*)skb->dst)->fl.iif == 0) break; - igmp_heard_report(in_dev, ih->group); + /* don't rely on MC router hearing unicast reports */ + if (skb->pkt_type == PACKET_MULTICAST || + skb->pkt_type == PACKET_BROADCAST) + igmp_heard_report(in_dev, ih->group); break; case IGMP_PIM: #ifdef CONFIG_IP_PIMSM_V1 |
