]> git.ipfire.org Git - thirdparty/kernel/stable.git/blobdiff - net/bridge/br_stp_bpdu.c
net: bridge: stp: don't cache eth dest pointer before skb pull
[thirdparty/kernel/stable.git] / net / bridge / br_stp_bpdu.c
index 1b75d6bf12bd9cbe4411c6dadf85a273bbdcbdbc..37ddcea3fc96bbdb55b5194d910231eab738d8a5 100644 (file)
@@ -147,7 +147,6 @@ void br_send_tcn_bpdu(struct net_bridge_port *p)
 void br_stp_rcv(const struct stp_proto *proto, struct sk_buff *skb,
                struct net_device *dev)
 {
-       const unsigned char *dest = eth_hdr(skb)->h_dest;
        struct net_bridge_port *p;
        struct net_bridge *br;
        const unsigned char *buf;
@@ -176,7 +175,7 @@ void br_stp_rcv(const struct stp_proto *proto, struct sk_buff *skb,
        if (p->state == BR_STATE_DISABLED)
                goto out;
 
-       if (!ether_addr_equal(dest, br->group_addr))
+       if (!ether_addr_equal(eth_hdr(skb)->h_dest, br->group_addr))
                goto out;
 
        if (p->flags & BR_BPDU_GUARD) {