github.com/google/syzkaller@v0.0.0-20240517125934-c0f1611a36d6/sys/linux/socket_netlink_generic_batadv.txt (about) 1 # Copyright 2020 syzkaller project authors. All rights reserved. 2 # Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file. 3 4 include <linux/net.h> 5 include <uapi/linux/netlink.h> 6 include <uapi/linux/genetlink.h> 7 include <uapi/linux/batman_adv.h> 8 9 resource genl_batadv_family_id[int16] 10 type msghdr_batadv[CMD] msghdr_netlink[netlink_msg_t[genl_batadv_family_id, genlmsghdr_t[CMD], batadv_netlink_policy]] 11 12 syz_genetlink_get_family_id$batadv(name ptr[in, string["batadv"]], fd sock_nl_generic) genl_batadv_family_id 13 14 sendmsg$BATADV_CMD_GET_MESH(fd sock_nl_generic, msg ptr[in, msghdr_batadv[BATADV_CMD_GET_MESH]], f flags[send_flags]) 15 sendmsg$BATADV_CMD_TP_METER(fd sock_nl_generic, msg ptr[in, msghdr_batadv[BATADV_CMD_TP_METER]], f flags[send_flags]) 16 sendmsg$BATADV_CMD_TP_METER_CANCEL(fd sock_nl_generic, msg ptr[in, msghdr_batadv[BATADV_CMD_TP_METER_CANCEL]], f flags[send_flags]) 17 sendmsg$BATADV_CMD_GET_ROUTING_ALGOS(fd sock_nl_generic, msg ptr[in, msghdr_batadv[BATADV_CMD_GET_ROUTING_ALGOS]], f flags[send_flags]) 18 sendmsg$BATADV_CMD_GET_HARDIF(fd sock_nl_generic, msg ptr[in, msghdr_batadv[BATADV_CMD_GET_HARDIF]], f flags[send_flags]) 19 sendmsg$BATADV_CMD_GET_TRANSTABLE_LOCAL(fd sock_nl_generic, msg ptr[in, msghdr_batadv[BATADV_CMD_GET_TRANSTABLE_LOCAL]], f flags[send_flags]) 20 sendmsg$BATADV_CMD_GET_TRANSTABLE_GLOBAL(fd sock_nl_generic, msg ptr[in, msghdr_batadv[BATADV_CMD_GET_TRANSTABLE_GLOBAL]], f flags[send_flags]) 21 sendmsg$BATADV_CMD_GET_ORIGINATORS(fd sock_nl_generic, msg ptr[in, msghdr_batadv[BATADV_CMD_GET_ORIGINATORS]], f flags[send_flags]) 22 sendmsg$BATADV_CMD_GET_NEIGHBORS(fd sock_nl_generic, msg ptr[in, msghdr_batadv[BATADV_CMD_GET_NEIGHBORS]], f flags[send_flags]) 23 sendmsg$BATADV_CMD_GET_GATEWAYS(fd sock_nl_generic, msg ptr[in, msghdr_batadv[BATADV_CMD_GET_GATEWAYS]], f flags[send_flags]) 24 sendmsg$BATADV_CMD_GET_BLA_CLAIM(fd sock_nl_generic, msg ptr[in, msghdr_batadv[BATADV_CMD_GET_BLA_CLAIM]], f flags[send_flags]) 25 sendmsg$BATADV_CMD_GET_BLA_BACKBONE(fd sock_nl_generic, msg ptr[in, msghdr_batadv[BATADV_CMD_GET_BLA_BACKBONE]], f flags[send_flags]) 26 sendmsg$BATADV_CMD_GET_DAT_CACHE(fd sock_nl_generic, msg ptr[in, msghdr_batadv[BATADV_CMD_GET_DAT_CACHE]], f flags[send_flags]) 27 sendmsg$BATADV_CMD_GET_MCAST_FLAGS(fd sock_nl_generic, msg ptr[in, msghdr_batadv[BATADV_CMD_GET_MCAST_FLAGS]], f flags[send_flags]) 28 sendmsg$BATADV_CMD_SET_MESH(fd sock_nl_generic, msg ptr[in, msghdr_batadv[BATADV_CMD_SET_MESH]], f flags[send_flags]) 29 sendmsg$BATADV_CMD_SET_HARDIF(fd sock_nl_generic, msg ptr[in, msghdr_batadv[BATADV_CMD_SET_HARDIF]], f flags[send_flags]) 30 sendmsg$BATADV_CMD_GET_VLAN(fd sock_nl_generic, msg ptr[in, msghdr_batadv[BATADV_CMD_GET_VLAN]], f flags[send_flags]) 31 sendmsg$BATADV_CMD_SET_VLAN(fd sock_nl_generic, msg ptr[in, msghdr_batadv[BATADV_CMD_SET_VLAN]], f flags[send_flags]) 32 33 resource batadv_mesh_ifindex[ifindex] 34 resource batadv_hard_ifindex[ifindex] 35 36 ioctl$ifreq_SIOCGIFINDEX_batadv_mesh(fd sock, cmd const[SIOCGIFINDEX], arg ptr[out, ifreq_dev_t["batadv0", batadv_mesh_ifindex]]) 37 ioctl$ifreq_SIOCGIFINDEX_batadv_hard(fd sock, cmd const[SIOCGIFINDEX], arg ptr[out, ifreq_dev_t[batadv_hard_ifindex_names, batadv_hard_ifindex]]) 38 39 batadv_hard_ifindex_names = "batadv_slave_0", "batadv_slave_1" 40 41 batadv_netlink_policy [ 42 BATADV_ATTR_MESH_IFINDEX nlattr[BATADV_ATTR_MESH_IFINDEX, batadv_mesh_ifindex] 43 BATADV_ATTR_HARD_IFINDEX nlattr[BATADV_ATTR_HARD_IFINDEX, batadv_hard_ifindex] 44 BATADV_ATTR_ORIG_ADDRESS nlattr[BATADV_ATTR_ORIG_ADDRESS, mac_addr] 45 BATADV_ATTR_TPMETER_TEST_TIME nlattr[BATADV_ATTR_TPMETER_TEST_TIME, int32] 46 BATADV_ATTR_VLANID nlattr[BATADV_ATTR_VLANID, int16[0:4]] 47 BATADV_ATTR_AGGREGATED_OGMS_ENABLED nlattr[BATADV_ATTR_AGGREGATED_OGMS_ENABLED, bool8] 48 BATADV_ATTR_AP_ISOLATION_ENABLED nlattr[BATADV_ATTR_AP_ISOLATION_ENABLED, bool8] 49 BATADV_ATTR_ISOLATION_MARK nlattr[BATADV_ATTR_ISOLATION_MARK, int32] 50 BATADV_ATTR_ISOLATION_MASK nlattr[BATADV_ATTR_ISOLATION_MASK, int32] 51 BATADV_ATTR_BONDING_ENABLED nlattr[BATADV_ATTR_BONDING_ENABLED, bool8] 52 BATADV_ATTR_BRIDGE_LOOP_AVOIDANCE_ENABLED nlattr[BATADV_ATTR_BRIDGE_LOOP_AVOIDANCE_ENABLED, bool8] 53 BATADV_ATTR_DISTRIBUTED_ARP_TABLE_ENABLED nlattr[BATADV_ATTR_DISTRIBUTED_ARP_TABLE_ENABLED, bool8] 54 BATADV_ATTR_FRAGMENTATION_ENABLED nlattr[BATADV_ATTR_FRAGMENTATION_ENABLED, bool8] 55 BATADV_ATTR_GW_BANDWIDTH_DOWN nlattr[BATADV_ATTR_GW_BANDWIDTH_DOWN, int32] 56 BATADV_ATTR_GW_BANDWIDTH_UP nlattr[BATADV_ATTR_GW_BANDWIDTH_UP, int32] 57 BATADV_ATTR_GW_MODE nlattr[BATADV_ATTR_GW_MODE, flags[batadv_gw_modes, int8]] 58 BATADV_ATTR_GW_SEL_CLASS nlattr[BATADV_ATTR_GW_SEL_CLASS, int32] 59 BATADV_ATTR_HOP_PENALTY nlattr[BATADV_ATTR_HOP_PENALTY, int8] 60 BATADV_ATTR_MULTICAST_FORCEFLOOD_ENABLED nlattr[BATADV_ATTR_MULTICAST_FORCEFLOOD_ENABLED, bool8] 61 BATADV_ATTR_MULTICAST_FANOUT nlattr[BATADV_ATTR_MULTICAST_FANOUT, int32] 62 BATADV_ATTR_NETWORK_CODING_ENABLED nlattr[BATADV_ATTR_NETWORK_CODING_ENABLED, bool8] 63 BATADV_ATTR_ORIG_INTERVAL nlattr[BATADV_ATTR_ORIG_INTERVAL, int32] 64 BATADV_ATTR_ELP_INTERVAL nlattr[BATADV_ATTR_ELP_INTERVAL, int32] 65 BATADV_ATTR_THROUGHPUT_OVERRIDE nlattr[BATADV_ATTR_THROUGHPUT_OVERRIDE, int32] 66 ] [varlen] 67 68 batadv_gw_modes = BATADV_GW_MODE_OFF, BATADV_GW_MODE_CLIENT, BATADV_GW_MODE_SERVER