ipv4: igmp: fix v3 general query drop monitor false positive
authorDaniel Borkmann <dborkman@redhat.com>
Sun, 5 Oct 2014 15:27:50 +0000 (17:27 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 6 Oct 2014 21:14:54 +0000 (17:14 -0400)
commitb47bd8d2795412143a23d2961033c126ce6914d9
treeee5ac84b2ee7065f320089f67c11198423eaf57e
parentee6377147409a00c071b2da853059a7d59979fbc
ipv4: igmp: fix v3 general query drop monitor false positive

In case we find a general query with non-zero number of sources, we
are dropping the skb as it's malformed.

RFC3376, section 4.1.8. Number of Sources (N):

  This number is zero in a General Query or a Group-Specific Query,
  and non-zero in a Group-and-Source-Specific Query.

Therefore, reflect that by using kfree_skb() instead of consume_skb().

Fixes: d679c5324d9a ("igmp: avoid drop_monitor false positives")
Signed-off-by: Daniel Borkmann <dborkman@redhat.com>
Acked-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/igmp.c