Merge pull request #15138 from ssahani/networkctl-vlan

networkctl: Add support to display vlan ID
This commit is contained in:
Anita Zhang 2020-03-16 12:56:07 -07:00 committed by GitHub
commit a4f4a4e441
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 12 additions and 1 deletions

View File

@ -149,6 +149,9 @@ typedef struct LinkInfo {
/* vxlan info */
VxLanInfo vxlan_info;
/* vlan info */
uint16_t vlan_id;
/* ethtool info */
int autonegotiation;
uint64_t speed;
@ -240,7 +243,8 @@ static int decode_netdev(sd_netlink_message *m, LinkInfo *info) {
(void) sd_netlink_message_read_u32(m, IFLA_VXLAN_LINK, &info->vxlan_info.link);
(void) sd_netlink_message_read_u16(m, IFLA_VXLAN_PORT, &info->vxlan_info.dest_port);
}
} else if (streq(received_kind, "vlan"))
(void) sd_netlink_message_read_u16(m, IFLA_VLAN_ID, &info->vlan_id);
strncpy(info->netdev_kind, received_kind, IFNAMSIZ);
@ -1439,6 +1443,13 @@ static int link_status_one(
if (r < 0)
return table_log_add_error(r);
}
} else if (streq_ptr(info->netdev_kind, "vlan") && info->vlan_id > 0) {
r = table_add_many(table,
TABLE_EMPTY,
TABLE_STRING, "VLan Id:",
TABLE_UINT16, info->vlan_id);
if (r < 0)
return table_log_add_error(r);
}
if (info->has_wlan_link_info) {