kernel: fix another corner case in the bridge state patch (#13874)
authorFelix Fietkau <nbd@openwrt.org>
Mon, 15 Jul 2013 15:12:33 +0000 (15:12 +0000)
committerFelix Fietkau <nbd@openwrt.org>
Mon, 15 Jul 2013 15:12:33 +0000 (15:12 +0000)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 37347

target/linux/generic/patches-3.10/120-bridge_allow_receiption_on_disabled_port.patch
target/linux/generic/patches-3.9/120-bridge_allow_receiption_on_disabled_port.patch

index 5d1661c1b71ab907415350528bab8a8187fcc84b..f64db0fa3c932efcdcd597a14fc49d6cdaf885d4 100644 (file)
@@ -38,8 +38,8 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
  forward:
        switch (p->state) {
 +      case BR_STATE_DISABLED:
-+              if (!ether_addr_equal(p->br->dev->dev_addr, dest))
-+                      goto drop;
++              if (ether_addr_equal(p->br->dev->dev_addr, dest))
++                      skb->pkt_type = PACKET_HOST;
 +
 +              if (NF_HOOK(NFPROTO_BRIDGE, NF_BR_PRE_ROUTING, skb, skb->dev, NULL,
 +                      br_handle_local_finish))
index 5d1661c1b71ab907415350528bab8a8187fcc84b..f64db0fa3c932efcdcd597a14fc49d6cdaf885d4 100644 (file)
@@ -38,8 +38,8 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
  forward:
        switch (p->state) {
 +      case BR_STATE_DISABLED:
-+              if (!ether_addr_equal(p->br->dev->dev_addr, dest))
-+                      goto drop;
++              if (ether_addr_equal(p->br->dev->dev_addr, dest))
++                      skb->pkt_type = PACKET_HOST;
 +
 +              if (NF_HOOK(NFPROTO_BRIDGE, NF_BR_PRE_ROUTING, skb, skb->dev, NULL,
 +                      br_handle_local_finish))