Message ID | 1293708753-17728-1-git-send-email-tomas.winkler@intel.com (mailing list archive) |
---|---|
State | Not Applicable, archived |
Headers | show |
diff --git a/net/bridge/br_multicast.c b/net/bridge/br_multicast.c index f19e347..074c478 100644 --- a/net/bridge/br_multicast.c +++ b/net/bridge/br_multicast.c @@ -1464,6 +1464,10 @@ static int br_multicast_ipv6_rcv(struct net_bridge *br, if (offset < 0 || nexthdr != IPPROTO_ICMPV6) return 0; + if (!pskb_may_pull(skb, + (skb_network_header(skb) + offset + 1 - skb->data))) + return 0; + /* Okay, we found ICMPv6 header */ skb2 = skb_clone(skb, GFP_ATOMIC); if (!skb2)