blob: 488f565446e14c004c9462d4a4fcaee0d2e01ba3 [file] [log] [blame]
# Copyright 2019 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/seg6 support.
include <linux/net.h>
include <uapi/linux/netlink.h>
include <uapi/linux/genetlink.h>
include <uapi/linux/seg6_genl.h>
resource genl_seg6_family_id[int16]
type msghdr_nl_seg6[CMD] msghdr_netlink[netlink_msg_t[genl_seg6_family_id, genlmsghdr_t[CMD], seg6_genl_policy]]
syz_genetlink_get_family_id$SEG6(name ptr[in, string["SEG6"]]) genl_seg6_family_id
sendmsg$SEG6_CMD_SETHMAC(fd sock_nl_generic, msg ptr[in, msghdr_nl_seg6[SEG6_CMD_SETHMAC]], f flags[send_flags])
sendmsg$SEG6_CMD_DUMPHMAC(fd sock_nl_generic, msg ptr[in, msghdr_nl_seg6[SEG6_CMD_DUMPHMAC]], f flags[send_flags])
sendmsg$SEG6_CMD_SET_TUNSRC(fd sock_nl_generic, msg ptr[in, msghdr_nl_seg6[SEG6_CMD_SET_TUNSRC]], f flags[send_flags])
sendmsg$SEG6_CMD_GET_TUNSRC(fd sock_nl_generic, msg ptr[in, msghdr_nl_seg6[SEG6_CMD_GET_TUNSRC]], f flags[send_flags])
seg6_genl_policy [
SEG6_ATTR_DST nlattr[SEG6_ATTR_DST, ipv6_addr]
SEG6_ATTR_DSTLEN nlattr[SEG6_ATTR_DSTLEN, int32]
SEG6_ATTR_HMACKEYID nlattr[SEG6_ATTR_HMACKEYID, int32]
SEG6_ATTR_SECRET nlattr[SEG6_ATTR_SECRET, array[int32, 0:SEG6_ATTR_SECRETLEN]]
SEG6_ATTR_SECRETLEN nlattr[SEG6_ATTR_SECRETLEN, int8[0:SEG6_ATTR_SECRETLEN]]
SEG6_ATTR_ALGID nlattr[SEG6_ATTR_ALGID, int8]
] [varlen]