aboutsummaryrefslogtreecommitdiffstats
path: root/sys/linux/socket_netlink_route.txt
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2018-12-21 18:22:22 +0100
committerDmitry Vyukov <dvyukov@google.com>2018-12-22 09:39:02 +0100
commit3e3b15df7ecb36b232f8d1a33ec92999691e8511 (patch)
tree1be0a21db8299f7e0cd952ca24385af05634e00a /sys/linux/socket_netlink_route.txt
parent603b512405c78d0143dc44bed638f70f01f9f95c (diff)
sys/linux: add RTM_NEWNSID/RTM_GETNSID
Diffstat (limited to 'sys/linux/socket_netlink_route.txt')
-rw-r--r--sys/linux/socket_netlink_route.txt17
1 files changed, 13 insertions, 4 deletions
diff --git a/sys/linux/socket_netlink_route.txt b/sys/linux/socket_netlink_route.txt
index e6eea25f3..8c03227d3 100644
--- a/sys/linux/socket_netlink_route.txt
+++ b/sys/linux/socket_netlink_route.txt
@@ -15,9 +15,11 @@ include <uapi/linux/lwtunnel.h>
include <uapi/linux/neighbour.h>
include <uapi/linux/fib_rules.h>
include <uapi/linux/if_tunnel.h>
+include <uapi/linux/net_namespace.h>
include <uapi/linux/veth.h>
resource sock_nl_route[sock_netlink]
+type netns_id int32[0:4]
socket$nl_route(domain const[AF_NETLINK], type const[SOCK_RAW], proto const[NETLINK_ROUTE]) sock_nl_route
@@ -78,6 +80,9 @@ netlink_msg_route [
bridge_getlink netlink_msg[RTM_GETLINK, ifinfomsg[AF_BRIDGE], ifla_policy]
bridge_setlink netlink_msg[RTM_SETLINK, ifinfomsg[AF_BRIDGE], ifla_policy]
bridge_dellink netlink_msg[RTM_DELLINK, ifinfomsg[AF_BRIDGE], ifla_policy]
+
+ RTM_NEWNSID netlink_msg[RTM_NEWNSID, rtgenmsg[AF_UNSPEC], rtnl_net_policy]
+ RTM_GETNSID netlink_msg[RTM_GETNSID, rtgenmsg[AF_UNSPEC], rtnl_net_policy]
] [varlen]
type rtgenmsg[FAMILY] {
@@ -171,14 +176,12 @@ ifla_policy [
IFLA_PHYS_PORT_ID nlattr[IFLA_PHYS_PORT_ID, array[int8, 0:MAX_PHYS_ITEM_ID_LEN]]
IFLA_CARRIER_CHANGES nlattr[IFLA_CARRIER_CHANGES, int32]
IFLA_PHYS_SWITCH_ID nlattr[IFLA_PHYS_SWITCH_ID, array[int8, 0:MAX_PHYS_ITEM_ID_LEN]]
-# TODO: this is some net namespace id.
- IFLA_LINK_NETNSID nlattr[IFLA_LINK_NETNSID, int32]
+ IFLA_LINK_NETNSID nlattr[IFLA_LINK_NETNSID, netns_id]
IFLA_PROTO_DOWN nlattr[IFLA_PROTO_DOWN, int8]
IFLA_XDP nlattr[IFLA_XDP, array[ifla_xdp_policy]]
IFLA_EVENT nlattr[IFLA_EVENT, int32]
IFLA_GROUP nlattr[IFLA_GROUP, int32]
-# TODO: probably also some net namespace id.
- IFLA_IF_NETNSID nlattr[IFLA_IF_NETNSID, int32]
+ IFLA_IF_NETNSID nlattr[IFLA_IF_NETNSID, netns_id]
] [varlen]
type ifla_info_policy_t[TYPE, DATA_TYPE, DATA] {
@@ -607,6 +610,12 @@ rtnl_link_ifmap {
port int8
}
+rtnl_net_policy [
+ NETNSA_NSID nlattr[NETNSA_NSID, netns_id]
+ NETNSA_PID nlattr[NETNSA_PID, pid]
+ NETNSA_FD nlattr[NETNSA_FD, fd_namespace]
+] [varlen]
+
rtnl_af = AF_INET, AF_INET6, AF_BRIDGE, AF_MPLS
net_device_flags = IFF_UP, IFF_BROADCAST, IFF_DEBUG, IFF_LOOPBACK, IFF_POINTOPOINT, IFF_NOTRAILERS, IFF_RUNNING, IFF_NOARP, IFF_PROMISC, IFF_ALLMULTI, IFF_MASTER, IFF_SLAVE, IFF_MULTICAST, IFF_PORTSEL, IFF_AUTOMEDIA, IFF_DYNAMIC, IFF_LOWER_UP, IFF_DORMANT, IFF_ECHO
ifa_flags = IFA_F_SECONDARY, IFA_F_NODAD, IFA_F_OPTIMISTIC, IFA_F_DADFAILED, IFA_F_HOMEADDRESS, IFA_F_DEPRECATED, IFA_F_TENTATIVE, IFA_F_PERMANENT, IFA_F_MANAGETEMPADDR, IFA_F_NOPREFIXROUTE, IFA_F_MCAUTOJOIN