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
@ -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…
x
Reference in New Issue
Block a user