mirror of
https://github.com/reactos/syzkaller.git
synced 2025-02-17 10:10:08 +00:00
436 lines
29 KiB
Plaintext
436 lines
29 KiB
Plaintext
# Copyright 2020 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.
|
|
|
|
include <linux/net.h>
|
|
include <uapi/linux/netlink.h>
|
|
include <uapi/linux/genetlink.h>
|
|
include <uapi/linux/nl80211.h>
|
|
include <linux/ieee80211.h>
|
|
|
|
# TODO: the description is incomplete, lots of commands are missing.
|
|
# But it makes sense to setup hwsim devices first, otherwise there is not much to test.
|
|
|
|
resource nl80211_family_id[int16]
|
|
|
|
type msghdr_nl80211[CMD, POLICY] msghdr_netlink[netlink_msg_t[nl80211_family_id, genlmsghdr_t[CMD], POLICY]]
|
|
|
|
type nl80211_whipy int32[-1:4]
|
|
|
|
syz_genetlink_get_family_id$nl80211(name ptr[in, string["nl80211"]]) nl80211_family_id
|
|
|
|
sendmsg$NL80211_CMD_GET_WIPHY(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_GET_WIPHY, nl80211_policy_dev]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_SET_WIPHY(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_SET_WIPHY, nl80211_policy_wiphy]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_SET_WIPHY_NETNS(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_SET_WIPHY_NETNS, nl80211_policy_setns]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_GET_INTERFACE(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_GET_INTERFACE, nl80211_policy_dev]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_SET_INTERFACE(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_SET_INTERFACE, nl80211_policy_interface]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_NEW_INTERFACE(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_NEW_INTERFACE, nl80211_policy_interface]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_DEL_INTERFACE(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_DEL_INTERFACE, nl80211_policy_interface]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_GET_KEY(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_GET_KEY, nl80211_policy_cmd_key]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_SET_KEY(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_SET_KEY, nl80211_policy_cmd_key]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_NEW_KEY(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_NEW_KEY, nl80211_policy_cmd_key]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_DEL_KEY(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_DEL_KEY, nl80211_policy_cmd_key]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_SET_BEACON(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_SET_BEACON, nl80211_policy_beacon]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_START_AP(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_START_AP, nl80211_policy_beacon]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_STOP_AP(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_STOP_AP, nl80211_policy_beacon]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_GET_STATION(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_GET_STATION, nl80211_policy_station]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_SET_STATION(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_SET_STATION, nl80211_policy_station]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_NEW_STATION(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_NEW_STATION, nl80211_policy_station]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_DEL_STATION(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_DEL_STATION, nl80211_policy_station]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_GET_MPATH(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_GET_MPATH, nl80211_policy_mpath]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_SET_MPATH(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_SET_MPATH, nl80211_policy_mpath]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_NEW_MPATH(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_NEW_MPATH, nl80211_policy_mpath]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_DEL_MPATH(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_DEL_MPATH, nl80211_policy_mpath]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_GET_MPP(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_GET_MPP, nl80211_policy_mpath]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_SET_BSS(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_SET_BSS, nl80211_policy_bss]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_GET_REG(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_GET_REG, nl80211_policy_reg]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_SET_REG(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_SET_REG, nl80211_policy_reg]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_REQ_SET_REG(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_REQ_SET_REG, nl80211_policy_reg]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_GET_MESH_CONFIG(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_GET_MESH_CONFIG, nl80211_policy_dev]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_SET_MESH_CONFIG(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_SET_MESH_CONFIG, nl80211_policy_mesh]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_JOIN_MESH(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_JOIN_MESH, nl80211_policy_join_mesh]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_LEAVE_MESH(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_LEAVE_MESH, nl80211_policy_dev]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_TRIGGER_SCAN(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_TRIGGER_SCAN, nl80211_policy_scan]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_GET_SCAN(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_GET_SCAN, nl80211_policy_dev]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_START_SCHED_SCAN(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_START_SCHED_SCAN, nl80211_policy_scan]], f flags[send_flags])
|
|
sendmsg$NL80211_CMD_STOP_SCHED_SCAN(fd sock_nl_generic, msg ptr[in, msghdr_nl80211[NL80211_CMD_STOP_SCHED_SCAN, nl80211_policy_scan]], f flags[send_flags])
|
|
|
|
nl80211_wdev {
|
|
# TODO: what is this?
|
|
wdev_id int32
|
|
whipy nl80211_whipy
|
|
}
|
|
|
|
nl80211_policy_dev [
|
|
NL80211_ATTR_WIPHY nlattr[NL80211_ATTR_WIPHY, nl80211_whipy]
|
|
NL80211_ATTR_IFINDEX nlattr[NL80211_ATTR_IFINDEX, ifindex]
|
|
NL80211_ATTR_WDEV nlattr[NL80211_ATTR_WDEV, nl80211_wdev]
|
|
] [varlen]
|
|
|
|
nl80211_policy_wiphy [
|
|
NL80211_ATTR_WIPHY nlattr[NL80211_ATTR_WIPHY, nl80211_whipy]
|
|
NL80211_ATTR_IFINDEX nlattr[NL80211_ATTR_IFINDEX, ifindex]
|
|
NL80211_ATTR_WDEV nlattr[NL80211_ATTR_WDEV, nl80211_wdev]
|
|
NL80211_ATTR_WIPHY_NAME nlattr[NL80211_ATTR_WIPHY_NAME, devname]
|
|
NL80211_ATTR_WIPHY_TXQ_PARAMS nlnest[NL80211_ATTR_WIPHY_TXQ_PARAMS, array[txq_params_policy]]
|
|
NL80211_ATTR_WIPHY_FREQ nlattr[NL80211_ATTR_WIPHY_FREQ, int32]
|
|
NL80211_ATTR_WIPHY_RETRY_SHORT nlattr[NL80211_ATTR_WIPHY_RETRY_SHORT, int8]
|
|
NL80211_ATTR_WIPHY_RETRY_LONG nlattr[NL80211_ATTR_WIPHY_RETRY_LONG, int8]
|
|
NL80211_ATTR_WIPHY_FRAG_THRESHOLD nlattr[NL80211_ATTR_WIPHY_FRAG_THRESHOLD, int32]
|
|
NL80211_ATTR_WIPHY_RTS_THRESHOLD nlattr[NL80211_ATTR_WIPHY_RTS_THRESHOLD, int32]
|
|
NL80211_ATTR_WIPHY_TX_POWER_SETTING nlattr[NL80211_ATTR_WIPHY_TX_POWER_SETTING, int32]
|
|
NL80211_ATTR_WIPHY_TX_POWER_LEVEL nlattr[NL80211_ATTR_WIPHY_TX_POWER_LEVEL, int32]
|
|
NL80211_ATTR_WIPHY_ANTENNA_TX nlattr[NL80211_ATTR_WIPHY_ANTENNA_TX, int32]
|
|
NL80211_ATTR_WIPHY_ANTENNA_RX nlattr[NL80211_ATTR_WIPHY_ANTENNA_RX, int32]
|
|
NL80211_ATTR_WIPHY_COVERAGE_CLASS nlattr[NL80211_ATTR_WIPHY_COVERAGE_CLASS, int8]
|
|
NL80211_ATTR_WIPHY_DYN_ACK nlattr[NL80211_ATTR_WIPHY_DYN_ACK, void]
|
|
NL80211_ATTR_TXQ_LIMIT nlattr[NL80211_ATTR_TXQ_LIMIT, int32]
|
|
NL80211_ATTR_TXQ_MEMORY_LIMIT nlattr[NL80211_ATTR_TXQ_MEMORY_LIMIT, int32]
|
|
NL80211_ATTR_TXQ_QUANTUM nlattr[NL80211_ATTR_TXQ_QUANTUM, int32]
|
|
] [varlen]
|
|
|
|
nl80211_policy_setns [
|
|
NL80211_ATTR_WIPHY nlattr[NL80211_ATTR_WIPHY, nl80211_whipy]
|
|
NL80211_ATTR_IFINDEX nlattr[NL80211_ATTR_IFINDEX, ifindex]
|
|
NL80211_ATTR_WDEV nlattr[NL80211_ATTR_WDEV, nl80211_wdev]
|
|
NL80211_ATTR_PID nlattr[NL80211_ATTR_PID, pid]
|
|
NL80211_ATTR_NETNS_FD nlattr[NL80211_ATTR_NETNS_FD, fd_namespace]
|
|
] [varlen]
|
|
|
|
txq_params_policy [
|
|
NL80211_TXQ_ATTR_QUEUE nlattr[NL80211_TXQ_ATTR_QUEUE, int8]
|
|
NL80211_TXQ_ATTR_TXOP nlattr[NL80211_TXQ_ATTR_TXOP, int16]
|
|
NL80211_TXQ_ATTR_CWMIN nlattr[NL80211_TXQ_ATTR_CWMIN, int16]
|
|
NL80211_TXQ_ATTR_CWMAX nlattr[NL80211_TXQ_ATTR_CWMAX, int16]
|
|
NL80211_TXQ_ATTR_AIFS nlattr[NL80211_TXQ_ATTR_AIFS, int8]
|
|
] [varlen]
|
|
|
|
nl80211_policy_interface [
|
|
NL80211_ATTR_WIPHY nlattr[NL80211_ATTR_WIPHY, nl80211_whipy]
|
|
NL80211_ATTR_WDEV nlattr[NL80211_ATTR_WDEV, nl80211_wdev]
|
|
NL80211_ATTR_IFINDEX nlattr[NL80211_ATTR_IFINDEX, ifindex]
|
|
NL80211_ATTR_IFTYPE nlattr[NL80211_ATTR_IFTYPE, flags[nl80211_iftype, int32]]
|
|
NL80211_ATTR_IFNAME nlattr[NL80211_ATTR_IFNAME, devname]
|
|
] [varlen]
|
|
|
|
nl80211_iftype = NL80211_IFTYPE_UNSPECIFIED, NL80211_IFTYPE_ADHOC, NL80211_IFTYPE_STATION, NL80211_IFTYPE_AP, NL80211_IFTYPE_AP_VLAN, NL80211_IFTYPE_WDS, NL80211_IFTYPE_MONITOR, NL80211_IFTYPE_MESH_POINT, NL80211_IFTYPE_P2P_CLIENT, NL80211_IFTYPE_P2P_GO, NL80211_IFTYPE_P2P_DEVICE, NL80211_IFTYPE_OCB, NL80211_IFTYPE_NAN
|
|
|
|
nl80211_policy_cmd_key [
|
|
NL80211_ATTR_KEY_IDX nlattr[NL80211_ATTR_KEY_IDX, int8[0:5]]
|
|
NL80211_ATTR_KEY_TYPE nlattr[NL80211_ATTR_KEY_TYPE, flags[nl80211_key_type, int32]]
|
|
NL80211_ATTR_KEY_DEFAULT nlattr[NL80211_ATTR_KEY_DEFAULT, void]
|
|
NL80211_ATTR_KEY_DEFAULT_MGMT nlattr[NL80211_ATTR_KEY_DEFAULT_MGMT, void]
|
|
NL80211_ATTR_KEY_CIPHER nlattr[NL80211_ATTR_KEY_CIPHER, flags[nl80211_cipher_suite, int32]]
|
|
NL80211_ATTR_KEY_DATA_WEP40 nlattr[NL80211_ATTR_KEY_DATA, array[int8, WLAN_KEY_LEN_WEP40]]
|
|
NL80211_ATTR_KEY_DATA_WEP104 nlattr[NL80211_ATTR_KEY_DATA, array[int8, WLAN_KEY_LEN_WEP104]]
|
|
NL80211_ATTR_KEY_SEQ nlattr[NL80211_ATTR_KEY_SEQ, array[int8, 0:16]]
|
|
NL80211_ATTR_MAC nlattr[NL80211_ATTR_MAC, mac_addr]
|
|
NL80211_ATTR_KEY_DEFAULT_TYPES nlnest[NL80211_ATTR_KEY_DEFAULT_TYPES, array[nl80211_key_default_policy]]
|
|
NL80211_ATTR_KEY nlnest[NL80211_ATTR_KEY, array[nl80211_key_policy]]
|
|
] [varlen]
|
|
|
|
nl80211_key_default_policy [
|
|
NL80211_KEY_DEFAULT_TYPE_UNICAST nlattr[NL80211_KEY_DEFAULT_TYPE_UNICAST, void]
|
|
NL80211_KEY_DEFAULT_TYPE_MULTICAST nlattr[NL80211_KEY_DEFAULT_TYPE_MULTICAST, void]
|
|
] [varlen]
|
|
|
|
nl80211_key_policy [
|
|
NL80211_KEY_DATA_WEP40 nlattr[NL80211_KEY_DATA, array[int8, WLAN_KEY_LEN_WEP40]]
|
|
NL80211_KEY_DATA_WEP104 nlattr[NL80211_KEY_DATA, array[int8, WLAN_KEY_LEN_WEP104]]
|
|
NL80211_KEY_IDX nlattr[NL80211_KEY_IDX, int8[0:5]]
|
|
NL80211_KEY_CIPHER nlattr[NL80211_KEY_CIPHER, flags[nl80211_cipher_suite, int32]]
|
|
NL80211_KEY_SEQ nlattr[NL80211_KEY_SEQ, array[int8, 0:16]]
|
|
NL80211_KEY_DEFAULT nlattr[NL80211_KEY_DEFAULT, void]
|
|
NL80211_KEY_DEFAULT_MGMT nlattr[NL80211_KEY_DEFAULT_MGMT, void]
|
|
NL80211_KEY_TYPE nlattr[NL80211_KEY_TYPE, flags[nl80211_key_type, int32]]
|
|
NL80211_KEY_DEFAULT_TYPES nlnest[NL80211_KEY_DEFAULT_TYPES, array[nl80211_key_default_policy]]
|
|
NL80211_KEY_MODE nlattr[NL80211_KEY_MODE, int8[0:NL80211_KEY_SET_TX]]
|
|
] [varlen]
|
|
|
|
nl80211_key_type = NL80211_KEYTYPE_GROUP, NL80211_KEYTYPE_PAIRWISE, NL80211_KEYTYPE_PEERKEY
|
|
nl80211_cipher_suite = WLAN_CIPHER_SUITE_WEP40, WLAN_CIPHER_SUITE_WEP104
|
|
ieee80211_cipher_suite = WLAN_CIPHER_SUITE_USE_GROUP, WLAN_CIPHER_SUITE_WEP40, WLAN_CIPHER_SUITE_TKIP, WLAN_CIPHER_SUITE_CCMP, WLAN_CIPHER_SUITE_WEP104, WLAN_CIPHER_SUITE_AES_CMAC, WLAN_CIPHER_SUITE_GCMP, WLAN_CIPHER_SUITE_GCMP_256, WLAN_CIPHER_SUITE_CCMP_256, WLAN_CIPHER_SUITE_BIP_GMAC_128, WLAN_CIPHER_SUITE_BIP_GMAC_256, WLAN_CIPHER_SUITE_BIP_CMAC_256, WLAN_CIPHER_SUITE_SMS4
|
|
ieee80211_akm_suite = WLAN_AKM_SUITE_8021X, WLAN_AKM_SUITE_PSK, WLAN_AKM_SUITE_FT_8021X, WLAN_AKM_SUITE_FT_PSK, WLAN_AKM_SUITE_8021X_SHA256, WLAN_AKM_SUITE_PSK_SHA256, WLAN_AKM_SUITE_TDLS, WLAN_AKM_SUITE_SAE, WLAN_AKM_SUITE_FT_OVER_SAE, WLAN_AKM_SUITE_8021X_SUITE_B, WLAN_AKM_SUITE_8021X_SUITE_B_192, WLAN_AKM_SUITE_FILS_SHA256, WLAN_AKM_SUITE_FILS_SHA384, WLAN_AKM_SUITE_FT_FILS_SHA256, WLAN_AKM_SUITE_FT_FILS_SHA384
|
|
|
|
nl80211_policy_beacon [
|
|
NL80211_ATTR_WIPHY nlattr[NL80211_ATTR_WIPHY, nl80211_whipy]
|
|
NL80211_ATTR_IFINDEX nlattr[NL80211_ATTR_IFINDEX, ifindex]
|
|
NL80211_ATTR_WDEV nlattr[NL80211_ATTR_WDEV, nl80211_wdev]
|
|
NL80211_ATTR_WIPHY_FREQ nlattr[NL80211_ATTR_WIPHY_FREQ, int32]
|
|
NL80211_ATTR_FTM_RESPONDER nlnest[NL80211_ATTR_FTM_RESPONDER, array[nl80211_ftm_responder_policy]]
|
|
NL80211_ATTR_SSID nlattr[NL80211_ATTR_SSID, array[int8, 0:IEEE80211_MAX_SSID_LEN]]
|
|
NL80211_ATTR_TX_RATES nlnest[NL80211_ATTR_TX_RATES, array[nl80211_tx_rates_policy]]
|
|
NL80211_ATTR_SMPS_MODE nlattr[NL80211_ATTR_SMPS_MODE, flags[nl80211_smps_mode, int8]]
|
|
NL80211_ATTR_PBSS nlattr[NL80211_ATTR_PBSS, void]
|
|
NL80211_ATTR_ACL_POLICY nlattr[NL80211_ATTR_ACL_POLICY, int32[NL80211_ACL_POLICY_ACCEPT_UNLESS_LISTED:NL80211_ACL_POLICY_DENY_UNLESS_LISTED]]
|
|
NL80211_ATTR_TWT_RESPONDER nlattr[NL80211_ATTR_TWT_RESPONDER, void]
|
|
NL80211_ATTR_EXTERNAL_AUTH_SUPPORT nlattr[NL80211_ATTR_EXTERNAL_AUTH_SUPPORT, void]
|
|
NL80211_ATTR_CIPHER_SUITES_PAIRWISE nlattr[NL80211_ATTR_CIPHER_SUITES_PAIRWISE, array[flags[ieee80211_cipher_suite, int32]]]
|
|
NL80211_ATTR_AKM_SUITES nlattr[NL80211_ATTR_AKM_SUITES, array[flags[ieee80211_akm_suite, int32]]]
|
|
NL80211_ATTR_MAC_ADDRS nlnest[NL80211_ATTR_MAC_ADDRS, array[nlattr[0, mac_addr]]]
|
|
NL80211_ATTR_HIDDEN_SSID nlattr[NL80211_ATTR_HIDDEN_SSID, int32[NL80211_HIDDEN_SSID_NOT_IN_USE:NL80211_HIDDEN_SSID_ZERO_CONTENTS]]
|
|
NL80211_ATTR_PRIVACY nlattr[NL80211_ATTR_PRIVACY, void]
|
|
NL80211_ATTR_CIPHER_SUITE_GROUP nlattr[NL80211_ATTR_CIPHER_SUITE_GROUP, flags[ieee80211_cipher_suite, int32]]
|
|
NL80211_ATTR_AUTH_TYPE nlattr[NL80211_ATTR_AUTH_TYPE, flags[nl80211_auth_type, int32]]
|
|
NL80211_ATTR_INACTIVITY_TIMEOUT nlattr[NL80211_ATTR_INACTIVITY_TIMEOUT, int16]
|
|
NL80211_ATTR_P2P_CTWINDOW nlattr[NL80211_ATTR_P2P_CTWINDOW, int8]
|
|
NL80211_ATTR_P2P_OPPPS nlattr[NL80211_ATTR_P2P_OPPPS, bool8]
|
|
NL80211_ATTR_BEACON_INTERVAL nlattr[NL80211_ATTR_BEACON_INTERVAL, int32]
|
|
NL80211_ATTR_DTIM_PERIOD nlattr[NL80211_ATTR_DTIM_PERIOD, int32]
|
|
NL80211_ATTR_BEACON_HEAD nlattr[NL80211_ATTR_BEACON_HEAD, array[int8, 0:IEEE80211_MAX_DATA_LEN]]
|
|
NL80211_ATTR_BEACON_TAIL nlattr[NL80211_ATTR_BEACON_TAIL, array[int8, 0:IEEE80211_MAX_DATA_LEN]]
|
|
NL80211_ATTR_IE nlattr[NL80211_ATTR_IE, array[int8, 0:IEEE80211_MAX_DATA_LEN]]
|
|
NL80211_ATTR_IE_PROBE_RESP nlattr[NL80211_ATTR_IE_PROBE_RESP, array[int8, 0:IEEE80211_MAX_DATA_LEN]]
|
|
NL80211_ATTR_IE_ASSOC_RESP nlattr[NL80211_ATTR_IE_ASSOC_RESP, array[int8, 0:IEEE80211_MAX_DATA_LEN]]
|
|
NL80211_ATTR_IE_RIC nlattr[NL80211_ATTR_IE_RIC, array[int8, 0:IEEE80211_MAX_DATA_LEN]]
|
|
NL80211_ATTR_PROBE_RESP nlattr[NL80211_ATTR_PROBE_RESP, array[int8, 0:IEEE80211_MAX_DATA_LEN]]
|
|
NL80211_ATTR_WPA_VERSIONS nlattr[NL80211_ATTR_WPA_VERSIONS, flags[nl80211_wpa_versions, int32]]
|
|
] [varlen]
|
|
|
|
nl80211_smps_mode = NL80211_SMPS_OFF, NL80211_SMPS_STATIC, NL80211_SMPS_DYNAMIC
|
|
nl80211_auth_type = NL80211_AUTHTYPE_OPEN_SYSTEM, NL80211_AUTHTYPE_SHARED_KEY, NL80211_AUTHTYPE_FT, NL80211_AUTHTYPE_NETWORK_EAP, NL80211_AUTHTYPE_SAE, NL80211_AUTHTYPE_FILS_SK, NL80211_AUTHTYPE_FILS_SK_PFS, NL80211_AUTHTYPE_FILS_PK
|
|
nl80211_wpa_versions = NL80211_WPA_VERSION_1, NL80211_WPA_VERSION_2, NL80211_WPA_VERSION_3
|
|
|
|
nl80211_tx_rates_policy [
|
|
NL80211_BAND_2GHZ nlattr[NL80211_BAND_2GHZ, array[nl80211_txattr_policy]]
|
|
NL80211_BAND_5GHZ nlattr[NL80211_BAND_5GHZ, array[nl80211_txattr_policy]]
|
|
NL80211_BAND_60GHZ nlattr[NL80211_BAND_60GHZ, array[nl80211_txattr_policy]]
|
|
NL80211_BAND_6GHZ nlattr[NL80211_BAND_6GHZ, array[nl80211_txattr_policy]]
|
|
] [varlen]
|
|
|
|
nl80211_txattr_policy [
|
|
NL80211_TXRATE_LEGACY nlattr[NL80211_TXRATE_LEGACY, array[int8, 0:NL80211_MAX_SUPP_RATES]]
|
|
NL80211_TXRATE_HT nlattr[NL80211_TXRATE_HT, array[int8, 0:NL80211_MAX_SUPP_HT_RATES]]
|
|
NL80211_TXRATE_VHT nlattr[NL80211_TXRATE_VHT, nl80211_txrate_vht]
|
|
NL80211_TXRATE_GI nlattr[NL80211_TXRATE_GI, flags[nl80211_txrate_gi, int8]]
|
|
] [varlen]
|
|
|
|
nl80211_txrate_gi = NL80211_TXRATE_DEFAULT_GI, NL80211_TXRATE_FORCE_SGI, NL80211_TXRATE_FORCE_LGI
|
|
|
|
nl80211_txrate_vht {
|
|
mcs array[int16, NL80211_VHT_NSS_MAX]
|
|
}
|
|
|
|
nl80211_ftm_responder_policy [
|
|
NL80211_FTM_RESP_ATTR_ENABLED nlattr[NL80211_FTM_RESP_ATTR_ENABLED, void]
|
|
NL80211_FTM_RESP_ATTR_LCI nlattr[NL80211_FTM_RESP_ATTR_LCI, array[int8]]
|
|
NL80211_FTM_RESP_ATTR_CIVICLOC nlattr[NL80211_FTM_RESP_ATTR_CIVICLOC, array[int8]]
|
|
] [varlen]
|
|
|
|
nl80211_policy_station [
|
|
NL80211_ATTR_WIPHY nlattr[NL80211_ATTR_WIPHY, nl80211_whipy]
|
|
NL80211_ATTR_IFINDEX nlattr[NL80211_ATTR_IFINDEX, ifindex]
|
|
NL80211_ATTR_WDEV nlattr[NL80211_ATTR_WDEV, nl80211_wdev]
|
|
NL80211_ATTR_MAC nlattr[NL80211_ATTR_MAC, mac_addr]
|
|
NL80211_ATTR_MGMT_SUBTYPE nlattr[NL80211_ATTR_MGMT_SUBTYPE, flags[ieee80211_mgmt_subtype, int8]]
|
|
NL80211_ATTR_REASON_CODE nlattr[NL80211_ATTR_REASON_CODE, int16]
|
|
NL80211_ATTR_STA_AID nlattr[NL80211_ATTR_STA_AID, int16[1:IEEE80211_MAX_AID]]
|
|
NL80211_ATTR_VLAN_ID nlattr[NL80211_ATTR_VLAN_ID, int16[1:4]]
|
|
NL80211_ATTR_STA_LISTEN_INTERVAL nlattr[NL80211_ATTR_STA_LISTEN_INTERVAL, int16]
|
|
NL80211_ATTR_STA_SUPPORT_P2P_PS nlattr[NL80211_ATTR_STA_SUPPORT_P2P_PS, bool8]
|
|
NL80211_ATTR_STA_SUPPORTED_RATES nlattr[NL80211_ATTR_STA_SUPPORTED_RATES, array[int8, 0:NL80211_MAX_SUPP_RATES]]
|
|
NL80211_ATTR_STA_CAPABILITY nlattr[NL80211_ATTR_STA_CAPABILITY, int16]
|
|
NL80211_ATTR_STA_EXT_CAPABILITY nlattr[NL80211_ATTR_STA_EXT_CAPABILITY, array[int8]]
|
|
NL80211_ATTR_STA_FLAGS nlnest[NL80211_ATTR_STA_FLAGS, array[sta_flags_policy]]
|
|
NL80211_ATTR_STA_FLAGS2 nlattr[NL80211_ATTR_STA_FLAGS2, nl80211_sta_flag_update]
|
|
NL80211_ATTR_STA_PLINK_ACTION nlattr[NL80211_ATTR_STA_PLINK_ACTION, int8[0:NUM_NL80211_PLINK_ACTIONS_1]]
|
|
NL80211_ATTR_STA_PLINK_STATE nlattr[NL80211_ATTR_STA_PLINK_STATE, int8[0:NUM_NL80211_PLINK_STATES_1]]
|
|
NL80211_ATTR_LOCAL_MESH_POWER_MODE nlattr[NL80211_ATTR_LOCAL_MESH_POWER_MODE, int32[1:NL80211_MESH_POWER_MAX]]
|
|
NL80211_ATTR_OPMODE_NOTIF nlattr[NL80211_ATTR_OPMODE_NOTIF, int8]
|
|
NL80211_ATTR_AIRTIME_WEIGHT nlattr[NL80211_ATTR_AIRTIME_WEIGHT, int16]
|
|
NL80211_ATTR_STA_TX_POWER_SETTING nlattr[NL80211_ATTR_STA_TX_POWER_SETTING, int8[NL80211_TX_POWER_AUTOMATIC:NL80211_TX_POWER_FIXED]]
|
|
NL80211_ATTR_STA_TX_POWER nlattr[NL80211_ATTR_STA_TX_POWER, int16]
|
|
NL80211_ATTR_STA_SUPPORTED_CHANNELS nlattr[NL80211_ATTR_STA_SUPPORTED_CHANNELS, array[int16]]
|
|
NL80211_ATTR_STA_SUPPORTED_OPER_CLASSES nlattr[NL80211_ATTR_STA_SUPPORTED_OPER_CLASSES, array[int8, 2:253]]
|
|
NL80211_ATTR_STA_WME nlattr[NL80211_ATTR_STA_WME, array[nl80211_sta_wme_policy]]
|
|
NL80211_ATTR_PEER_AID nlattr[NL80211_ATTR_PEER_AID, int16[1:IEEE80211_MAX_AID]]
|
|
NL80211_ATTR_MESH_PEER_AID nlattr[NL80211_ATTR_MESH_PEER_AID, int16[1:IEEE80211_MAX_AID]]
|
|
NL80211_ATTR_STA_VLAN nlattr[NL80211_ATTR_STA_VLAN, ifindex]
|
|
] [varlen]
|
|
|
|
define NUM_NL80211_PLINK_ACTIONS_1 NUM_NL80211_PLINK_ACTIONS - 1
|
|
define NUM_NL80211_PLINK_STATES_1 NUM_NL80211_PLINK_STATES - 1
|
|
|
|
ieee80211_mgmt_subtype = 0xa, 0xc
|
|
|
|
sta_flags_policy [
|
|
NL80211_STA_FLAG_AUTHORIZED nlattr[NL80211_STA_FLAG_AUTHORIZED, void]
|
|
NL80211_STA_FLAG_SHORT_PREAMBLE nlattr[NL80211_STA_FLAG_SHORT_PREAMBLE, void]
|
|
NL80211_STA_FLAG_WME nlattr[NL80211_STA_FLAG_WME, void]
|
|
NL80211_STA_FLAG_MFP nlattr[NL80211_STA_FLAG_MFP, void]
|
|
NL80211_STA_FLAG_AUTHENTICATED nlattr[NL80211_STA_FLAG_AUTHENTICATED, void]
|
|
NL80211_STA_FLAG_TDLS_PEER nlattr[NL80211_STA_FLAG_TDLS_PEER, void]
|
|
NL80211_STA_FLAG_ASSOCIATED nlattr[NL80211_STA_FLAG_ASSOCIATED, void]
|
|
] [varlen]
|
|
|
|
nl80211_sta_flag_update {
|
|
mask int32
|
|
set int32
|
|
} [packed]
|
|
|
|
nl80211_sta_wme_policy [
|
|
NL80211_STA_WME_UAPSD_QUEUES nlattr[NL80211_STA_WME_UAPSD_QUEUES, int8]
|
|
NL80211_STA_WME_MAX_SP nlattr[NL80211_STA_WME_MAX_SP, int8]
|
|
] [varlen]
|
|
|
|
nl80211_policy_mpath [
|
|
NL80211_ATTR_WIPHY nlattr[NL80211_ATTR_WIPHY, nl80211_whipy]
|
|
NL80211_ATTR_IFINDEX nlattr[NL80211_ATTR_IFINDEX, ifindex]
|
|
NL80211_ATTR_WDEV nlattr[NL80211_ATTR_WDEV, nl80211_wdev]
|
|
NL80211_ATTR_MAC nlattr[NL80211_ATTR_MAC, mac_addr]
|
|
NL80211_ATTR_MPATH_NEXT_HOP nlattr[NL80211_ATTR_MPATH_NEXT_HOP, mac_addr]
|
|
] [varlen]
|
|
|
|
nl80211_policy_bss [
|
|
NL80211_ATTR_WIPHY nlattr[NL80211_ATTR_WIPHY, nl80211_whipy]
|
|
NL80211_ATTR_IFINDEX nlattr[NL80211_ATTR_IFINDEX, ifindex]
|
|
NL80211_ATTR_WDEV nlattr[NL80211_ATTR_WDEV, nl80211_wdev]
|
|
NL80211_ATTR_BSS_CTS_PROT nlattr[NL80211_ATTR_BSS_CTS_PROT, int8]
|
|
NL80211_ATTR_BSS_SHORT_PREAMBLE nlattr[NL80211_ATTR_BSS_SHORT_PREAMBLE, int8]
|
|
NL80211_ATTR_BSS_SHORT_SLOT_TIME nlattr[NL80211_ATTR_BSS_SHORT_SLOT_TIME, int8]
|
|
NL80211_ATTR_BSS_HT_OPMODE nlattr[NL80211_ATTR_BSS_HT_OPMODE, int16]
|
|
NL80211_ATTR_AP_ISOLATE nlattr[NL80211_ATTR_AP_ISOLATE, int8]
|
|
NL80211_ATTR_P2P_CTWINDOW nlattr[NL80211_ATTR_P2P_CTWINDOW, int8]
|
|
NL80211_ATTR_P2P_OPPPS nlattr[NL80211_ATTR_P2P_OPPPS, bool8]
|
|
NL80211_STA_WME_MAX_SP nlattr[NL80211_STA_WME_MAX_SP, array[int8, 0:NL80211_MAX_SUPP_RATES]]
|
|
] [varlen]
|
|
|
|
nl80211_policy_reg [
|
|
NL80211_ATTR_WIPHY nlattr[NL80211_ATTR_WIPHY, nl80211_whipy]
|
|
NL80211_ATTR_USER_REG_HINT_TYPE nlattr[NL80211_ATTR_USER_REG_HINT_TYPE, flags[nl80211_user_reg_hint_type, int32]]
|
|
NL80211_ATTR_SOCKET_OWNER nlattr[NL80211_ATTR_SOCKET_OWNER, void]
|
|
NL80211_ATTR_REG_ALPHA2 nlattr[NL80211_ATTR_REG_ALPHA2, string[nl80211_reg_alpha2]]
|
|
NL80211_ATTR_REG_RULES nlnest[NL80211_ATTR_REG_RULES, array[reg_rule_policy]]
|
|
NL80211_ATTR_DFS_REGION nlattr[NL80211_ATTR_DFS_REGION, int8]
|
|
] [varlen]
|
|
|
|
nl80211_user_reg_hint_type = NL80211_USER_REG_HINT_USER, NL80211_USER_REG_HINT_CELL_BASE, NL80211_USER_REG_HINT_INDOOR
|
|
nl80211_reg_alpha2 = "a", "b", "aa", "bb"
|
|
|
|
reg_rule_policy [
|
|
NL80211_ATTR_REG_RULE_FLAGS nlattr[NL80211_ATTR_REG_RULE_FLAGS, int32]
|
|
NL80211_ATTR_FREQ_RANGE_START nlattr[NL80211_ATTR_FREQ_RANGE_START, int32]
|
|
NL80211_ATTR_FREQ_RANGE_END nlattr[NL80211_ATTR_FREQ_RANGE_END, int32]
|
|
NL80211_ATTR_FREQ_RANGE_MAX_BW nlattr[NL80211_ATTR_FREQ_RANGE_MAX_BW, int32]
|
|
NL80211_ATTR_POWER_RULE_MAX_ANT_GAIN nlattr[NL80211_ATTR_POWER_RULE_MAX_ANT_GAIN, int32]
|
|
NL80211_ATTR_POWER_RULE_MAX_EIRP nlattr[NL80211_ATTR_POWER_RULE_MAX_EIRP, int32]
|
|
NL80211_ATTR_DFS_CAC_TIME nlattr[NL80211_ATTR_DFS_CAC_TIME, int32]
|
|
] [varlen]
|
|
|
|
nl80211_policy_mesh [
|
|
NL80211_ATTR_WIPHY nlattr[NL80211_ATTR_WIPHY, nl80211_whipy]
|
|
NL80211_ATTR_IFINDEX nlattr[NL80211_ATTR_IFINDEX, ifindex]
|
|
NL80211_ATTR_WDEV nlattr[NL80211_ATTR_WDEV, nl80211_wdev]
|
|
NL80211_ATTR_MESH_CONFIG nlnest[NL80211_ATTR_MESH_CONFIG, array[nl80211_meshconf_params_policy]]
|
|
] [varlen]
|
|
|
|
nl80211_policy_join_mesh [
|
|
NL80211_ATTR_WIPHY nlattr[NL80211_ATTR_WIPHY, nl80211_whipy]
|
|
NL80211_ATTR_IFINDEX nlattr[NL80211_ATTR_IFINDEX, ifindex]
|
|
NL80211_ATTR_WDEV nlattr[NL80211_ATTR_WDEV, nl80211_wdev]
|
|
NL80211_ATTR_MESH_CONFIG nlnest[NL80211_ATTR_MESH_CONFIG, array[nl80211_meshconf_params_policy]]
|
|
NL80211_ATTR_MESH_SETUP nlattr[NL80211_ATTR_MESH_SETUP, array[nl80211_mesh_setup_params_policy]]
|
|
NL80211_ATTR_MESH_ID nlattr[NL80211_ATTR_MESH_ID, array[int8]]
|
|
NL80211_ATTR_MCAST_RATE nlattr[NL80211_ATTR_MCAST_RATE, int32]
|
|
NL80211_ATTR_BEACON_INTERVAL nlattr[NL80211_ATTR_BEACON_INTERVAL, int32]
|
|
NL80211_ATTR_DTIM_PERIOD nlattr[NL80211_ATTR_DTIM_PERIOD, int32]
|
|
NL80211_ATTR_WIPHY_FREQ nlattr[NL80211_ATTR_WIPHY_FREQ, int32]
|
|
NL80211_ATTR_BSS_BASIC_RATES nlattr[NL80211_ATTR_BSS_BASIC_RATES, array[int8]]
|
|
NL80211_ATTR_TX_RATES nlnest[NL80211_ATTR_TX_RATES, array[nl80211_tx_rates_policy]]
|
|
NL80211_ATTR_SOCKET_OWNER nlattr[NL80211_ATTR_SOCKET_OWNER, void]
|
|
NL80211_ATTR_HANDLE_DFS nlattr[NL80211_ATTR_HANDLE_DFS, void]
|
|
NL80211_ATTR_CONTROL_PORT_OVER_NL80211 nlattr[NL80211_ATTR_CONTROL_PORT_OVER_NL80211, void]
|
|
] [varlen]
|
|
|
|
nl80211_meshconf_params_policy [
|
|
NL80211_MESHCONF_RETRY_TIMEOUT nlattr[NL80211_MESHCONF_RETRY_TIMEOUT, int16[1:255]]
|
|
NL80211_MESHCONF_CONFIRM_TIMEOUT nlattr[NL80211_MESHCONF_CONFIRM_TIMEOUT, int16[1:255]]
|
|
NL80211_MESHCONF_HOLDING_TIMEOUT nlattr[NL80211_MESHCONF_HOLDING_TIMEOUT, int16[1:255]]
|
|
NL80211_MESHCONF_MAX_PEER_LINKS nlattr[NL80211_MESHCONF_MAX_PEER_LINKS, int16[0:255]]
|
|
NL80211_MESHCONF_MAX_RETRIES nlattr[NL80211_MESHCONF_MAX_RETRIES, int8[0:16]]
|
|
NL80211_MESHCONF_TTL nlattr[NL80211_MESHCONF_TTL, int8]
|
|
NL80211_MESHCONF_ELEMENT_TTL nlattr[NL80211_MESHCONF_ELEMENT_TTL, int8]
|
|
NL80211_MESHCONF_AUTO_OPEN_PLINKS nlattr[NL80211_MESHCONF_AUTO_OPEN_PLINKS, int8]
|
|
NL80211_MESHCONF_SYNC_OFFSET_MAX_NEIGHBOR nlattr[NL80211_MESHCONF_SYNC_OFFSET_MAX_NEIGHBOR, int32[1:255]]
|
|
NL80211_MESHCONF_HWMP_MAX_PREQ_RETRIES nlattr[NL80211_MESHCONF_HWMP_MAX_PREQ_RETRIES, int8]
|
|
NL80211_MESHCONF_PATH_REFRESH_TIME nlattr[NL80211_MESHCONF_PATH_REFRESH_TIME, int32]
|
|
NL80211_MESHCONF_MIN_DISCOVERY_TIMEOUT nlattr[NL80211_MESHCONF_MIN_DISCOVERY_TIMEOUT, int16]
|
|
NL80211_MESHCONF_HWMP_ACTIVE_PATH_TIMEOUT nlattr[NL80211_MESHCONF_HWMP_ACTIVE_PATH_TIMEOUT, int32]
|
|
NL80211_MESHCONF_HWMP_PREQ_MIN_INTERVAL nlattr[NL80211_MESHCONF_HWMP_PREQ_MIN_INTERVAL, int16]
|
|
NL80211_MESHCONF_HWMP_PERR_MIN_INTERVAL nlattr[NL80211_MESHCONF_HWMP_PERR_MIN_INTERVAL, int16]
|
|
NL80211_MESHCONF_HWMP_NET_DIAM_TRVS_TIME nlattr[NL80211_MESHCONF_HWMP_NET_DIAM_TRVS_TIME, int16]
|
|
NL80211_MESHCONF_HWMP_ROOTMODE nlattr[NL80211_MESHCONF_HWMP_ROOTMODE, int8[0:4]]
|
|
NL80211_MESHCONF_HWMP_RANN_INTERVAL nlattr[NL80211_MESHCONF_HWMP_RANN_INTERVAL, int16]
|
|
NL80211_MESHCONF_GATE_ANNOUNCEMENTS nlattr[NL80211_MESHCONF_GATE_ANNOUNCEMENTS, bool8]
|
|
NL80211_MESHCONF_FORWARDING nlattr[NL80211_MESHCONF_FORWARDING, bool8]
|
|
NL80211_MESHCONF_RSSI_THRESHOLD nlattr[NL80211_MESHCONF_RSSI_THRESHOLD, int32[-255:0]]
|
|
NL80211_MESHCONF_HT_OPMODE nlattr[NL80211_MESHCONF_HT_OPMODE, flags[ieee80211_op_mode, int16]]
|
|
NL80211_MESHCONF_HWMP_PATH_TO_ROOT_TIMEOUT nlattr[NL80211_MESHCONF_HWMP_PATH_TO_ROOT_TIMEOUT, int32]
|
|
NL80211_MESHCONF_HWMP_ROOT_INTERVAL nlattr[NL80211_MESHCONF_HWMP_ROOT_INTERVAL, int16]
|
|
NL80211_MESHCONF_HWMP_CONFIRMATION_INTERVAL nlattr[NL80211_MESHCONF_HWMP_CONFIRMATION_INTERVAL, int16]
|
|
NL80211_MESHCONF_POWER_MODE nlattr[NL80211_MESHCONF_POWER_MODE, int32[NL80211_MESH_POWER_ACTIVE:NL80211_MESH_POWER_MAX]]
|
|
NL80211_MESHCONF_AWAKE_WINDOW nlattr[NL80211_MESHCONF_AWAKE_WINDOW, int16]
|
|
NL80211_MESHCONF_PLINK_TIMEOUT nlattr[NL80211_MESHCONF_PLINK_TIMEOUT, int32]
|
|
NL80211_MESHCONF_CONNECTED_TO_GATE nlattr[NL80211_MESHCONF_CONNECTED_TO_GATE, bool8]
|
|
] [varlen]
|
|
|
|
ieee80211_op_mode = IEEE80211_HT_OP_MODE_PROTECTION, IEEE80211_HT_OP_MODE_NON_GF_STA_PRSNT, IEEE80211_HT_OP_MODE_NON_HT_STA_PRSNT
|
|
|
|
nl80211_mesh_setup_params_policy [
|
|
NL80211_MESH_SETUP_ENABLE_VENDOR_SYNC nlattr[NL80211_MESH_SETUP_ENABLE_VENDOR_SYNC, bool8]
|
|
NL80211_MESH_SETUP_ENABLE_VENDOR_PATH_SEL nlattr[NL80211_MESH_SETUP_ENABLE_VENDOR_PATH_SEL, bool8]
|
|
NL80211_MESH_SETUP_ENABLE_VENDOR_METRIC nlattr[NL80211_MESH_SETUP_ENABLE_VENDOR_METRIC, bool8]
|
|
NL80211_MESH_SETUP_USERSPACE_AUTH nlattr[NL80211_MESH_SETUP_USERSPACE_AUTH, void]
|
|
NL80211_MESH_SETUP_AUTH_PROTOCOL nlattr[NL80211_MESH_SETUP_AUTH_PROTOCOL, int8]
|
|
NL80211_MESH_SETUP_USERSPACE_MPM nlattr[NL80211_MESH_SETUP_USERSPACE_MPM, void]
|
|
NL80211_MESH_SETUP_IE nlattr[NL80211_MESH_SETUP_IE, array[int8]]
|
|
NL80211_MESH_SETUP_USERSPACE_AMPE nlattr[NL80211_MESH_SETUP_USERSPACE_AMPE, void]
|
|
] [varlen]
|
|
|
|
nl80211_policy_scan [
|
|
NL80211_ATTR_WIPHY nlattr[NL80211_ATTR_WIPHY, nl80211_whipy]
|
|
NL80211_ATTR_IFINDEX nlattr[NL80211_ATTR_IFINDEX, ifindex]
|
|
NL80211_ATTR_WDEV nlattr[NL80211_ATTR_WDEV, nl80211_wdev]
|
|
NL80211_ATTR_MAC nlattr[NL80211_ATTR_MAC, mac_addr]
|
|
NL80211_ATTR_IE nlattr[NL80211_ATTR_IE, array[int8, 0:IEEE80211_MAX_DATA_LEN]]
|
|
NL80211_ATTR_SCAN_FREQUENCIES nlnest[NL80211_ATTR_SCAN_FREQUENCIES, array[nlattr[0, int32]]]
|
|
NL80211_ATTR_SCAN_SSIDS nlnest[NL80211_ATTR_SCAN_SSIDS, array[nlattr[0, array[int8[0:IEEE80211_MAX_SSID_LEN]]]]]
|
|
NL80211_ATTR_SCHED_SCAN_INTERVAL nlattr[NL80211_ATTR_SCHED_SCAN_INTERVAL, int32]
|
|
NL80211_ATTR_BG_SCAN_PERIOD nlattr[NL80211_ATTR_BG_SCAN_PERIOD, int16]
|
|
NL80211_ATTR_SCHED_SCAN_DELAY nlattr[NL80211_ATTR_SCHED_SCAN_DELAY, int32]
|
|
NL80211_ATTR_SCHED_SCAN_RELATIVE_RSSI nlattr[NL80211_ATTR_SCHED_SCAN_RELATIVE_RSSI, int8]
|
|
NL80211_ATTR_MEASUREMENT_DURATION nlattr[NL80211_ATTR_MEASUREMENT_DURATION, int16]
|
|
NL80211_ATTR_MEASUREMENT_DURATION_MANDATORY nlattr[NL80211_ATTR_MEASUREMENT_DURATION_MANDATORY, void]
|
|
NL80211_ATTR_SCHED_SCAN_MULTI nlattr[NL80211_ATTR_SCHED_SCAN_MULTI, void]
|
|
NL80211_ATTR_TX_NO_CCK_RATE nlattr[NL80211_ATTR_TX_NO_CCK_RATE, void]
|
|
NL80211_ATTR_BSSID nlattr[NL80211_ATTR_BSSID, mac_addr]
|
|
NL80211_ATTR_SCHED_SCAN_RSSI_ADJUST nlattr[NL80211_ATTR_SCHED_SCAN_RSSI_ADJUST, nl80211_bss_select_rssi_adjust]
|
|
NL80211_ATTR_SCAN_SUPP_RATES nlnest[NL80211_ATTR_SCAN_SUPP_RATES, array[nl80211_rates_policy]]
|
|
NL80211_ATTR_SCHED_SCAN_MATCH nlnest[NL80211_ATTR_SCHED_SCAN_MATCH, array[nl80211_match_policy]]
|
|
] [varlen]
|
|
|
|
nl80211_bss_select_rssi_adjust {
|
|
band int8
|
|
delta int8
|
|
} [packed]
|
|
|
|
nl80211_rates_policy [
|
|
NL80211_BAND_2GHZ nlattr[NL80211_BAND_2GHZ, array[int8]]
|
|
NL80211_BAND_5GHZ nlattr[NL80211_BAND_5GHZ, array[int8]]
|
|
NL80211_BAND_60GHZ nlattr[NL80211_BAND_60GHZ, array[int8]]
|
|
NL80211_BAND_6GHZ nlattr[NL80211_BAND_6GHZ, array[int8]]
|
|
] [varlen]
|
|
|
|
nl80211_match_policy [
|
|
NL80211_SCHED_SCAN_MATCH_ATTR_SSID nlattr[NL80211_SCHED_SCAN_MATCH_ATTR_SSID, array[int8, 0:IEEE80211_MAX_SSID_LEN]]
|
|
NL80211_SCHED_SCAN_MATCH_ATTR_BSSID nlattr[NL80211_SCHED_SCAN_MATCH_ATTR_BSSID, mac_addr]
|
|
NL80211_SCHED_SCAN_MATCH_ATTR_RSSI nlattr[NL80211_SCHED_SCAN_MATCH_ATTR_RSSI, int32]
|
|
NL80211_SCHED_SCAN_MATCH_PER_BAND_RSSI nlnest[NL80211_SCHED_SCAN_MATCH_PER_BAND_RSSI, array[nl80211_match_band_rssi_policy]]
|
|
] [varlen]
|
|
|
|
nl80211_match_band_rssi_policy [
|
|
NL80211_BAND_2GHZ nlattr[NL80211_BAND_2GHZ, int32]
|
|
NL80211_BAND_5GHZ nlattr[NL80211_BAND_5GHZ, int32]
|
|
NL80211_BAND_6GHZ nlattr[NL80211_BAND_6GHZ, int32]
|
|
NL80211_BAND_60GHZ nlattr[NL80211_BAND_60GHZ, int32]
|
|
] [varlen]
|