* inet: Remove bogus IGMPv3 report handling
@ 2010-02-08 3:26 Herbert Xu
2010-02-12 19:42 ` David Miller
0 siblings, 1 reply; 2+ messages in thread
From: Herbert Xu @ 2010-02-08 3:26 UTC (permalink / raw)
To: David S. Miller, netdev
Hi:
inet: Remove bogus IGMPv3 report handling
Currently we treat IGMPv3 reports as if it were an IGMPv2/v1 report.
This is broken as IGMPv3 reports are formatted differently. So we
end up suppressing a bogus multicast group (which should be harmless
as long as the leading reserved field is zero).
In fact, IGMPv3 does not allow membership report suppression so
we should simply ignore IGMPv3 membership reports as a host.
This patch does exactly that. I kept the case statement for it
so people won't accidentally add it back thinking that we overlooked
this case.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
diff --git a/net/ipv4/igmp.c b/net/ipv4/igmp.c
index 76c0840..a42f658 100644
--- a/net/ipv4/igmp.c
+++ b/net/ipv4/igmp.c
@@ -946,7 +946,6 @@ int igmp_rcv(struct sk_buff *skb)
break;
case IGMP_HOST_MEMBERSHIP_REPORT:
case IGMPV2_HOST_MEMBERSHIP_REPORT:
- case IGMPV3_HOST_MEMBERSHIP_REPORT:
/* Is it our report looped back? */
if (skb_rtable(skb)->fl.iif == 0)
break;
@@ -960,6 +959,7 @@ int igmp_rcv(struct sk_buff *skb)
in_dev_put(in_dev);
return pim_rcv_v1(skb);
#endif
+ case IGMPV3_HOST_MEMBERSHIP_REPORT:
case IGMP_DVMRP:
case IGMP_TRACE:
case IGMP_HOST_LEAVE_MESSAGE:
Cheers,
--
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: inet: Remove bogus IGMPv3 report handling
2010-02-08 3:26 inet: Remove bogus IGMPv3 report handling Herbert Xu
@ 2010-02-12 19:42 ` David Miller
0 siblings, 0 replies; 2+ messages in thread
From: David Miller @ 2010-02-12 19:42 UTC (permalink / raw)
To: herbert; +Cc: netdev
From: Herbert Xu <herbert@gondor.apana.org.au>
Date: Mon, 8 Feb 2010 14:26:30 +1100
> inet: Remove bogus IGMPv3 report handling
>
> Currently we treat IGMPv3 reports as if it were an IGMPv2/v1 report.
> This is broken as IGMPv3 reports are formatted differently. So we
> end up suppressing a bogus multicast group (which should be harmless
> as long as the leading reserved field is zero).
>
> In fact, IGMPv3 does not allow membership report suppression so
> we should simply ignore IGMPv3 membership reports as a host.
>
> This patch does exactly that. I kept the case statement for it
> so people won't accidentally add it back thinking that we overlooked
> this case.
>
> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Applied to net-2.6 and queued up for -stable, thanks!
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2010-02-12 19:42 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-02-08 3:26 inet: Remove bogus IGMPv3 report handling Herbert Xu
2010-02-12 19:42 ` David Miller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).