netfilter: xtables: deconstify struct xt_action_param for matches
[firefly-linux-kernel-4.4.55.git] / net / bridge / br_multicast.c
index 6980625537caa15e5f0a479eccca15c3341073a3..8ccdb8ee392899a75a0d12e50a9a965ce7ff9f2f 100644 (file)
@@ -608,7 +608,7 @@ static void br_multicast_send_query(struct net_bridge *br,
        if (port) {
                __skb_push(skb, sizeof(struct ethhdr));
                skb->dev = port->dev;
-               NF_HOOK(PF_BRIDGE, NF_BR_LOCAL_OUT, skb, NULL, skb->dev,
+               NF_HOOK(NFPROTO_BRIDGE, NF_BR_LOCAL_OUT, skb, NULL, skb->dev,
                        dev_queue_xmit);
        } else
                netif_rx(skb);
@@ -723,7 +723,7 @@ static int br_multicast_igmp3_report(struct net_bridge *br,
                if (!pskb_may_pull(skb, len))
                        return -EINVAL;
 
-               grec = (void *)(skb->data + len);
+               grec = (void *)(skb->data + len - sizeof(*grec));
                group = grec->grec_mca;
                type = grec->grec_type;
 
@@ -1003,8 +1003,6 @@ static int br_multicast_ipv4_rcv(struct net_bridge *br,
        if (!pskb_may_pull(skb2, sizeof(*ih)))
                goto out;
 
-       iph = ip_hdr(skb2);
-
        switch (skb2->ip_summed) {
        case CHECKSUM_COMPLETE:
                if (!csum_fold(skb2->csum))