kernel: update 3.14 to 3.14.9
[openwrt/staging/lynxis/omap.git] / target / linux / generic / patches-3.14 / 120-bridge_allow_receiption_on_disabled_port.patch
index 948d4eb18b1eea179de5ea22fa2d4e71a67d1645..d12f7a6c59d4c039f9cddc23b2fc0e693332c574 100644 (file)
@@ -23,11 +23,11 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
 +      if (p->state != BR_STATE_DISABLED) {
 +              u16 vid = 0;
  
 +      if (p->state != BR_STATE_DISABLED) {
 +              u16 vid = 0;
  
--      br_vlan_get_tag(skb, &vid);
--      if (p->flags & BR_LEARNING)
+-      /* check if vlan is allowed, to avoid spoofing */
+-      if (p->flags & BR_LEARNING && br_should_learn(p, skb, &vid))
 -              br_fdb_update(p->br, p, eth_hdr(skb)->h_source, vid, false);
 -              br_fdb_update(p->br, p, eth_hdr(skb)->h_source, vid, false);
-+              br_vlan_get_tag(skb, &vid);
-+              if (p->flags & BR_LEARNING)
++              /* check if vlan is allowed, to avoid spoofing */
++              if (p->flags & BR_LEARNING && br_should_learn(p, skb, &vid))
 +                      br_fdb_update(p->br, p, eth_hdr(skb)->h_source, vid, false);
 +      }
        return 0;        /* process further */
 +                      br_fdb_update(p->br, p, eth_hdr(skb)->h_source, vid, false);
 +      }
        return 0;        /* process further */