* [PATCH iproute2-next 0/4] bridge: Add MAC Authentication Bypass (MAB) support
@ 2022-11-06 11:39 Ido Schimmel
2022-11-06 11:39 ` [PATCH iproute2-next 1/4] Sync kernel headers Ido Schimmel
` (4 more replies)
0 siblings, 5 replies; 6+ messages in thread
From: Ido Schimmel @ 2022-11-06 11:39 UTC (permalink / raw)
To: netdev
Cc: stephen, dsahern, razor, netdev, vladimir.oltean, mlxsw, Ido Schimmel
Add MAB support in iproute2, allowing it to enable / disable MAB on a
bridge port and display the "locked" FDB flag.
Patch #1 syncs the kernel headers.
Patch #2 extends iproute2 to display the "locked" FDB flag when it is
set.
Patch #3 allows bridge(8) and ip(8) to enable / disable MAB on a bridge
port and display the current status.
Patch #4 rewords the description of the "locked" bridge port option.
Hans Schultz (2):
bridge: fdb: Add support for locked FDB entries
bridge: link: Add MAC Authentication Bypass (MAB) support
Ido Schimmel (2):
Sync kernel headers
man: bridge: Reword description of "locked" bridge port option
bridge/fdb.c | 11 +++++++++--
bridge/link.c | 13 +++++++++++++
include/uapi/linux/if_link.h | 1 +
include/uapi/linux/neighbour.h | 8 +++++++-
ip/iplink_bridge_slave.c | 9 +++++++++
man/man8/bridge.8 | 34 +++++++++++++++++++++++++++-------
man/man8/ip-link.8.in | 31 ++++++++++++++++++++++++++++---
7 files changed, 94 insertions(+), 13 deletions(-)
--
2.37.3
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH iproute2-next 1/4] Sync kernel headers
2022-11-06 11:39 [PATCH iproute2-next 0/4] bridge: Add MAC Authentication Bypass (MAB) support Ido Schimmel
@ 2022-11-06 11:39 ` Ido Schimmel
2022-11-06 11:39 ` [PATCH iproute2-next 2/4] bridge: fdb: Add support for locked FDB entries Ido Schimmel
` (3 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Ido Schimmel @ 2022-11-06 11:39 UTC (permalink / raw)
To: netdev
Cc: stephen, dsahern, razor, netdev, vladimir.oltean, mlxsw, Ido Schimmel
Signed-off-by: Ido Schimmel <idosch@nvidia.com>
---
include/uapi/linux/if_link.h | 1 +
include/uapi/linux/neighbour.h | 8 +++++++-
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/include/uapi/linux/if_link.h b/include/uapi/linux/if_link.h
index 153fcb9617f8..4683fead5432 100644
--- a/include/uapi/linux/if_link.h
+++ b/include/uapi/linux/if_link.h
@@ -559,6 +559,7 @@ enum {
IFLA_BRPORT_MCAST_EHT_HOSTS_LIMIT,
IFLA_BRPORT_MCAST_EHT_HOSTS_CNT,
IFLA_BRPORT_LOCKED,
+ IFLA_BRPORT_MAB,
__IFLA_BRPORT_MAX
};
#define IFLA_BRPORT_MAX (__IFLA_BRPORT_MAX - 1)
diff --git a/include/uapi/linux/neighbour.h b/include/uapi/linux/neighbour.h
index a998bf761635..5e67a7eaf4a7 100644
--- a/include/uapi/linux/neighbour.h
+++ b/include/uapi/linux/neighbour.h
@@ -52,7 +52,8 @@ enum {
#define NTF_STICKY (1 << 6)
#define NTF_ROUTER (1 << 7)
/* Extended flags under NDA_FLAGS_EXT: */
-#define NTF_EXT_MANAGED (1 << 0)
+#define NTF_EXT_MANAGED (1 << 0)
+#define NTF_EXT_LOCKED (1 << 1)
/*
* Neighbor Cache Entry States.
@@ -86,6 +87,11 @@ enum {
* NTF_EXT_MANAGED flagged neigbor entries are managed by the kernel on behalf
* of a user space control plane, and automatically refreshed so that (if
* possible) they remain in NUD_REACHABLE state.
+ *
+ * NTF_EXT_LOCKED flagged bridge FDB entries are entries generated by the
+ * bridge in response to a host trying to communicate via a locked bridge port
+ * with MAB enabled. Their purpose is to notify user space that a host requires
+ * authentication.
*/
struct nda_cacheinfo {
--
2.37.3
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH iproute2-next 2/4] bridge: fdb: Add support for locked FDB entries
2022-11-06 11:39 [PATCH iproute2-next 0/4] bridge: Add MAC Authentication Bypass (MAB) support Ido Schimmel
2022-11-06 11:39 ` [PATCH iproute2-next 1/4] Sync kernel headers Ido Schimmel
@ 2022-11-06 11:39 ` Ido Schimmel
2022-11-06 11:39 ` [PATCH iproute2-next 3/4] bridge: link: Add MAC Authentication Bypass (MAB) support Ido Schimmel
` (2 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: Ido Schimmel @ 2022-11-06 11:39 UTC (permalink / raw)
To: netdev
Cc: stephen, dsahern, razor, netdev, vladimir.oltean, mlxsw, Ido Schimmel
From: Hans Schultz <netdev@kapio-technology.com>
Print the "locked" FDB flag when it is set in the 'NDA_FLAGS_EXT'
attribute. Example output:
# bridge fdb get 00:11:22:33:44:55 br br0
00:11:22:33:44:55 dev swp1 locked master br0
# bridge -j -p fdb get 00:11:22:33:44:55 br br0
[ {
"mac": "00:11:22:33:44:55",
"ifname": "swp1",
"flags": [ "locked" ],
"master": "br0",
"state": ""
} ]
Signed-off-by: Hans Schultz <netdev@kapio-technology.com>
Signed-off-by: Ido Schimmel <idosch@nvidia.com>
---
Notes:
Changes made by me:
* Use '__u32' instead of '__u8' in fdb_print_flags().
* Reword commit message.
bridge/fdb.c | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/bridge/fdb.c b/bridge/fdb.c
index 775feb1296af..ae8f7b4690f9 100644
--- a/bridge/fdb.c
+++ b/bridge/fdb.c
@@ -93,7 +93,7 @@ static int state_a2n(unsigned int *s, const char *arg)
return 0;
}
-static void fdb_print_flags(FILE *fp, unsigned int flags)
+static void fdb_print_flags(FILE *fp, unsigned int flags, __u32 ext_flags)
{
open_json_array(PRINT_JSON,
is_json_context() ? "flags" : "");
@@ -116,6 +116,9 @@ static void fdb_print_flags(FILE *fp, unsigned int flags)
if (flags & NTF_STICKY)
print_string(PRINT_ANY, NULL, "%s ", "sticky");
+ if (ext_flags & NTF_EXT_LOCKED)
+ print_string(PRINT_ANY, NULL, "%s ", "locked");
+
close_json_array(PRINT_JSON, NULL);
}
@@ -144,6 +147,7 @@ int print_fdb(struct nlmsghdr *n, void *arg)
struct ndmsg *r = NLMSG_DATA(n);
int len = n->nlmsg_len;
struct rtattr *tb[NDA_MAX+1];
+ __u32 ext_flags = 0;
__u16 vid = 0;
if (n->nlmsg_type != RTM_NEWNEIGH && n->nlmsg_type != RTM_DELNEIGH) {
@@ -170,6 +174,9 @@ int print_fdb(struct nlmsghdr *n, void *arg)
parse_rtattr(tb, NDA_MAX, NDA_RTA(r),
n->nlmsg_len - NLMSG_LENGTH(sizeof(*r)));
+ if (tb[NDA_FLAGS_EXT])
+ ext_flags = rta_getattr_u32(tb[NDA_FLAGS_EXT]);
+
if (tb[NDA_VLAN])
vid = rta_getattr_u16(tb[NDA_VLAN]);
@@ -268,7 +275,7 @@ int print_fdb(struct nlmsghdr *n, void *arg)
if (show_stats && tb[NDA_CACHEINFO])
fdb_print_stats(fp, RTA_DATA(tb[NDA_CACHEINFO]));
- fdb_print_flags(fp, r->ndm_flags);
+ fdb_print_flags(fp, r->ndm_flags, ext_flags);
if (tb[NDA_MASTER])
--
2.37.3
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH iproute2-next 3/4] bridge: link: Add MAC Authentication Bypass (MAB) support
2022-11-06 11:39 [PATCH iproute2-next 0/4] bridge: Add MAC Authentication Bypass (MAB) support Ido Schimmel
2022-11-06 11:39 ` [PATCH iproute2-next 1/4] Sync kernel headers Ido Schimmel
2022-11-06 11:39 ` [PATCH iproute2-next 2/4] bridge: fdb: Add support for locked FDB entries Ido Schimmel
@ 2022-11-06 11:39 ` Ido Schimmel
2022-11-06 11:39 ` [PATCH iproute2-next 4/4] man: bridge: Reword description of "locked" bridge port option Ido Schimmel
2022-11-07 16:00 ` [PATCH iproute2-next 0/4] bridge: Add MAC Authentication Bypass (MAB) support patchwork-bot+netdevbpf
4 siblings, 0 replies; 6+ messages in thread
From: Ido Schimmel @ 2022-11-06 11:39 UTC (permalink / raw)
To: netdev
Cc: stephen, dsahern, razor, netdev, vladimir.oltean, mlxsw, Ido Schimmel
From: Hans Schultz <netdev@kapio-technology.com>
Add MAB support in bridge(8) and ip(8), allowing these utilities to
enable / disable MAB and display its current status.
Signed-off-by: Hans Schultz <netdev@kapio-technology.com>
Signed-off-by: Ido Schimmel <idosch@nvidia.com>
---
Notes:
Changes made by me:
* Reword commit message.
* Reword man page.
* Use strcmp() instead of matches().
bridge/link.c | 13 +++++++++++++
ip/iplink_bridge_slave.c | 9 +++++++++
man/man8/bridge.8 | 16 ++++++++++++++++
man/man8/ip-link.8.in | 18 ++++++++++++++++++
4 files changed, 56 insertions(+)
diff --git a/bridge/link.c b/bridge/link.c
index fef3a9ef22fb..337731dff26b 100644
--- a/bridge/link.c
+++ b/bridge/link.c
@@ -184,6 +184,9 @@ static void print_protinfo(FILE *fp, struct rtattr *attr)
if (prtb[IFLA_BRPORT_LOCKED])
print_on_off(PRINT_ANY, "locked", "locked %s ",
rta_getattr_u8(prtb[IFLA_BRPORT_LOCKED]));
+ if (prtb[IFLA_BRPORT_MAB])
+ print_on_off(PRINT_ANY, "mab", "mab %s ",
+ rta_getattr_u8(prtb[IFLA_BRPORT_MAB]));
} else
print_stp_state(rta_getattr_u8(attr));
}
@@ -283,6 +286,7 @@ static void usage(void)
" [ vlan_tunnel {on | off} ]\n"
" [ isolated {on | off} ]\n"
" [ locked {on | off} ]\n"
+ " [ mab {on | off} ]\n"
" [ hwmode {vepa | veb} ]\n"
" [ backup_port DEVICE ] [ nobackup_port ]\n"
" [ self ] [ master ]\n"
@@ -314,6 +318,7 @@ static int brlink_modify(int argc, char **argv)
__s8 bcast_flood = -1;
__s8 mcast_to_unicast = -1;
__s8 locked = -1;
+ __s8 macauth = -1;
__s8 isolated = -1;
__s8 hairpin = -1;
__s8 bpdu_guard = -1;
@@ -439,6 +444,11 @@ static int brlink_modify(int argc, char **argv)
locked = parse_on_off("locked", *argv, &ret);
if (ret)
return ret;
+ } else if (strcmp(*argv, "mab") == 0) {
+ NEXT_ARG();
+ macauth = parse_on_off("mab", *argv, &ret);
+ if (ret)
+ return ret;
} else if (strcmp(*argv, "backup_port") == 0) {
NEXT_ARG();
backup_port_idx = ll_name_to_index(*argv);
@@ -522,6 +532,9 @@ static int brlink_modify(int argc, char **argv)
if (locked >= 0)
addattr8(&req.n, sizeof(req), IFLA_BRPORT_LOCKED, locked);
+ if (macauth >= 0)
+ addattr8(&req.n, sizeof(req), IFLA_BRPORT_MAB, macauth);
+
if (backup_port_idx != -1)
addattr32(&req.n, sizeof(req), IFLA_BRPORT_BACKUP_PORT,
backup_port_idx);
diff --git a/ip/iplink_bridge_slave.c b/ip/iplink_bridge_slave.c
index 98d172134847..ca4b264e64e7 100644
--- a/ip/iplink_bridge_slave.c
+++ b/ip/iplink_bridge_slave.c
@@ -44,6 +44,7 @@ static void print_explain(FILE *f)
" [ vlan_tunnel {on | off} ]\n"
" [ isolated {on | off} ]\n"
" [ locked {on | off} ]\n"
+ " [ mab {on | off} ]\n"
" [ backup_port DEVICE ] [ nobackup_port ]\n"
);
}
@@ -288,6 +289,10 @@ static void bridge_slave_print_opt(struct link_util *lu, FILE *f,
print_on_off(PRINT_ANY, "locked", "locked %s ",
rta_getattr_u8(tb[IFLA_BRPORT_LOCKED]));
+ if (tb[IFLA_BRPORT_MAB])
+ print_on_off(PRINT_ANY, "mab", "mab %s ",
+ rta_getattr_u8(tb[IFLA_BRPORT_MAB]));
+
if (tb[IFLA_BRPORT_BACKUP_PORT]) {
int backup_p = rta_getattr_u32(tb[IFLA_BRPORT_BACKUP_PORT]);
@@ -411,6 +416,10 @@ static int bridge_slave_parse_opt(struct link_util *lu, int argc, char **argv,
NEXT_ARG();
bridge_slave_parse_on_off("locked", *argv, n,
IFLA_BRPORT_LOCKED);
+ } else if (strcmp(*argv, "mab") == 0) {
+ NEXT_ARG();
+ bridge_slave_parse_on_off("mab", *argv, n,
+ IFLA_BRPORT_MAB);
} else if (matches(*argv, "backup_port") == 0) {
int ifindex;
diff --git a/man/man8/bridge.8 b/man/man8/bridge.8
index d4df772ea3b2..1888f707b6d2 100644
--- a/man/man8/bridge.8
+++ b/man/man8/bridge.8
@@ -54,6 +54,7 @@ bridge \- show / manipulate bridge addresses and devices
.BR vlan_tunnel " { " on " | " off " } ] [ "
.BR isolated " { " on " | " off " } ] [ "
.BR locked " { " on " | " off " } ] [ "
+.BR mab " { " on " | " off " } ] [ "
.B backup_port
.IR DEVICE " ] ["
.BR nobackup_port " ] [ "
@@ -580,6 +581,21 @@ The common use is that hosts are allowed access through authentication
with the IEEE 802.1X protocol or based on whitelists or like setups.
By default this flag is off.
+.TP
+.BR "mab on " or " mab off "
+Controls whether MAC Authentication Bypass (MAB) is enabled on the port or not.
+MAB can only be enabled on a locked port that has learning enabled. When
+enabled, FDB entries are learned from received traffic and have the "locked"
+FDB flag set. The flag can only be set by the kernel and it indicates that the
+FDB entry cannot be used to authenticate the corresponding host. User space can
+decide to authenticate the host by replacing the FDB entry and clearing the
+"locked" FDB flag. Locked FDB entries can roam to unlocked (authorized) ports
+in which case the "locked" flag is cleared. FDB entries cannot roam to locked
+ports regardless of MAB being enabled or not. Therefore, locked FDB entries are
+only created if an FDB entry with the given {MAC, VID} does not already exist.
+This behavior prevents unauthenticated hosts from disrupting traffic destined
+to already authenticated hosts. Locked FDB entries act like regular dynamic
+entries with respect to forwarding and aging. By default this flag is off.
.TP
.BI backup_port " DEVICE"
diff --git a/man/man8/ip-link.8.in b/man/man8/ip-link.8.in
index 88ad9d7baab7..314c07d0fb1f 100644
--- a/man/man8/ip-link.8.in
+++ b/man/man8/ip-link.8.in
@@ -2471,6 +2471,9 @@ the following additional arguments are supported:
.BR isolated " { " on " | " off " }"
] [
.BR locked " { " on " | " off " }"
+] [
+.BR mab " { " on " | " off " }"
+] [
.BR backup_port " DEVICE"
] [
.BR nobackup_port " ]"
@@ -2577,6 +2580,21 @@ default this flag is off.
behind the port cannot communicate through the port unless a FDB entry
representing the host is in the FDB. By default this flag is off.
+.BR mab " { " on " | " off " }"
+- controls whether MAC Authentication Bypass (MAB) is enabled on the port or
+not. MAB can only be enabled on a locked port that has learning enabled. When
+enabled, FDB entries are learned from received traffic and have the "locked"
+FDB flag set. The flag can only be set by the kernel and it indicates that the
+FDB entry cannot be used to authenticate the corresponding host. User space can
+decide to authenticate the host by replacing the FDB entry and clearing the
+"locked" FDB flag. Locked FDB entries can roam to unlocked (authorized) ports
+in which case the "locked" flag is cleared. FDB entries cannot roam to locked
+ports regardless of MAB being enabled or not. Therefore, locked FDB entries are
+only created if an FDB entry with the given {MAC, VID} does not already exist.
+This behavior prevents unauthenticated hosts from disrupting traffic destined
+to already authenticated hosts. Locked FDB entries act like regular dynamic
+entries with respect to forwarding and aging. By default this flag is off.
+
.BI backup_port " DEVICE"
- if the port loses carrier all traffic will be redirected to the
configured backup port
--
2.37.3
^ permalink raw reply related [flat|nested] 6+ messages in thread
* [PATCH iproute2-next 4/4] man: bridge: Reword description of "locked" bridge port option
2022-11-06 11:39 [PATCH iproute2-next 0/4] bridge: Add MAC Authentication Bypass (MAB) support Ido Schimmel
` (2 preceding siblings ...)
2022-11-06 11:39 ` [PATCH iproute2-next 3/4] bridge: link: Add MAC Authentication Bypass (MAB) support Ido Schimmel
@ 2022-11-06 11:39 ` Ido Schimmel
2022-11-07 16:00 ` [PATCH iproute2-next 0/4] bridge: Add MAC Authentication Bypass (MAB) support patchwork-bot+netdevbpf
4 siblings, 0 replies; 6+ messages in thread
From: Ido Schimmel @ 2022-11-06 11:39 UTC (permalink / raw)
To: netdev
Cc: stephen, dsahern, razor, netdev, vladimir.oltean, mlxsw, Ido Schimmel
Adjust the description to mention the "no_linklocal_learn" bridge option
and make sure it is consistent between both the bridge(8) and ip-link(8)
man pages.
Signed-off-by: Ido Schimmel <idosch@nvidia.com>
---
man/man8/bridge.8 | 16 ++++++++++------
man/man8/ip-link.8.in | 13 ++++++++++---
2 files changed, 20 insertions(+), 9 deletions(-)
diff --git a/man/man8/bridge.8 b/man/man8/bridge.8
index 1888f707b6d2..e72826d750ca 100644
--- a/man/man8/bridge.8
+++ b/man/man8/bridge.8
@@ -574,12 +574,16 @@ flag is off.
.TP
.BR "locked on " or " locked off "
-Controls whether a port will be locked, meaning that hosts behind the
-port will not be able to communicate through the port unless an FDB
-entry with the units MAC address is in the FDB.
-The common use is that hosts are allowed access through authentication
-with the IEEE 802.1X protocol or based on whitelists or like setups.
-By default this flag is off.
+Controls whether a port is locked or not. When locked, non-link-local frames
+received through the port are dropped unless an FDB entry with the MAC source
+address points to the port. The common use case is IEEE 802.1X where hosts can
+authenticate themselves by exchanging EAPOL frames with an authenticator. After
+authentication is complete, the user space control plane can install a matching
+FDB entry to allow traffic from the host to be forwarded by the bridge. When
+learning is enabled on a locked port, the
+.B no_linklocal_learn
+bridge option needs to be on to prevent the bridge from learning from received
+EAPOL frames. By default this flag is off.
.TP
.BR "mab on " or " mab off "
diff --git a/man/man8/ip-link.8.in b/man/man8/ip-link.8.in
index 314c07d0fb1f..235c839a417c 100644
--- a/man/man8/ip-link.8.in
+++ b/man/man8/ip-link.8.in
@@ -2576,9 +2576,16 @@ is enabled on the port. By default this flag is off.
default this flag is off.
.BR locked " { " on " | " off " }"
-- sets or unsets a port in locked mode, so that when enabled, hosts
-behind the port cannot communicate through the port unless a FDB entry
-representing the host is in the FDB. By default this flag is off.
+- controls whether a port is locked or not. When locked, non-link-local frames
+received through the port are dropped unless an FDB entry with the MAC source
+address points to the port. The common use case is IEEE 802.1X where hosts can
+authenticate themselves by exchanging EAPOL frames with an authenticator. After
+authentication is complete, the user space control plane can install a matching
+FDB entry to allow traffic from the host to be forwarded by the bridge. When
+learning is enabled on a locked port, the
+.B no_linklocal_learn
+bridge option needs to be on to prevent the bridge from learning from received
+EAPOL frames. By default this flag is off.
.BR mab " { " on " | " off " }"
- controls whether MAC Authentication Bypass (MAB) is enabled on the port or
--
2.37.3
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH iproute2-next 0/4] bridge: Add MAC Authentication Bypass (MAB) support
2022-11-06 11:39 [PATCH iproute2-next 0/4] bridge: Add MAC Authentication Bypass (MAB) support Ido Schimmel
` (3 preceding siblings ...)
2022-11-06 11:39 ` [PATCH iproute2-next 4/4] man: bridge: Reword description of "locked" bridge port option Ido Schimmel
@ 2022-11-07 16:00 ` patchwork-bot+netdevbpf
4 siblings, 0 replies; 6+ messages in thread
From: patchwork-bot+netdevbpf @ 2022-11-07 16:00 UTC (permalink / raw)
To: Ido Schimmel
Cc: netdev, stephen, dsahern, razor, netdev, vladimir.oltean, mlxsw
Hello:
This series was applied to iproute2/iproute2-next.git (main)
by David Ahern <dsahern@kernel.org>:
On Sun, 6 Nov 2022 13:39:53 +0200 you wrote:
> Add MAB support in iproute2, allowing it to enable / disable MAB on a
> bridge port and display the "locked" FDB flag.
>
> Patch #1 syncs the kernel headers.
>
> Patch #2 extends iproute2 to display the "locked" FDB flag when it is
> set.
>
> [...]
Here is the summary with links:
- [iproute2-next,1/4] Sync kernel headers
(no matching commit)
- [iproute2-next,2/4] bridge: fdb: Add support for locked FDB entries
https://git.kernel.org/pub/scm/network/iproute2/iproute2-next.git/commit/?id=fa24597472f3
- [iproute2-next,3/4] bridge: link: Add MAC Authentication Bypass (MAB) support
https://git.kernel.org/pub/scm/network/iproute2/iproute2-next.git/commit/?id=05f1164fe811
- [iproute2-next,4/4] man: bridge: Reword description of "locked" bridge port option
https://git.kernel.org/pub/scm/network/iproute2/iproute2-next.git/commit/?id=34c4cb13a059
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2022-11-07 16:00 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-06 11:39 [PATCH iproute2-next 0/4] bridge: Add MAC Authentication Bypass (MAB) support Ido Schimmel
2022-11-06 11:39 ` [PATCH iproute2-next 1/4] Sync kernel headers Ido Schimmel
2022-11-06 11:39 ` [PATCH iproute2-next 2/4] bridge: fdb: Add support for locked FDB entries Ido Schimmel
2022-11-06 11:39 ` [PATCH iproute2-next 3/4] bridge: link: Add MAC Authentication Bypass (MAB) support Ido Schimmel
2022-11-06 11:39 ` [PATCH iproute2-next 4/4] man: bridge: Reword description of "locked" bridge port option Ido Schimmel
2022-11-07 16:00 ` [PATCH iproute2-next 0/4] bridge: Add MAC Authentication Bypass (MAB) support patchwork-bot+netdevbpf
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).