Blob Blame History Raw
From 9bcdaa1cecfa37d2213f9dd443d0c4c21a8e4b21 Mon Sep 17 00:00:00 2001
From: Phil Sutter <psutter@redhat.com>
Date: Tue, 28 Feb 2017 16:10:15 +0100
Subject: [PATCH] bridge link: add support to specify master

Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1417289
Upstream Status: iproute2.git commit 22a98f5140373

commit 22a98f5140373198ea2a5ca721fea937c6f7b509
Author: Roopa Prabhu <roopa@cumulusnetworks.com>
Date:   Thu Feb 26 00:12:59 2015 -0800

    bridge link: add support to specify master

    This patch adds support to specify 'master' keyword,
    to target a bridge link command explicitly to the software
    bridge driver.

    Adds self/master keywords to usage and man page

    v2:
            fix usage to say (self and master) and not (self or master)

    Signed-off-by: Roopa Prabhu <roopa@cumulusnetworks.com>
---
 bridge/link.c     |  5 ++++-
 man/man8/bridge.8 | 12 +++++++++++-
 2 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/bridge/link.c b/bridge/link.c
index 06a2c0f..69c0bfb 100644
--- a/bridge/link.c
+++ b/bridge/link.c
@@ -227,6 +227,7 @@ static void usage(void)
 	fprintf(stderr,	"                               [ learning_sync {on | off} ]\n");
 	fprintf(stderr,	"                               [ flood {on | off} ]\n");
 	fprintf(stderr, "                               [ hwmode {vepa | veb} ]\n");
+	fprintf(stderr, "                               [ self ] [ master ]\n");
 	fprintf(stderr, "       bridge link show [dev DEV]\n");
 	exit(-1);
 }
@@ -343,7 +344,9 @@ static int brlink_modify(int argc, char **argv)
 				exit(-1);
 			}
 		} else if (strcmp(*argv, "self") == 0) {
-			flags = BRIDGE_FLAGS_SELF;
+			flags |= BRIDGE_FLAGS_SELF;
+		} else if (strcmp(*argv, "master") == 0) {
+			flags |= BRIDGE_FLAGS_MASTER;
 		} else {
 			usage();
 		}
diff --git a/man/man8/bridge.8 b/man/man8/bridge.8
index c742c83..8fae74b 100644
--- a/man/man8/bridge.8
+++ b/man/man8/bridge.8
@@ -40,7 +40,8 @@ bridge \- show / manipulate bridge addresses and devices
 .BR learning " { " on " | " off " } ] [ "
 .BR learning_sync " { " on " | " off " } ] [ "
 .BR flood " { " on " | " off " } ] [ "
-.BR hwmode " { " vepa " | " veb " } ] "
+.BR hwmode " { " vepa " | " veb " } ] [ "
+.BR self " ]  [ " master " ] "
 
 .ti -8
 .BR "bridge link" " [ " show " ] [ "
@@ -286,6 +287,15 @@ switch.
 .B veb
 - bridging happens in hardware.
 
+.TP
+.BI self
+link setting is configured on specified physical device
+
+.TP
+.BI master
+link setting is configured on the software bridge (default)
+
+
 .SS bridge link show - list bridge port configuration.
 
 This command displays the current bridge port configuration and flags.
-- 
1.8.3.1