diff mbox

[iproute2,net-next] iplink: bridge_slave: add support for IFLA_BRPORT_FLUSH

Message ID 1484721405-22519-1-git-send-email-liuhangbin@gmail.com
State Accepted, archived
Delegated to: stephen hemminger
Headers show

Commit Message

Hangbin Liu Jan. 18, 2017, 6:36 a.m. UTC
This patch implements support for the IFLA_BRPORT_FLUSH attribute
in iproute2 so it can flush bridge slave's fdb dynamic entries.

Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
---
 ip/iplink_bridge_slave.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

Comments

Nikolay Aleksandrov Jan. 18, 2017, 11:13 a.m. UTC | #1
On 18/01/17 07:36, Hangbin Liu wrote:
> This patch implements support for the IFLA_BRPORT_FLUSH attribute
> in iproute2 so it can flush bridge slave's fdb dynamic entries.
> 
> Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
> ---
>  ip/iplink_bridge_slave.c | 9 +++++++--
>  1 file changed, 7 insertions(+), 2 deletions(-)
> 

Reviewed-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
diff mbox

Patch

diff --git a/ip/iplink_bridge_slave.c b/ip/iplink_bridge_slave.c
index fbb3f06..6353fc5 100644
--- a/ip/iplink_bridge_slave.c
+++ b/ip/iplink_bridge_slave.c
@@ -22,7 +22,10 @@ 
 static void print_explain(FILE *f)
 {
 	fprintf(f,
-		"Usage: ... bridge_slave [ state STATE ] [ priority PRIO ] [cost COST ]\n"
+		"Usage: ... bridge_slave [ fdb_flush ]\n"
+		"                        [ state STATE ]\n"
+		"                        [ priority PRIO ]\n"
+		"                        [ cost COST ]\n"
 		"                        [ guard {on | off} ]\n"
 		"                        [ hairpin {on | off} ]\n"
 		"                        [ fastleave {on | off} ]\n"
@@ -217,7 +220,9 @@  static int bridge_slave_parse_opt(struct link_util *lu, int argc, char **argv,
 	__u32 cost;
 
 	while (argc > 0) {
-		if (matches(*argv, "state") == 0) {
+		if (matches(*argv, "fdb_flush") == 0) {
+			addattr(n, 1024, IFLA_BRPORT_FLUSH);
+		} else if (matches(*argv, "state") == 0) {
 			NEXT_ARG();
 			if (get_u8(&state, *argv, 0))
 				invarg("state is invalid", *argv);