kernel: fix another corner case in the bridge state patch (#13874)

Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 37347
master
Felix Fietkau 11 years ago
parent 55178554c2
commit a6db996b13
  1. 4
      target/linux/generic/patches-3.10/120-bridge_allow_receiption_on_disabled_port.patch
  2. 4
      target/linux/generic/patches-3.9/120-bridge_allow_receiption_on_disabled_port.patch

@ -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))

@ -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))

Loading…
Cancel
Save