Skip to content

Commit 77ef033

Browse files
michichdavem330
authored andcommitted
rtnetlink: NUL-terminate IFLA_PHYS_PORT_NAME string
IFLA_PHYS_PORT_NAME is a string attribute, so terminate it with \0. Otherwise libnl3 fails to validate netlink messages with this attribute. "ip -detail a" assumes too that the attribute is NUL-terminated when printing it. It often was, due to padding. I noticed this as libvirtd failing to start on a system with sfc driver after upgrading it to Linux 4.11, i.e. when sfc added support for phys_port_name. Signed-off-by: Michal Schmidt <mschmidt@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent 2be0f26 commit 77ef033

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

net/core/rtnetlink.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1054,7 +1054,7 @@ static int rtnl_phys_port_name_fill(struct sk_buff *skb, struct net_device *dev)
10541054
return err;
10551055
}
10561056

1057-
if (nla_put(skb, IFLA_PHYS_PORT_NAME, strlen(name), name))
1057+
if (nla_put_string(skb, IFLA_PHYS_PORT_NAME, name))
10581058
return -EMSGSIZE;
10591059

10601060
return 0;

0 commit comments

Comments
 (0)