From a0f466387dbca955f3681d7a163a5af174df0a4b Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Tue, 7 Jan 2020 07:27:40 +0100 Subject: sys/linux: fix 2 netlink data layout bugs 1. Turns out that NLA_F_NESTED is actually used and checked (nla_parse_nested checks it, while nla_parse_nested_deprecated does not). Similarly, ipset extensively checks NLA_F_NET_BYTEORDER. So we need these bits. 2. nla_len must not account for the trailing alighnment padding. This means we set wrong len for payloads that are not multiple of 4 (int8/int16/strings/arrays/some structs/etc). --- sys/linux/socket_netlink_route_arm.const | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'sys/linux/socket_netlink_route_arm.const') diff --git a/sys/linux/socket_netlink_route_arm.const b/sys/linux/socket_netlink_route_arm.const index 131a743d6..0d7cc5623 100644 --- a/sys/linux/socket_netlink_route_arm.const +++ b/sys/linux/socket_netlink_route_arm.const @@ -219,6 +219,9 @@ IFLA_HSR_VERSION = 6 IFLA_IFALIAS = 20 IFLA_IFNAME = 3 IFLA_IF_NETNSID = 46 +IFLA_INET6_ADDR_GEN_MODE = 8 +IFLA_INET6_TOKEN = 7 +IFLA_INET_CONF = 1 IFLA_INFO_DATA = 2 IFLA_INFO_KIND = 1 IFLA_INFO_SLAVE_DATA = 5 @@ -322,6 +325,7 @@ IFLA_XFRM_IF_ID = 2 IFLA_XFRM_LINK = 1 IPPROTO_IPIP = 4 IPPROTO_IPV6 = 41 +IPV4_DEVCONF_MAX = 32 IPVLAN_F_PRIVATE = 1 IPVLAN_F_VEPA = 2 IPVLAN_MODE_L2 = 0 -- cgit mrf-deployment