From: nbd Date: Mon, 15 Jul 2013 15:12:33 +0000 (+0000) Subject: kernel: fix another corner case in the bridge state patch (#13874) X-Git-Url: https://git.archive.openwrt.org/?p=openwrt.git;a=commitdiff_plain;h=6e277e7a785d2b88d9665d5a0f298b8c9b8381f3 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 --- 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))