mirror of
https://git.proxmox.com/git/mirror_iproute2
synced 2025-10-17 05:16:54 +00:00
ip: Add type and master filters to brief output
The brief format does not honer the master and type filters: $ ip link show master vrf-mgmt 7: dummy0: <BROADCAST,NOARP,SLAVE> mtu 1500 qdisc noop master vrf-mgmt state DOWN mode DEFAULT group default qlen 1000 link/ether 66:39:cc:2b:e9:bd brd ff:ff:ff:ff:ff:ff $ ip -br link show master vrf-mgmt lo UNKNOWN 00:00:00:00:00:00 <LOOPBACK,UP,LOWER_UP> eth0 UP 08:00:27🇩🇪14:c8 <BROADCAST,MULTICAST,UP,LOWER_UP> eth1 UP 08:00:27:87:02:f1 <BROADCAST,MULTICAST,UP,LOWER_UP> eth2 UP 08:00:27:61:1e:fd <BROADCAST,MULTICAST,UP,LOWER_UP> vrf-blue UNKNOWN a6:3f:09:34:7e:74 <NOARP,MASTER,UP,LOWER_UP> vrf-red DOWN fe:a2:2d:e1:bc:ac <NOARP,MASTER> dummy0 DOWN 66:39:cc:2b:e9:bd <BROADCAST,NOARP,SLAVE> dummy1 DOWN 4a:4f:13:91:64:b1 <BROADCAST,NOARP,SLAVE> dummy2 DOWN b2:4f:b6💿bd:a6 <BROADCAST,NOARP> dummy3 DOWN 1e:06:3d:40:b8:c2 <BROADCAST,NOARP,SLAVE> vrf-mgmt DOWN ce:b2:74:41:21:df <NOARP,MASTER> With this patch the expected output is shown: $ ip -br link show master vrf-mgmt dummy0 DOWN 66:39:cc:2b:e9:bd <BROADCAST,NOARP,SLAVE> Signed-off-by: David Ahern <dsa@cumulusnetworks.com>
This commit is contained in:
parent
5b9ac19029
commit
84d30afd8a
@ -637,6 +637,25 @@ int print_linkinfo_brief(const struct sockaddr_nl *who,
|
||||
return -1;
|
||||
}
|
||||
|
||||
if (tb[IFLA_MASTER]) {
|
||||
int master = *(int*)RTA_DATA(tb[IFLA_MASTER]);
|
||||
if (filter.master > 0 && master != filter.master)
|
||||
return -1;
|
||||
}
|
||||
else if (filter.master > 0)
|
||||
return -1;
|
||||
|
||||
if (filter.kind) {
|
||||
if (tb[IFLA_LINKINFO]) {
|
||||
char *kind = parse_link_kind(tb[IFLA_LINKINFO]);
|
||||
|
||||
if (strcmp(kind, filter.kind))
|
||||
return -1;
|
||||
} else {
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
if (n->nlmsg_type == RTM_DELLINK)
|
||||
fprintf(fp, "Deleted ");
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user