mirror of
https://git.kernel.org/pub/scm/network/iproute2/iproute2.git
synced 2024-11-27 20:04:19 +08:00
bridge: Fix BRIDGE_VLAN_TUNNEL attribute sizes
As per the kernel's vlan_tunnel_policy, IFLA_BRIDGE_VLAN_TUNNEL_VID and
IFLA_BRIDGE_VLAN_TUNNEL_FLAGS have type NLA_U16.
Fixes: 8652eeb3ab
("bridge: vlan: support for per vlan tunnel info")
Signed-off-by: Benjamin Poirier <bpoirier@cumulusnetworks.com>
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
This commit is contained in:
parent
df1262155c
commit
1f53ba7297
@ -71,8 +71,8 @@ static int add_tunnel_info(struct nlmsghdr *n, int reqsize,
|
||||
|
||||
tinfo = addattr_nest(n, reqsize, IFLA_BRIDGE_VLAN_TUNNEL_INFO);
|
||||
addattr32(n, reqsize, IFLA_BRIDGE_VLAN_TUNNEL_ID, tun_id);
|
||||
addattr32(n, reqsize, IFLA_BRIDGE_VLAN_TUNNEL_VID, vid);
|
||||
addattr32(n, reqsize, IFLA_BRIDGE_VLAN_TUNNEL_FLAGS, flags);
|
||||
addattr16(n, reqsize, IFLA_BRIDGE_VLAN_TUNNEL_VID, vid);
|
||||
addattr16(n, reqsize, IFLA_BRIDGE_VLAN_TUNNEL_FLAGS, flags);
|
||||
|
||||
addattr_nest_end(n, tinfo);
|
||||
|
||||
@ -304,7 +304,7 @@ static void print_vlan_tunnel_info(FILE *fp, struct rtattr *tb, int ifindex)
|
||||
|
||||
if (ttb[IFLA_BRIDGE_VLAN_TUNNEL_VID])
|
||||
tunnel_vid =
|
||||
rta_getattr_u32(ttb[IFLA_BRIDGE_VLAN_TUNNEL_VID]);
|
||||
rta_getattr_u16(ttb[IFLA_BRIDGE_VLAN_TUNNEL_VID]);
|
||||
else
|
||||
continue;
|
||||
|
||||
@ -314,7 +314,7 @@ static void print_vlan_tunnel_info(FILE *fp, struct rtattr *tb, int ifindex)
|
||||
|
||||
if (ttb[IFLA_BRIDGE_VLAN_TUNNEL_FLAGS])
|
||||
tunnel_flags =
|
||||
rta_getattr_u32(ttb[IFLA_BRIDGE_VLAN_TUNNEL_FLAGS]);
|
||||
rta_getattr_u16(ttb[IFLA_BRIDGE_VLAN_TUNNEL_FLAGS]);
|
||||
|
||||
if (!(tunnel_flags & BRIDGE_VLAN_INFO_RANGE_END)) {
|
||||
last_vid_start = tunnel_vid;
|
||||
|
Loading…
Reference in New Issue
Block a user