From c369d9184c53e341a54eb082cd573edbcf6294dd Mon Sep 17 00:00:00 2001 From: Felix Fietkau Date: Mon, 15 Jul 2013 15:12:33 +0000 Subject: kernel: fix another corner case in the bridge state patch (#13874) Signed-off-by: Felix Fietkau git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37347 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../patches-3.10/120-bridge_allow_receiption_on_disabled_port.patch | 4 ++-- .../patches-3.9/120-bridge_allow_receiption_on_disabled_port.patch | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'target') diff --git a/target/linux/generic/patches-3.10/120-bridge_allow_receiption_on_disabled_port.patch b/target/linux/generic/patches-3.10/120-bridge_allow_receiption_on_disabled_port.patch index 5d1661c1b7..f64db0fa3c 100644 --- a/target/linux/generic/patches-3.10/120-bridge_allow_receiption_on_disabled_port.patch +++ b/target/linux/generic/patches-3.10/120-bridge_allow_receiption_on_disabled_port.patch @@ -38,8 +38,8 @@ Signed-off-by: Felix Fietkau 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)) diff --git a/target/linux/generic/patches-3.9/120-bridge_allow_receiption_on_disabled_port.patch b/target/linux/generic/patches-3.9/120-bridge_allow_receiption_on_disabled_port.patch index 5d1661c1b7..f64db0fa3c 100644 --- a/target/linux/generic/patches-3.9/120-bridge_allow_receiption_on_disabled_port.patch +++ b/target/linux/generic/patches-3.9/120-bridge_allow_receiption_on_disabled_port.patch @@ -38,8 +38,8 @@ Signed-off-by: Felix Fietkau 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)) -- cgit v1.2.3