aboutsummaryrefslogtreecommitdiffstats
path: root/net/bridge/br_multicast.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/bridge/br_multicast.c')
-rw-r--r--net/bridge/br_multicast.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/net/bridge/br_multicast.c b/net/bridge/br_multicast.c
index ed19b0a730ab..8ccdb8ee3928 100644
--- a/net/bridge/br_multicast.c
+++ b/net/bridge/br_multicast.c
@@ -723,7 +723,7 @@ static int br_multicast_igmp3_report(struct net_bridge *br,
723 if (!pskb_may_pull(skb, len)) 723 if (!pskb_may_pull(skb, len))
724 return -EINVAL; 724 return -EINVAL;
725 725
726 grec = (void *)(skb->data + len); 726 grec = (void *)(skb->data + len - sizeof(*grec));
727 group = grec->grec_mca; 727 group = grec->grec_mca;
728 type = grec->grec_type; 728 type = grec->grec_type;
729 729
@@ -1003,8 +1003,6 @@ static int br_multicast_ipv4_rcv(struct net_bridge *br,
1003 if (!pskb_may_pull(skb2, sizeof(*ih))) 1003 if (!pskb_may_pull(skb2, sizeof(*ih)))
1004 goto out; 1004 goto out;
1005 1005
1006 iph = ip_hdr(skb2);
1007
1008 switch (skb2->ip_summed) { 1006 switch (skb2->ip_summed) {
1009 case CHECKSUM_COMPLETE: 1007 case CHECKSUM_COMPLETE:
1010 if (!csum_fold(skb2->csum)) 1008 if (!csum_fold(skb2->csum))