aboutsummaryrefslogtreecommitdiffstats
path: root/sys/linux/socket_netlink_generic_fou.txt
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2018-03-21 12:18:36 +0100
committerDmitry Vyukov <dvyukov@google.com>2018-03-21 12:18:36 +0100
commit7c62f718046a2204a35cfe8850f9006b686b1c22 (patch)
tree26f9cdda898f4cd455c585d741f67fb941ef4258 /sys/linux/socket_netlink_generic_fou.txt
parent704259f6449a65324f92d2737a291da10fdac03f (diff)
sys/linux: add netlink fou descriptions
Diffstat (limited to 'sys/linux/socket_netlink_generic_fou.txt')
-rw-r--r--sys/linux/socket_netlink_generic_fou.txt29
1 files changed, 29 insertions, 0 deletions
diff --git a/sys/linux/socket_netlink_generic_fou.txt b/sys/linux/socket_netlink_generic_fou.txt
new file mode 100644
index 000000000..cf14736c4
--- /dev/null
+++ b/sys/linux/socket_netlink_generic_fou.txt
@@ -0,0 +1,29 @@
+# Copyright 2018 syzkaller project authors. All rights reserved.
+# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file.
+
+# AF_NETLINK/NETLINK_GENERIC/fou support.
+
+include <linux/net.h>
+include <uapi/linux/netlink.h>
+include <uapi/linux/genetlink.h>
+include <uapi/linux/fou.h>
+
+resource genl_fou_family_id[int16]
+type msghdr_nl_fou[CMD] msghdr_netlink[netlink_msg_t[genl_fou_family_id, genlmsghdr_t[CMD], fou_nl_policy]]
+
+syz_genetlink_get_family_id$fou(name ptr[in, string["fou"]]) genl_fou_family_id
+
+sendmsg$FOU_CMD_ADD(fd sock_nl_generic, msg ptr[in, msghdr_nl_fou[FOU_CMD_ADD]], f flags[send_flags])
+sendmsg$FOU_CMD_DEL(fd sock_nl_generic, msg ptr[in, msghdr_nl_fou[FOU_CMD_DEL]], f flags[send_flags])
+sendmsg$FOU_CMD_GET(fd sock_nl_generic, msg ptr[in, msghdr_nl_fou[FOU_CMD_GET]], f flags[send_flags])
+
+fou_nl_policy [
+ FOU_ATTR_PORT nlattr[FOU_ATTR_PORT, sock_port]
+ FOU_ATTR_AF nlattr[FOU_ATTR_AF, flags[fou_families, int8]]
+ FOU_ATTR_IPPROTO nlattr[FOU_ATTR_IPPROTO, flags[ipv6_types, int8]]
+ FOU_ATTR_TYPE nlattr[FOU_ATTR_TYPE, flags[fou_types, int8]]
+ FOU_ATTR_REMCSUM_NOPARTIAL nlattr[FOU_ATTR_REMCSUM_NOPARTIAL, void]
+] [varlen]
+
+fou_families = AF_INET, AF_INET6
+fou_types = FOU_ENCAP_DIRECT, FOU_ENCAP_GUE