Parcourir la source

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 <[email protected]>
Signed-off-by: Felix Fietkau <[email protected]>
Daniel Danzberger il y a 7 ans
Parent
commit
653af8ffd3

+ 1 - 1
target/linux/generic/hack-4.14/641-bridge_port_isolate.patch

@@ -29,7 +29,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
  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)) {

+ 1 - 1
target/linux/generic/hack-4.9/641-bridge_port_isolate.patch

@@ -29,7 +29,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
  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)) {