aboutsummaryrefslogtreecommitdiffstats
path: root/sys/linux
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2018-04-06 17:25:54 +0200
committerDmitry Vyukov <dvyukov@google.com>2018-04-06 17:28:33 +0200
commit8e4c2e24cb05daf27a600b570d3a774083a1210b (patch)
tree6e0be187becc43fa25fd801220e4d9ccef086342 /sys/linux
parent7606c2ac04a132ddb6ff46df1477b6e6d56750bd (diff)
executor: create team device
Diffstat (limited to 'sys/linux')
-rw-r--r--sys/linux/socket.txt8
-rw-r--r--sys/linux/socket_can.txt2
-rw-r--r--sys/linux/vnet.txt9
3 files changed, 12 insertions, 7 deletions
diff --git a/sys/linux/socket.txt b/sys/linux/socket.txt
index 5a652fb4f..71a878d14 100644
--- a/sys/linux/socket.txt
+++ b/sys/linux/socket.txt
@@ -233,11 +233,13 @@ ioctl$sock_SIOCGPGRP(fd sock, cmd const[SIOCGPGRP], arg ptr[out, pid])
resource ifindex[int32]
-type ifreq_t[ELEM] {
- ifr_ifrn devname
+type ifreq_dev_t[DEVNAME, ELEM] {
+ ifr_ifrn string[DEVNAME, IFNAMSIZ]
elem ELEM
} [size[IFREQ_SIZE]]
+type ifreq_t[ELEM] ifreq_dev_t[devnames, ELEM]
+
type ifreq ifreq_t[ifr_ifru]
ifr_ifru [
@@ -258,7 +260,7 @@ define IFREQ_SIZE sizeof(struct ifreq)
# between fuzzer and manager and produce lots of "no output" crashes
# (actually, this is not true now since all testing is done in a separate
# network namespace, but we still don't mess with eth0).
-devnames = "", "lo", "tunl0", "gre0", "gretap0", "ip_vti0", "ip6_vti0", "sit0", "ip6tnl0", "ip6gre0", "ip6gretap0", "bond0", "dummy0", "eql", "ifb0", "ipddp0", "yam0", "bcsf0", "bcsh0", "teql0", "nr0", "rose0", "irlan0", "erspan0", "bpq0", "vlan0", "bridge0", "vcan0", "syz_tun", "syzkaller0", "syzkaller1"
+devnames = "", "lo", "tunl0", "gre0", "gretap0", "ip_vti0", "ip6_vti0", "sit0", "ip6tnl0", "ip6gre0", "ip6gretap0", "bond0", "dummy0", "eql", "ifb0", "ipddp0", "yam0", "bcsf0", "bcsh0", "teql0", "nr0", "rose0", "irlan0", "erspan0", "bpq0", "vlan0", "bridge0", "vcan0", "team0", "syz_tun", "syzkaller0", "syzkaller1"
type devname string[devnames, IFNAMSIZ]
diff --git a/sys/linux/socket_can.txt b/sys/linux/socket_can.txt
index 99f1f8b2c..f538f8137 100644
--- a/sys/linux/socket_can.txt
+++ b/sys/linux/socket_can.txt
@@ -25,7 +25,7 @@ sendmsg$can_bcm(fd sock_can_bcm, msg ptr[in, msghdr_can[can_bcm_msg]], f flags[s
# TODO: do setsockopt/getsockopt/ioctl.
-ioctl$ifreq_SIOCGIFINDEX_vcan(fd sock_can, cmd const[SIOCGIFINDEX], arg ptr[inout, ifreq_t[ifindex_vcan]])
+ioctl$ifreq_SIOCGIFINDEX_vcan(fd sock_can, cmd const[SIOCGIFINDEX], arg ptr[inout, ifreq_dev_t["vcan0", ifindex_vcan]])
sockaddr_can {
can_family const[AF_CAN, int16]
diff --git a/sys/linux/vnet.txt b/sys/linux/vnet.txt
index 1f7902cc7..478b16712 100644
--- a/sys/linux/vnet.txt
+++ b/sys/linux/vnet.txt
@@ -52,12 +52,15 @@ mac_addr_link_local {
mac_addr_link_local_values = 0x0, 0x1, 0x2, 0x3, 0xe
+# This corresponds to the last digit in DEV_MAC/DEV_IPV4/DEV_IPV6 in executor/common_linux.h
+type netdev_addr_id int8[10:27]
+
mac_addr [
empty array[const[0x0, int8], 6]
# These correspond to LOCAL_MAC/REMOTE_MAC/DEV_MAC in executor/common_linux.h
local mac_addr_t[const[0xaa, int8]]
remote mac_addr_t[const[0xbb, int8]]
- dev mac_addr_t[int8[10:26]]
+ dev mac_addr_t[netdev_addr_id]
broadcast array[const[0xff, int8], 6]
link_local mac_addr_link_local
random array[int8, 6]
@@ -319,7 +322,7 @@ ipv4_addr [
# These correspond to LOCAL_IPV4/REMOTE_IPV4/DEV_IPV4 in executor/common_linux.h
local ipv4_addr_t[const[170, int8]]
remote ipv4_addr_t[const[187, int8]]
- dev ipv4_addr_t[int8[10:26]]
+ dev ipv4_addr_t[netdev_addr_id]
# 127.0.0.1
loopback const[0x7f000001, int32be]
# 224.0.0.1
@@ -517,7 +520,7 @@ ipv6_addr [
# These correspond to LOCAL_IPV6/REMOTE_IPV6/DEV_IPV6 in executor/common_linux.h
local ipv6_addr_t[const[0xaa, int8]]
remote ipv6_addr_t[const[0xbb, int8]]
- dev ipv6_addr_t[int8[10:26]]
+ dev ipv6_addr_t[netdev_addr_id]
loopback ipv6_addr_loopback
ipv4 ipv6_addr_ipv4
mcast1 ipv6_addr_multicast1