lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Tue, 27 May 2014 22:40:11 -0700 From: roopa@...ulusnetworks.com To: davem@...emloft.net, stephen@...workplumber.org, netdev@...r.kernel.org Cc: jhs@...atatu.com, wkok@...ulusnetworks.com, sfeldma@...ulusnetworks.com, shm@...ulusnetworks.com Subject: [PATCH iproute2] bridge: Add master device name to bridge fdb show From: Roopa Prabhu <roopa@...ulusnetworks.com> (This patch depends on net-next patch titled "Add bridge ifindex to bridge fdb notify msgs") This patch adds master dev name from NDA_MASTER netlink attribute to bridge fdb show output current iproute2 tries to print 'master' in the output if NTF_MASTER is present. But, kernel today does not set NTF_MASTER during dump requests. Which means I have not seen iproute2 bridge cmd print 'master' atall. This patch overrides the NTF_MASTER flag if NDA_MASTER attribute is present. Example output: before this patch: # bridge fdb show 44:38:39:00:27:ba dev bond2.2003 permanent 44:38:39:00:27:bb dev bond4.2003 permanent 44:38:39:00:27:bc dev bond2.2004 permanent After this patch: # bridge fdb show 44:38:39:00:27:ba dev bond2.2003 master br-2003 permanent 44:38:39:00:27:bb dev bond4.2003 master br-2003 permanent 44:38:39:00:27:bc dev bond2.2004 master br-2004 permanent For comparision with the above, below is the output for NTF_SELF today, # bridge fdb show 33:33:00:00:00:01 dev eth0 self permanent 01:00:5e:00:00:01 dev eth0 self permanent 33:33:ff:00:01:cc dev eth0 self permanent If change in output is a concern, 'master' can be put at the end of the fdb output line or made optional with -d[etails] option. Signed-off-by: Wilson Kok <wkok@...ulusnetworks.com> Signed-off-by: Roopa Prabhu <roopa@...ulusnetworks.com> --- bridge/fdb.c | 5 ++++- include/linux/neighbour.h | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/bridge/fdb.c b/bridge/fdb.c index 9b720e3..d1c3da6 100644 --- a/bridge/fdb.c +++ b/bridge/fdb.c @@ -146,7 +146,10 @@ int print_fdb(const struct sockaddr_nl *who, struct nlmsghdr *n, void *arg) } if (r->ndm_flags & NTF_SELF) fprintf(fp, "self "); - if (r->ndm_flags & NTF_MASTER) + if (tb[NDA_MASTER]) + fprintf(fp, "master %s ", + ll_index_to_name(rta_getattr_u32(tb[NDA_MASTER]))); + else if (r->ndm_flags & NTF_MASTER) fprintf(fp, "master "); if (r->ndm_flags & NTF_ROUTER) fprintf(fp, "router "); diff --git a/include/linux/neighbour.h b/include/linux/neighbour.h index d3ef583..4a1d7e9 100644 --- a/include/linux/neighbour.h +++ b/include/linux/neighbour.h @@ -24,6 +24,7 @@ enum { NDA_PORT, NDA_VNI, NDA_IFINDEX, + NDA_MASTER, __NDA_MAX }; -- 1.7.10.4 -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists