diff options
author | Daniel Danzberger <daniel@dd-wrt.com> | 2018-01-31 14:46:08 +0100 |
---|---|---|
committer | Felix Fietkau <nbd@nbd.name> | 2018-02-05 10:16:26 +0100 |
commit | 653af8ffd3a743048e17c01261cee987935fe9a3 (patch) | |
tree | 84602c211db7819bcfabe663e6f9eb6db1d227c4 | |
parent | d3ea5fc9f33e0951e36a6443a803b916a94d3b4f (diff) | |
download | upstream-653af8ffd3a743048e17c01261cee987935fe9a3.tar.gz upstream-653af8ffd3a743048e17c01261cee987935fe9a3.tar.bz2 upstream-653af8ffd3a743048e17c01261cee987935fe9a3.zip |
kernel: fix forwarding locally generated packages in bridge isolation patch
Locally generated packets weren't forwarded to the isolated interfaces in a
bridge. Isolation should only prevent the flooding of incomming packets to
other interfaces in the bridge.
Signed-off-by: Daniel Danzberger <daniel@dd-wrt.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
-rw-r--r-- | target/linux/generic/hack-4.14/641-bridge_port_isolate.patch | 2 | ||||
-rw-r--r-- | target/linux/generic/hack-4.9/641-bridge_port_isolate.patch | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/target/linux/generic/hack-4.14/641-bridge_port_isolate.patch b/target/linux/generic/hack-4.14/641-bridge_port_isolate.patch index ab9f476577..538dbd16b0 100644 --- a/target/linux/generic/hack-4.14/641-bridge_port_isolate.patch +++ b/target/linux/generic/hack-4.14/641-bridge_port_isolate.patch @@ -29,7 +29,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> void br_forward(const struct net_bridge_port *to, struct sk_buff *skb, bool local_rcv, bool local_orig) { -+ if (to->flags & BR_ISOLATE_MODE) ++ if (to->flags & BR_ISOLATE_MODE && !local_orig) + to = NULL; + if (to && should_deliver(to, skb)) { diff --git a/target/linux/generic/hack-4.9/641-bridge_port_isolate.patch b/target/linux/generic/hack-4.9/641-bridge_port_isolate.patch index 56259329d2..0d0b2c73ff 100644 --- a/target/linux/generic/hack-4.9/641-bridge_port_isolate.patch +++ b/target/linux/generic/hack-4.9/641-bridge_port_isolate.patch @@ -29,7 +29,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name> void br_forward(const struct net_bridge_port *to, struct sk_buff *skb, bool local_rcv, bool local_orig) { -+ if (to->flags & BR_ISOLATE_MODE) ++ if (to->flags & BR_ISOLATE_MODE && !local_orig) + to = NULL; + if (to && should_deliver(to, skb)) { |