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>
This commit is contained in:
parent
d3ea5fc9f3
commit
653af8ffd3
2 changed files with 2 additions and 2 deletions
|
@ -29,7 +29,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||||
void br_forward(const struct net_bridge_port *to,
|
void br_forward(const struct net_bridge_port *to,
|
||||||
struct sk_buff *skb, bool local_rcv, bool local_orig)
|
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;
|
+ to = NULL;
|
||||||
+
|
+
|
||||||
if (to && should_deliver(to, skb)) {
|
if (to && should_deliver(to, skb)) {
|
||||||
|
|
|
@ -29,7 +29,7 @@ Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||||
void br_forward(const struct net_bridge_port *to,
|
void br_forward(const struct net_bridge_port *to,
|
||||||
struct sk_buff *skb, bool local_rcv, bool local_orig)
|
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;
|
+ to = NULL;
|
||||||
+
|
+
|
||||||
if (to && should_deliver(to, skb)) {
|
if (to && should_deliver(to, skb)) {
|
||||||
|
|
Loading…
Reference in a new issue