aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/pending-3.18/642-bridge_port_isolate.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/generic/pending-3.18/642-bridge_port_isolate.patch')
-rw-r--r--target/linux/generic/pending-3.18/642-bridge_port_isolate.patch25
1 files changed, 5 insertions, 20 deletions
diff --git a/target/linux/generic/pending-3.18/642-bridge_port_isolate.patch b/target/linux/generic/pending-3.18/642-bridge_port_isolate.patch
index d231f881b9..47f8eb160b 100644
--- a/target/linux/generic/pending-3.18/642-bridge_port_isolate.patch
+++ b/target/linux/generic/pending-3.18/642-bridge_port_isolate.patch
@@ -15,34 +15,19 @@ Isolating individual bridge ports
struct bridge_mcast_own_query ip4_own_query;
--- a/net/bridge/br_sysfs_if.c
+++ b/net/bridge/br_sysfs_if.c
-@@ -171,6 +171,22 @@ BRPORT_ATTR_FLAG(root_block, BR_ROOT_BLO
+@@ -170,6 +170,7 @@ BRPORT_ATTR_FLAG(bpdu_guard, BR_BPDU_GUA
+ BRPORT_ATTR_FLAG(root_block, BR_ROOT_BLOCK);
BRPORT_ATTR_FLAG(learning, BR_LEARNING);
BRPORT_ATTR_FLAG(unicast_flood, BR_FLOOD);
++BRPORT_ATTR_FLAG(isolated, BR_ISOLATE_MODE);
-+static ssize_t show_isolate_mode(struct net_bridge_port *p, char *buf)
-+{
-+ int isolate_mode = (p->flags & BR_ISOLATE_MODE) ? 1 : 0;
-+ return sprintf(buf, "%d\n", isolate_mode);
-+}
-+static ssize_t store_isolate_mode(struct net_bridge_port *p, unsigned long v)
-+{
-+ if (v)
-+ p->flags |= BR_ISOLATE_MODE;
-+ else
-+ p->flags &= ~BR_ISOLATE_MODE;
-+ return 0;
-+}
-+static BRPORT_ATTR(isolate_mode, S_IRUGO | S_IWUSR,
-+ show_isolate_mode, store_isolate_mode);
-+
#ifdef CONFIG_BRIDGE_IGMP_SNOOPING
static ssize_t show_multicast_router(struct net_bridge_port *p, char *buf)
- {
-@@ -213,6 +229,7 @@ static const struct brport_attribute *br
+@@ -213,6 +214,7 @@ static const struct brport_attribute *br
&brport_attr_multicast_router,
&brport_attr_multicast_fast_leave,
#endif
-+ &brport_attr_isolate_mode,
++ &brport_attr_isolated,
NULL
};