Lines Matching +full:not +full:- +full:used
6 * Copyright 2006-2010 Johannes Berg <johannes@sipsolutions.net>
13 * Copyright 2015-2017 Intel Deutschland GmbH
14 * Copyright (C) 2018-2025 Intel Corporation
32 * be careful not to break things - i.e. don't move anything around or so
74 * - a setup station entry is added, not yet authorized, without any rate
76 * - when the TDLS setup is done, a single NL80211_CMD_SET_STATION is valid
79 * - %NL80211_TDLS_ENABLE_LINK is then used
80 * - after this, the only valid operation is to remove it by tearing down
91 * that are not being handled by the kernel. This includes, for example,
95 * Frame registration is done on a per-interface basis and registrations
99 * that userspace registers for will not be returned as unhandled by the
112 * will not be serviced, i.e. they will not receive any frames.
137 * software, like the AP-VLAN type in mac80211 for example, there's
139 * are only restricted by some semantic restrictions (e.g. AP-VLAN
160 * packets does not do anything with these packets. Therefore the
190 * not support setting the temporal keys through %NL80211_CMD_NEW_KEY.
198 * not present.
206 * not support setting the temporal keys through %NL80211_CMD_NEW_KEY.
208 * For 802.1X the PMK or PMK-R0 are set by providing %NL80211_ATTR_PMK
223 * %NL80211_ATTR_FILS_ERP_USERNAME - used to construct keyname_nai
224 * %NL80211_ATTR_FILS_ERP_REALM - used to construct keyname_nai
225 * %NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM - used to construct erp message
226 * %NL80211_ATTR_FILS_ERP_RRK - used to generate the rIK and rMSK
227 * rIK should be used to generate an authentication tag on the ERP message and
228 * rMSK should be used to derive a PMKSA.
229 * rIK, rMSK should be generated and keyname_nai, sequence number should be used
235 * %NL80211_ATTR_FILS_KEK - used for key renewal
236 * %NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM - used in further EAP-RP exchanges
237 * %NL80211_ATTR_PMKID - used to identify the PMKSA used/generated
238 * %Nl80211_ATTR_PMK - used to update PMKSA cache in userspace
239 * The PMKSA can be maintained in userspace persistently so that it can be used
246 * on FILS cache identifier. Additionally %NL80211_ATTR_PMK is used with
255 * support offloading SAE authentication for WPA3-Personal networks in station
269 * single netdev that uses VLAN tagged frames and separate VLAN-specific netdevs
271 * case. Frames received from stations that are not assigned to any VLAN are
293 * any peers that have peer-specific configuration for the TID by default; if
294 * the %NL80211_TID_CONFIG_ATTR_OVERRIDE flag is set, peer-specific values
318 * %NL80211_ATTR_MAC - STA MAC address, used for storing FILS AAD per STA
319 * %NL80211_ATTR_FILS_KEK - Used for encryption or decryption
320 * %NL80211_ATTR_FILS_NONCES - Used for encryption or decryption
327 * DOC: Multi-Link Operation
329 * In Multi-Link Operation, a connection between two MLDs utilizes multiple
347 * enum nl80211_commands - supported nl80211 commands
354 * %NL80211_ATTR_IFINDEX; can be used to set %NL80211_ATTR_WIPHY_NAME,
357 * channel width; this is used for setting monitor mode channel),
385 * and if this command is used for the transmitting interface, then all
386 * the non-transmitting interfaces are deleted as well.
406 * @NL80211_CMD_GET_BEACON: (not used)
414 * do not change are used, these include %NL80211_ATTR_BEACON_INTERVAL,
436 * by %NL80211_ATTR_IFINDEX. For MLD station, MLD address is used in
438 * %NL80211_ATTR_REASON_CODE can optionally be used to specify which type
441 * frame). %NL80211_ATTR_MLO_LINK_ID can be used optionally to remove
462 * regulatory_hint() API. Even when a private regdomain is used the channel
467 * If a wiphy is self-managed (%NL80211_ATTR_WIPHY_SELF_MANAGED_REG), then
469 * core is not used to help with compliance in this case.
481 * to the specified ISO/IEC 3166-1 alpha2 country code. The core will
498 * point to avoid re-using existing command number. The functionality this
506 * %NL80211_ATTR_TX_NO_CCK_RATE is used to decide whether to send the
507 * probe requests at CCK rate or not. %NL80211_ATTR_BSSID can be used to
508 * specify a BSSID to scan for; if not included, the wildcard BSSID will
509 * be used.
518 * not specified and only %NL80211_ATTR_SCHED_SCAN_INTERVAL is specified,
521 * i.e. NL80211_ATTR_SCHED_SCAN_INTERVAL must not be passed if
524 * plans are canceled (including scan plans that did not start yet).
526 * are passed, they are used in the probe requests. For
530 * if passed, define which channels should be scanned; if not
532 * are used. Extra IEs can also be passed from the userspace by
537 * %NL80211_ATTR_SCHED_SCAN_MULTI to indicate user-space support for it.
538 * @NL80211_CMD_STOP_SCHED_SCAN: stop a scheduled scan. Returns -ENOENT if
539 * scheduled scan is not running. The caller may assume that as soon
546 * does not support starting an association or a normal scan while running
558 * (PMK is used for PTKSA derivation in case of FILS shared key offload) or
584 * where we would not have been able to do either before. As an example
587 * doing a passive scan on the 5 GHz band you find an AP there (if not
590 * never be used for channels 1-11 on the 2 GHz band as they are always
599 * This command is used both as a command (request to authenticate) and
602 * When used as a command, %NL80211_ATTR_IFINDEX is used to identify the
603 * interface. %NL80211_ATTR_MAC is used to specify PeerSTAAddress (and
604 * BSSID in case of station mode). %NL80211_ATTR_SSID is used to specify
607 * %NL80211_ATTR_WIPHY_FREQ_OFFSET is used to specify the frequency of the
608 * channel in MHz. %NL80211_ATTR_AUTH_TYPE is used to specify the
609 * authentication type. %NL80211_ATTR_IE is used to define IEs
612 * When used as an event, this reports reception of an Authentication
615 * state. This is similar to MLME-AUTHENTICATE.confirm primitive in the
618 * (including both the header and frame body, but not FCS). This event is
619 * also used to indicate if the authentication attempt timed out. In that
625 * (similar to MLME-ASSOCIATE.request, MLME-REASSOCIATE.request,
626 * MLME-ASSOCIATE.confirm or MLME-REASSOCIATE.confirm primitives). The
627 * %NL80211_ATTR_PREV_BSSID attribute is used to specify whether the
628 * request is for the initial association to an ESS (that attribute not
633 * MLME-DEAUTHENTICATION.request and MLME-DEAUTHENTICATE.indication
637 * MLME-DISASSOCIATE.request and MLME-DISASSOCIATE.indication primitives).
645 * event matches with MLME-MICHAELMICFAILURE.indication() primitive
647 * @NL80211_CMD_JOIN_IBSS: Join a new IBSS -- given at least an SSID and a
653 * given in the %NL80211_ATTR_BEACON_INTERVAL attribute, which if not
655 * @NL80211_CMD_LEAVE_IBSS: Leave the IBSS -- no special arguments, the IBSS is
678 * ignore this recommendation if the indicated BSS is not ideal. Only one
679 * set of BSSID,frequency parameters is used (i.e., either the enforcing
682 * Driver shall not modify the IEs specified through %NL80211_ATTR_IE if
690 * %NL80211_ATTR_PREV_BSSID can be used to request a reassociation within
695 * if not specified default background scan configuration
696 * in driver is used and if period value is 0, bg scan will be disabled.
697 * This attribute is ignored if driver does not support roam scan.
701 * non-zero = failure). If %NL80211_ATTR_TIMED_OUT is included in the
702 * event, the connection attempt failed due to not being able to initiate
703 * authentication/association or not receiving a response from the AP.
704 * Non-zero %NL80211_ATTR_STATUS_CODE value is indicated in that case as
713 * @NL80211_CMD_DISCONNECT: drop a given connection; also used to notify
716 * %NL80211_ATTR_REASON_CODE attributes are used.
722 * channel for the specified amount of time. This can be used to do
723 * off-channel operations like transmit a Public Action frame and wait for
725 * %NL80211_ATTR_IFINDEX is used to specify which interface (and thus
726 * radio) is used. %NL80211_ATTR_WIPHY_FREQ is used to specify the
728 * %NL80211_ATTR_DURATION is used to specify the duration in milliseconds
729 * to remain on the channel. This command is also used as an event to
735 * the cookie is also used to cancel the request.
736 * @NL80211_CMD_CANCEL_REMAIN_ON_CHANNEL: This command can be used to cancel a
737 * pending remain-on-channel duration if the desired operation has been
739 * %NL80211_ATTR_WIPHY or %NL80211_ATTR_IFINDEX is used to specify the
742 * This command is also used as an event to notify when a requested
743 * remain-on-channel duration has expired.
745 * @NL80211_CMD_SET_TX_BITRATE_MASK: Set the mask of rates to be used in TX
746 * rate selection. %NL80211_ATTR_IFINDEX is used to specify the interface
752 * backward compatibility reasons, if not given assumes action frames)
765 * command is used both as a request to transmit a management frame and
766 * as an event indicating reception of a frame that was not processed in
768 * user space application). %NL80211_ATTR_FRAME is used to specify the
769 * frame contents (including header). %NL80211_ATTR_WIPHY_FREQ is used
771 * received. If this channel is not the current channel (remain-on-channel
777 * %NL80211_ATTR_TX_NO_CCK_RATE is used to decide whether to send the
778 * management frames at CCK rate or not in 2GHz band.
781 * is used during CSA period.
789 * @NL80211_CMD_FRAME_WAIT_CANCEL: When an off-channel TX was requested, this
790 * command may be used with the corresponding cookie to cancel the wait
792 * also sent as an event whenever the driver has completed the off-channel
809 * is used to configure connection quality monitoring notification trigger
812 * command is used as an event to indicate the that a trigger level was
818 * with which it switches channels is implementation-defined.
822 * precedence when they are used.
834 * to not send destination unreachable messages in such cases.
838 * If %NL80211_ATTR_MULTICAST_TO_UNICAST_ENABLED is not present with this
843 * @NL80211_CMD_LEAVE_MESH: Leave the mesh network -- no special arguments, the
847 * notification. This event is used to indicate that an unprotected
850 * notification. This event is used to indicate that an unprotected
865 * @NL80211_CMD_GET_WOWLAN: get Wake-on-Wireless-LAN (WoWLAN) settings.
866 * @NL80211_CMD_SET_WOWLAN: set Wake-on-Wireless-LAN (WoWLAN) settings.
872 * The @NL80211_CMD_SET_WOWLAN command can also be used as a notification
875 * for the wakeup, if it was caused by wireless. If it is not present
879 * @NL80211_CMD_SET_REKEY_OFFLOAD: This command is used give the driver
881 * feature is typically used during WoWLAN. The configuration data
883 * contains the data in sub-attributes). After rekeying happened,
887 * @NL80211_CMD_PMKSA_CANDIDATE: This is used as an event to inform userspace
890 * @NL80211_CMD_TDLS_OPER: Perform a high-level TDLS command (e.g. link setup).
891 * In addition, this can be used as an event to request userspace to take
895 * %NL80211_ATTR_REASON_CODE the reason code to be used (only with
899 * sent. Public Action codes (802.11-2012 8.1.5.1) will be sent as
900 * 802.11 management frames, while TDLS action codes (802.11-2012
906 * @NL80211_CMD_UNEXPECTED_FRAME: Used by an application controlling an AP
909 * frames. Also used as the event sent by the kernel when such a frame
913 * If used as the command it must have an interface index and you can
919 * and wasn't already in a 4-addr VLAN. The event will be sent similarly
924 * acknowledged. This is used to allow timing out inactive clients. Uses
926 * direct reply with an %NL80211_ATTR_COOKIE that is later used to match
942 * sent when a remotely-initiated switch (e.g., when a STA receives a CSA
957 * P2P Device can be used for P2P operations, e.g. remain-on-channel and
962 * @NL80211_CMD_CONN_FAILED: connection request to an AP failed; used to
965 * is used for this.
967 * @NL80211_CMD_SET_MCAST_RATE: Change the rate used to send multicast frames
971 * This is to be used with the drivers advertising the support of MAC
975 * is not already done. The new list will replace any existing list. Driver
977 * command is used in AP/P2P GO mode. Driver has to make sure to clear its
983 * this event. This command is also used to notify userspace about radars
985 * %NL80211_ATTR_RADAR_EVENT is used to inform about the type of the
992 * @NL80211_CMD_UPDATE_FT_IES: Pass down the most up-to-date Fast Transition
997 * with the relevant Information Elements. This event is used to report
1000 * @NL80211_CMD_CRIT_PROTOCOL_START: Indicates user-space will start running
1011 * new channel information (Channel Switch Announcement - CSA)
1020 * @NL80211_CMD_VENDOR: Vendor-specified command/event. The command is specified
1021 * by the %NL80211_ATTR_VENDOR_ID attribute and a sub-command in
1025 * used in the wiphy data as a nested attribute containing descriptions
1031 * that attribute is not included, QoS mapping is disabled. Since this
1041 * If the admitted time attribute is not added then the request just checks
1057 * @NL80211_CMD_LEAVE_OCB: Leave the OCB network -- no special arguments, the
1060 * @NL80211_CMD_TDLS_CHANNEL_SWITCH: Start channel-switching with a TDLS peer,
1065 * The driver is responsible for continually initiating channel-switching
1068 * @NL80211_CMD_TDLS_CANCEL_CHANNEL_SWITCH: Stop channel-switching with a TDLS
1072 * @NL80211_CMD_WIPHY_REG_CHANGE: Similar to %NL80211_CMD_REG_CHANGE, but used
1073 * as an event to indicate changes for devices with wiphy-specific regdom
1076 * @NL80211_CMD_ABORT_SCAN: Stop an ongoing scan. Returns -ENOENT if a scan is
1077 * not running. The driver indicates the status of the scan through
1087 * omitted or set to 0, it means don't-care and the device will
1098 * Since instance ID's can be re-used, this cookie is the right
1103 * This cookie may be used in NAN events even before the command
1108 * This command is also used as a notification sent when a NAN function is
1116 * current configuration is not changed. If it is present but
1117 * set to zero, the configuration is changed to don't-care
1130 * does not result in a change for the current association. Currently,
1131 * only the %NL80211_ATTR_IE data is used and updated with this command.
1133 * @NL80211_CMD_SET_PMK: For offloaded 4-Way handshake, set the PMK or PMK-R0
1136 * PMK-R0, otherwise it specifies the PMK.
1137 * @NL80211_CMD_DEL_PMK: For offloaded 4-Way handshake, delete the previously
1141 * open for regular data traffic. For STA/P2P-client, this event is sent
1142 * with AP MAC address and for AP/P2P-GO, the event carries the STA/P2P-
1145 * STA/P2P-client after successful 4-way HS or after 802.1X FT following
1146 * NL80211_CMD_CONNECT or NL80211_CMD_ROAM. Drivers using AP/P2P-GO 4-way
1148 * 4-way handshake with the peer (STA/P2P-client).
1150 * and RX notification. This command is used both as a request to transmit
1152 * has been received. %NL80211_ATTR_FRAME is used to specify the
1157 * to be an MLD, this will be used as a hint to select the link to transmit
1158 * the frame on. If the destination is not an MLD, this will select both
1161 * When used as an event indication %NL80211_ATTR_CONTROL_PORT_ETHERTYPE,
1169 * drivers that do not define separate commands for authentication and
1190 * MLO during the authentication offload or not.
1230 * Depending on driver support it may or may not be possible to start
1232 * @NL80211_CMD_PEER_MEASUREMENT_RESULT: This command number is used for the
1250 * frames to other mesh points which are not currently selected as a
1254 * properly steered to the selected node for testing, and not by the
1256 * so that the rate control (often embedded in firmware) is used for
1259 * Here attribute %NL80211_ATTR_MAC is used to specify connected mesh
1260 * peer MAC address and %NL80211_ATTR_FRAME is used to specify the frame
1267 * frame. This event is used to indicate that a received Beacon frame was
1268 * dropped because it did not include a valid MME MIC while beacon
1278 * passed using %NL80211_ATTR_SAR_SPEC. %NL80211_ATTR_WIPHY is used to
1284 * @NL80211_CMD_COLOR_CHANGE_REQUEST: This command is used to indicate that
1296 * @NL80211_CMD_SET_FILS_AAD: Set FILS AAD data to the driver using -
1297 * &NL80211_ATTR_MAC - for STA MAC address
1298 * &NL80211_ATTR_FILS_KEK - for KEK
1299 * &NL80211_ATTR_FILS_NONCES - for FILS Nonces
1308 * %NL80211_ATTR_MLO_LINK_ID attribute is used for the new link.
1311 * in preparation for e.g. roaming to a regular (non-MLO) AP.
1322 * address). If %NL80211_ATTR_HW_TIMESTAMP_ENABLED is not included, disable
1329 * Multi-Link reconfiguration. %NL80211_ATTR_MLO_LINKS is used to provide
1333 * non-AP MLD station. The %NL80211_ATTR_MLO_TTLM_DLINK and
1334 * %NL80211_ATTR_MLO_TTLM_ULINK attributes are used to specify the
1337 * @NL80211_CMD_ASSOC_MLO_RECONF: For a non-AP MLD station, request to
1340 * used as an event to notify userspace about the added links information.
1342 * %NL80211_CMD_LINKS_REMOVED command is used. This command is also used to
1344 * case of AP-initiated link recommendation requests, received via
1348 * @NL80211_CMD_EPCS_CFG: EPCS configuration for a station. Used by userland to
1349 * control EPCS configuration. Used to notify userland on the current state
1352 * @NL80211_CMD_NAN_NEXT_DW_NOTIFICATION: This command is used to notify
1355 * %NL80211_ATTR_WIPHY_FREQ is used to indicate the frequency of the next
1360 * @NL80211_CMD_NAN_CLUSTER_JOINED: This command is used to notify
1364 * @NL80211_CMD_MAX: highest used command number
1411 NL80211_CMD_SET_MGMT_EXTRA_IE /* reserved; not used */,
1629 /* used to define NL80211_CMD_MAX below */
1631 NL80211_CMD_MAX = __NL80211_CMD_AFTER_LAST - 1
1649 /* source-level API compatibility */
1655 * enum nl80211_attrs - nl80211 netlink attributes
1661 * @NL80211_ATTR_WIPHY_NAME: wiphy name (used for renaming)
1672 * channel, used for anything but 20 MHz bandwidth. In S1G this is the
1675 * channel, used only for 80+80 MHz bandwidth
1677 * if HT20 or HT40 are to be used (i.e., HT disabled if not included):
1678 * NL80211_CHAN_NO_HT = HT not allowed (i.e., same as not including
1692 * fragmentation with (u32)-1; dot11FragmentationThreshold; u32
1695 * 0..65536, disable with (u32)-1; dot11RTSThreshold; u32
1703 * @NL80211_ATTR_WDEV: wireless device identifier, used for pseudo-devices
1711 * @NL80211_ATTR_KEY_IDX: key ID (u8, 0-3)
1720 * other commands, indicates which pairwise cipher suites are used
1722 * other commands, indicates which group cipher suite is used
1746 * @NL80211_ATTR_MESH_ID: mesh id (1-32 bytes).
1757 * @NL80211_ATTR_REG_ALPHA2: an ISO-3166-alpha2 country code for which the
1759 * For example, 'CR', for Costa Rica. This attribute is used by the kernel
1761 * also be used by userspace to query the kernel for the currently set
1762 * regulatory domain. We chose an alpha2 as that is also used by the
1763 * IEEE-802.11 country information element to identify a country.
1779 * association request when used with NL80211_CMD_NEW_STATION)
1788 * @NL80211_ATTR_IE: Information element(s) data (used, e.g., with
1800 * used with @NL80211_ATTR_SCHED_SCAN_MATCH, a wiphy attribute.
1804 * scanning and include a zero-length SSID (wildcard) for wildcard scan
1817 * and body, but not FCS; used, e.g., with NL80211_CMD_AUTHENTICATE and
1842 * @NL80211_ATTR_FREQ_FIXED: a flag indicating the IBSS should not try to look
1846 * is used, e.g., with %NL80211_CMD_AUTHENTICATE event
1849 * used for the association (&enum nl80211_mfp, represented as a u32);
1850 * this attribute can be used with %NL80211_CMD_ASSOCIATE and
1851 * %NL80211_CMD_CONNECT requests. %NL80211_MFP_OPTIONAL is not allowed for
1853 * must have decided whether to use management frame protection or not.
1855 * let the driver (or the firmware) decide whether to use MFP or not.
1866 * @NL80211_ATTR_CONTROL_PORT_ETHERTYPE: A 16-bit value indicating the
1867 * ethertype that will be used for key negotiation. It can be
1868 * specified with the associate and connect commands. If it is not
1870 * attribute is also used as a flag in the wiphy information to
1874 * ethertype frames used for key negotiation must not be encrypted.
1879 * control port frames directly to the network interface is used. If the
1882 * to be used then userspace must also use the %NL80211_ATTR_SOCKET_OWNER
1883 * flag. When used with %NL80211_ATTR_CONTROL_PORT_NO_PREAUTH, pre-auth
1884 * frames are not forwarded over the control port.
1887 * We recommend using nested, driver-specific attributes within this.
1890 * event was due to the AP disconnecting the station, and not due to
1894 * @NL80211_ATTR_PRIVACY: Flag attribute, used with connect(), indicating
1895 * that protected APs should be used. This is also used with NEW_BEACON to
1898 * @NL80211_ATTR_WPA_VERSIONS: Used with CONNECT, ASSOCIATE, and NEW_BEACON to
1901 * @NL80211_ATTR_AKM_SUITES: Used with CONNECT, ASSOCIATE, and NEW_BEACON to
1915 * @NL80211_ATTR_PREV_BSSID: previous BSSID, to be used in ASSOCIATE and CONNECT
1919 * used for the initial association to an ESS.
1922 * %NL80211_KEY_* sub-attributes
1925 * with %NL80211_KEY_* sub-attributes
1930 * @NL80211_ATTR_GENERATION: Used to indicate consistent snapshots for
1938 * @NL80211_ATTR_4ADDR: Use 4-address frames on a virtual interface
1951 * remain-on-channel operation, in milliseconds, u32.
1953 * @NL80211_ATTR_COOKIE: Generic 64-bit cookie to identify objects.
1957 * enum nl80211_band value is used as the index (nla_type() of the nested
1958 * data. If a band is not included, it will be configured to allow all
1960 * is used with %NL80211_CMD_SET_TX_BITRATE_MASK and with starting AP,
1961 * and joining mesh networks (not IBSS yet). In the later case, it must
1962 * specify just a single bitrate, which is to be used for the beacon.
1971 * at least one byte, currently used with @NL80211_CMD_REGISTER_FRAME.
1989 * nested attribute with %NL80211_ATTR_CQM_* sub-attributes.
1993 * invoking actual management frame exchange. This can be used with
1997 * @NL80211_ATTR_AP_ISOLATE: (AP mode) Do not forward traffic between stations
2003 * This is used in association with @NL80211_ATTR_WIPHY_TX_POWER_SETTING
2004 * for non-automatic settings.
2007 * means support for per-station GTKs.
2010 * This can be used to mask out antennas which are not attached or should
2011 * not be used for transmitting. If an antenna is not selected in this
2012 * bitmap the hardware is not allowed to transmit on this antenna.
2018 * a chain has diversity antennas whether diversity should be used or not.
2021 * Non-802.11n drivers can derive whether to use diversity or not.
2023 * support by returning -EINVAL.
2026 * This can be used to mask out antennas which are not attached or should
2027 * not be used for receiving. If an antenna is not selected in this bitmap
2028 * the hardware should not be configured to receive on this antenna.
2042 * flag isn't set, the frame will be rejected. This is also used as an
2059 * &enum nl80211_plink_state. Used when userspace is driving the peer link
2065 * @NL80211_ATTR_WOWLAN_TRIGGERS: used by %NL80211_CMD_SET_WOWLAN to
2067 * used by %NL80211_CMD_GET_WOWLAN to get the currently enabled WoWLAN
2076 * pass-thru filter rules.
2078 * set. Since not every hardware supports matching all types of
2082 * Thus, the implementation is somewhat hardware-dependent, but
2084 * needs to handle all the non-filtered results anyway.
2088 * will never let it go through), -EINVAL may be returned.
2116 * This is used with %NL80211_CMD_NEW_BEACON and %NL80211_CMD_SET_BEACON to
2120 * Response frames. This is used with %NL80211_CMD_NEW_BEACON and
2136 * @NL80211_ATTR_TX_NO_CCK_RATE: Indicates whether to use CCK rate or not
2140 * This attribute is used with %NL80211_CMD_TRIGGER_SCAN and
2146 * @NL80211_ATTR_TDLS_DIALOG_TOKEN: Non-zero token for uniquely identifying a
2155 * used for asking the driver to perform a TDLS operation.
2162 * @NL80211_ATTR_DONT_WAIT_FOR_ACK: Used with %NL80211_CMD_FRAME, this tells
2163 * the driver to not wait for an acknowledgement. Note that due to this,
2164 * it will also not give a status callback nor return a cookie. This is
2170 * requests while operating in AP-mode.
2175 * probe-response frame. The DA field in the 802.11 header is zero-ed out,
2193 * MCS rates, MAX-AMSDU, HT-20-40 and HT_CAP_SGI_40
2213 * used by the drivers which has MLME in firmware and does not have support
2215 * the list. This needs to be used when the driver advertises the
2218 * @NL80211_ATTR_RX_SIGNAL_DBM: signal strength in dBm (as a 32-bit int);
2228 * was used to provide the hint. For the different types of
2236 * This contains the authentication frame body (non-IE and IE data),
2238 * Authentication transaction sequence number field. It is used with
2247 * association request when used with NL80211_CMD_NEW_STATION)
2251 * @NL80211_ATTR_P2P_CTWINDOW: P2P GO Client Traffic Window (u8), used with
2253 * @NL80211_ATTR_P2P_OPPPS: P2P GO opportunistic PS (u8), used with the
2255 * if not given in START_AP 0 is assumed, if not given in SET_BSS
2258 * @NL80211_ATTR_LOCAL_MESH_POWER_MODE: local mesh STA link-specific power mode
2264 * @NL80211_ATTR_MAC_ADDRS: Array of nested MAC addresses, used for
2276 * 802.11-2012 8.4.2.29 for more information.
2281 * the driver, e.g., to enable TDLS power save (PU-APSD).
2285 * and PU-APSD.
2306 * allowed to be used with the first @NL80211_CMD_SET_STATION command to
2346 * Notification Element based on association request when used with
2351 * @NL80211_ATTR_VENDOR_ID: The vendor ID, either a 24-bit OUI or, if
2352 * %NL80211_VENDOR_ID_IS_LINUX is set, a special Linux ID (not used yet)
2353 * @NL80211_ATTR_VENDOR_SUBCMD: vendor sub-command
2355 * attribute is also used for vendor command feature advertisement
2356 * @NL80211_ATTR_VENDOR_EVENTS: used for event list advertising in the wiphy
2361 * in IEEE Std 802.11-2012, 8.4.2.97.
2368 * Since drivers may not have a fixed limit on the maximum number (e.g.,
2375 * @NL80211_ATTR_MAX_CSA_COUNTERS: U8 attribute used to advertise the maximum
2410 * used with %NL80211_CMD_ASSOCIATE and %NL80211_CMD_CONNECT requests.
2417 * If this flag is used, driver must add the Power Capabilities IE to the
2421 * @NL80211_ATTR_WIPHY_DYN_ACK: flag attribute used to enable ACK timeout
2440 * is self-managing its regulatory information and any regulatory domain
2441 * obtained from it is coming from the device's wiphy and not the global
2447 * least-significant bit of the first byte in the array, ie. bit index 0
2461 * net-detect scan is started, counting from the moment the
2476 * thus it must not specify the number of iterations, only the interval
2484 * BSS selection feature. When used with %NL80211_CMD_GET_WIPHY it contains
2486 * BSS selection behaviours are supported. When used with %NL80211_CMD_CONNECT
2487 * it contains the behaviour-specific attribute containing the parameters for
2491 * or not. u8, one of the values of &enum nl80211_sta_p2p_ps_status
2493 * @NL80211_ATTR_PAD: attribute used for padding for 64-bit alignment
2498 * other interface-type specific capabilities per interface type. For MLO,
2502 * @NL80211_ATTR_MU_MIMO_GROUP_DATA: array of 24 bytes that defines a MU-MIMO
2507 * that group and 0 for not being a member.
2512 * This attribute is used only if all interfaces are in monitor mode.
2513 * Set this attribute in order to monitor packets using the given MU-MIMO
2517 * when using MU-MIMO air sniffer.
2524 * attribute must not be included).
2528 * %NL80211_ATTR_MEASUREMENT_DURATION_MANDATORY is not set, this is the
2529 * maximum measurement duration allowed. This attribute is used with
2530 * measurement requests. It can also be used with %NL80211_CMD_TRIGGER_SCAN
2531 * if the scan is used for beacon report radio measurement.
2534 * mandatory. If this flag is not set, the duration is the maximum duration
2538 * used to pull the stored data for mesh peer in power save state.
2540 * @NL80211_ATTR_NAN_MASTER_PREF: the master preference to be used by
2544 * should not be used during a normal device operation.
2548 * would be set. This attribute is used with
2550 * it is optional. If no bands are set, it means don't-care and
2555 * @NL80211_ATTR_NAN_MATCH: used to report a match. This is a nested attribute.
2563 * @NL80211_ATTR_MULTICAST_TO_UNICAST_ENABLED: Indicates whether or not multicast
2567 * used in various commands/events for specifying the BSSID.
2584 * u32 attribute with an &enum nl80211_timeout_reason value. This is used,
2587 * @NL80211_ATTR_FILS_ERP_USERNAME: EAP Re-authentication Protocol (ERP)
2588 * username part of NAI used to refer keys rRK and rIK. This is used with
2591 * @NL80211_ATTR_FILS_ERP_REALM: EAP Re-authentication Protocol (ERP) realm part
2592 * of NAI specifying the domain name of the ER server. This is used with
2595 * @NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM: Unsigned 16-bit ERP next sequence number
2596 * to use in ERP messages. This is used in generating the FILS wrapped data
2597 * for FILS authentication and is used with %NL80211_CMD_CONNECT.
2599 * @NL80211_ATTR_FILS_ERP_RRK: ERP re-authentication Root Key (rRK) for the
2601 * %NL80211_ATTR_FILS_ERP_REALM. This is used for generating rIK and rMSK
2602 * from successful FILS authentication and is used with
2605 * @NL80211_ATTR_FILS_CACHE_ID: A 2-octet identifier advertised by a FILS AP
2606 * identifying the scope of PMKSAs. This is used with
2609 * @NL80211_ATTR_PMK: attribute for passing PMK key material. Used with
2611 * For %NL80211_CMD_CONNECT and %NL80211_CMD_START_AP it is used to provide
2612 * PSK for offloading 4-way handshake for WPA/WPA2-PSK networks. For 802.1X
2613 * authentication it is used with %NL80211_CMD_SET_PMK. For offloaded FT
2614 * support this attribute specifies the PMK-R0 if NL80211_ATTR_PMKR0_NAME
2617 * @NL80211_ATTR_SCHED_SCAN_MULTI: flag attribute which user-space shall use to
2622 * @NL80211_ATTR_WANT_1X_4WAY_HS: flag attribute which user-space can include
2624 * wants to use the supported offload of the 4-way handshake.
2625 * @NL80211_ATTR_PMKR0_NAME: PMK-R0 Name for offloaded FT.
2630 * &enum nl80211_external_auth_action value). This is used with the
2633 * space supports external authentication. This attribute shall be used
2641 * u8 attribute. This is used with %NL80211_CMD_STA_OPMODE_CHANGED.
2653 * association request when used with NL80211_CMD_NEW_STATION). Can be set
2656 * @NL80211_ATTR_FTM_RESPONDER: nested attribute which user-space can include
2665 * if the attribute is not given no timeout is requested. Note that 0 is an
2671 * This is also used for capability advertisement in the wiphy information,
2672 * with the appropriate sub-attributes.
2681 * allows to set Tx power for a station. If this attribute is not included,
2682 * the default per-interface tx power setting will be overriding. Driver
2683 * should be picking up the lowest tx power, either tx power per-interface
2684 * or per-station.
2687 * is used with %NL80211_CMD_CONNECT to provide password for offloading
2688 * SAE authentication for WPA3-Personal networks.
2696 * channel(s) that are allowed to be used for EDMG transmissions.
2711 * %NL80211_ATTR_AKM_SUITES are default capabilities if AKM suites not
2715 * nested attribute with &enum nl80211_tid_config_attr sub-attributes;
2716 * on output (in wiphy attributes) it contains only the feature sub-
2723 * dot11RSNAConfigPMKReauthThreshold; 0 is not a valid value).
2755 * association request when used with NL80211_CMD_NEW_STATION).
2768 * association request when used with NL80211_CMD_NEW_STATION)
2770 * override mask. Used with NL80211_ATTR_S1G_CAPABILITY in
2774 * derivation in WPA3-Personal networks which are using SAE authentication.
2779 * used with %NL80211_CMD_SET_SAR_SPECS. The message contains fields
2783 * @NL80211_ATTR_RECONNECT_REQUESTED: flag attribute, used with deauth and
2800 * and enhanced multi-BSSID advertisements (EMA AP) to the userspace.
2807 * Optional for the non-transmitting interfaces.
2810 * available for radar/CAC detection on some hw. This chain can't be used
2818 * used with %NL80211_CMD_START_AP request.
2821 * association request when used with NL80211_CMD_NEW_STATION). Can be set
2824 * @NL80211_ATTR_MLO_LINK_ID: A (u8) link ID for use with MLO, to be used with
2827 * per-link information and a link ID.
2828 * @NL80211_ATTR_MLD_ADDR: An MLD address, used with various commands such as
2832 * connection. Used with %NL80211_CMD_CONNECT. If this attribute is not
2833 * included in NL80211_CMD_CONNECT drivers must not perform MLO connection.
2838 * attribute is not present userspace shall consider maximum number of AKM
2848 * When used with %NL80211_CMD_FRAME_TX_STATUS, indicates the frame TX
2849 * timestamp. When used with %NL80211_CMD_FRAME RX notification, indicates
2854 * When used with %NL80211_CMD_FRAME_TX_STATUS, indicates the ack RX
2855 * timestamp. When used with %NL80211_CMD_FRAME RX notification, indicates
2862 * indicates that the sub-channel is punctured. Higher 16 bits are
2867 * A value of 0xffff indicates setting for all peers (i.e. not specifying
2870 * be enabled or not (flag attribute).
2873 * reduced neighbor report (RNR) elements. This attribute can be used
2876 * elements such that each element excludes the non-transmitting
2887 * include BSSes that can only be used in restricted scenarios and/or
2888 * cannot be used at all.
2892 * mapping is as defined in section 9.4.2.314 (TID-To-Link Mapping element)
2896 * mapping is as defined in section 9.4.2.314 (TID-To-Link Mapping element)
2899 * @NL80211_ATTR_ASSOC_SPP_AMSDU: flag attribute used with
2900 * %NL80211_CMD_ASSOCIATE indicating the SPP A-MSDUs
2901 * are used on this connection
2915 * of supported selectors as defined by IEEE Std 802.11-2020 9.4.2.3 but
2917 * This can be used to provide a list of selectors that are implemented
2918 * by the supplicant. If not given, support for SAE_H2E is assumed.
2933 * of the radio in interest. Internally a value of -1 is used to
2934 * indicate that the radio id is not given in user-space. This means
2936 * a radio index provided in user-space, the attributes will be
2944 * the short beacon data, this is not required. It has a minimum value of
2948 * head and tail used to set or update the short beacon templates. When
2953 * @NL80211_ATTR_BSS_PARAM: nested attribute used with %NL80211_CMD_GET_WIPHY
2955 * also be used as flag attribute by user-space in %NL80211_CMD_SET_BSS to
2960 * extended NAN cluster configuration. This is used with
2965 * NAN cluster has been created. This is used with
2968 * This is used with %NL80211_CMD_GET_WIPHY to indicate the NAN
3548 NL80211_ATTR_MAX = __NL80211_ATTR_AFTER_LAST - 1
3551 /* source-level API compatibility */
3611 #define NL80211_SCAN_RSSI_THOLD_OFF -300
3616 * enum nl80211_iftype - (virtual) interface types
3623 * are a bit special in that they must always be tied to a pre-existing
3630 * @NL80211_IFTYPE_P2P_DEVICE: P2P device interface type, this is not a netdev
3636 * @NL80211_IFTYPE_NAN: NAN device interface type (not a netdev)
3640 * These values are used with the %NL80211_ATTR_IFTYPE
3661 NL80211_IFTYPE_MAX = NUM_NL80211_IFTYPES - 1
3665 * enum nl80211_sta_flags - station flags
3677 * @NL80211_STA_FLAG_TDLS_PEER: station is a TDLS peer -- this flag should
3678 * only be used in managed mode (even in the flags mask). Note that the
3682 * @NL80211_STA_FLAG_ASSOCIATED: station is associated; used with drivers
3685 * @NL80211_STA_FLAG_SPP_AMSDU: station supports SPP A-MSDUs
3702 NL80211_STA_FLAG_MAX = __NL80211_STA_FLAG_AFTER_LAST - 1
3706 * enum nl80211_sta_p2p_ps_status - station support of P2P PS
3722 * struct nl80211_sta_flag_update - station flags mask/set
3734 * enum nl80211_he_gi - HE guard interval
3746 * enum nl80211_he_ltf - HE long training field
3758 * enum nl80211_he_ru_alloc - HE RU allocation values
3759 * @NL80211_RATE_INFO_HE_RU_ALLOC_26: 26-tone RU allocation
3760 * @NL80211_RATE_INFO_HE_RU_ALLOC_52: 52-tone RU allocation
3761 * @NL80211_RATE_INFO_HE_RU_ALLOC_106: 106-tone RU allocation
3762 * @NL80211_RATE_INFO_HE_RU_ALLOC_242: 242-tone RU allocation
3763 * @NL80211_RATE_INFO_HE_RU_ALLOC_484: 484-tone RU allocation
3764 * @NL80211_RATE_INFO_HE_RU_ALLOC_996: 996-tone RU allocation
3765 * @NL80211_RATE_INFO_HE_RU_ALLOC_2x996: 2x996-tone RU allocation
3778 * enum nl80211_eht_gi - EHT guard interval
3790 * enum nl80211_eht_ltf - EHT long training field
3806 * enum nl80211_eht_ru_alloc - EHT RU allocation values
3807 * @NL80211_RATE_INFO_EHT_RU_ALLOC_26: 26-tone RU allocation
3808 * @NL80211_RATE_INFO_EHT_RU_ALLOC_52: 52-tone RU allocation
3809 * @NL80211_RATE_INFO_EHT_RU_ALLOC_52P26: 52+26-tone RU allocation
3810 * @NL80211_RATE_INFO_EHT_RU_ALLOC_106: 106-tone RU allocation
3812 * @NL80211_RATE_INFO_EHT_RU_ALLOC_242: 242-tone RU allocation
3813 * @NL80211_RATE_INFO_EHT_RU_ALLOC_484: 484-tone RU allocation
3815 * @NL80211_RATE_INFO_EHT_RU_ALLOC_996: 996-tone RU allocation
3818 * @NL80211_RATE_INFO_EHT_RU_ALLOC_2x996: 2x996-tone RU allocation
3820 * @NL80211_RATE_INFO_EHT_RU_ALLOC_3x996: 3x996-tone RU allocation
3822 * @NL80211_RATE_INFO_EHT_RU_ALLOC_4x996: 4x996-tone RU allocation
3844 * enum nl80211_rate_info - bitrate information
3846 * These attribute types are used with %NL80211_STA_INFO_TXRATE
3849 * a 16-bit value, and new one that represents a 32-bit value.
3852 * (>6.5535Gbps) only 32-bit attribute is included.
3853 * User space tools encouraged to use the 32-bit attribute and fall
3854 * back to the 16-bit one for compatibility with older kernels.
3866 * @NL80211_RATE_INFO_80P80_MHZ_WIDTH: unused - 80+80 is treated the
3869 * @NL80211_RATE_INFO_10_MHZ_WIDTH: 10 MHz width - note that this is
3872 * @NL80211_RATE_INFO_5_MHZ_WIDTH: 5 MHz width - note that this is
3875 * @NL80211_RATE_INFO_HE_MCS: HE MCS index (u8, 0-11)
3876 * @NL80211_RATE_INFO_HE_NSS: HE NSS value (u8, 1-8)
3880 * @NL80211_RATE_INFO_HE_RU_ALLOC: HE RU allocation, if not present then
3881 * non-OFDMA was used (u8, see &enum nl80211_he_ru_alloc)
3883 * @NL80211_RATE_INFO_EHT_MCS: EHT MCS index (u8, 0-15)
3884 * @NL80211_RATE_INFO_EHT_NSS: EHT NSS value (u8, 1-8)
3887 * @NL80211_RATE_INFO_EHT_RU_ALLOC: EHT RU allocation, if not present then
3888 * non-OFDMA was used (u8, see &enum nl80211_eht_ru_alloc)
3889 * @NL80211_RATE_INFO_S1G_MCS: S1G MCS index (u8, 0-10)
3890 * @NL80211_RATE_INFO_S1G_NSS: S1G NSS value (u8, 1-4)
3932 NL80211_RATE_INFO_MAX = __NL80211_RATE_INFO_AFTER_LAST - 1
3936 * enum nl80211_sta_bss_param - BSS information collected by STA
3938 * These attribute types are used with %NL80211_STA_INFO_BSS_PARAM
3962 NL80211_STA_BSS_PARAM_MAX = __NL80211_STA_BSS_PARAM_AFTER_LAST - 1
3966 * enum nl80211_sta_info - station information
3968 * These attribute types are used with %NL80211_ATTR_STA_INFO
4004 * @NL80211_STA_INFO_LOCAL_PM: local mesh STA link-specific power mode
4005 * @NL80211_STA_INFO_PEER_PM: peer mesh STA link-specific power mode
4007 * non-peer STA
4008 * @NL80211_STA_INFO_CHAIN_SIGNAL: per-chain signal strength of last PPDU
4010 * @NL80211_STA_INFO_CHAIN_SIGNAL_AVG: per-chain signal strength average
4019 * @NL80211_STA_INFO_TID_STATS: per-TID statistics (see &enum nl80211_tid_stats)
4021 * TID+1 and the special TID 16 (i.e. value 17) is used for non-QoS frames;
4026 * @NL80211_STA_INFO_PAD: attribute used for padding for 64-bit alignment
4032 * with an FCS error (u32, from this station). This count may not include
4034 * might not be fully accurate.
4096 NL80211_STA_INFO_MAX = __NL80211_STA_INFO_AFTER_LAST - 1
4099 /* we renamed this - stay compatible */
4104 * enum nl80211_tid_stats - per TID statistics attributes
4110 * transmitted MSDUs (not counting the first attempt; u64)
4113 * @NL80211_TID_STATS_PAD: attribute used for padding for 64-bit alignment
4129 NL80211_TID_STATS_MAX = NUM_NL80211_TID_STATS - 1
4133 * enum nl80211_txq_stats - per TXQ statistics attributes
4144 * (only for per-phy stats)
4167 NL80211_TXQ_STATS_MAX = NUM_NL80211_TXQ_STATS - 1
4171 * enum nl80211_mpath_flags - nl80211 mesh path flags
4188 * enum nl80211_mpath_info - mesh path information
4190 * These attribute types are used with %NL80211_ATTR_MPATH_INFO when getting
4222 NL80211_MPATH_INFO_MAX = __NL80211_MPATH_INFO_AFTER_LAST - 1
4226 * enum nl80211_band_iftype_attr - Interface type data attributes
4271 NL80211_BAND_IFTYPE_ATTR_MAX = __NL80211_BAND_IFTYPE_ATTR_AFTER_LAST - 1
4275 * enum nl80211_band_attr - band attributes
4281 * @NL80211_BAND_ATTR_HT_MCS_SET: 16-byte attribute containing the MCS set as
4284 * @NL80211_BAND_ATTR_HT_AMPDU_FACTOR: A-MPDU factor, as in 11n
4285 * @NL80211_BAND_ATTR_HT_AMPDU_DENSITY: A-MPDU density, as in 11n
4286 * @NL80211_BAND_ATTR_VHT_MCS_SET: 32-byte attribute containing the MCS set as
4292 * channel(s) that are allowed to be used for EDMG transmissions.
4297 * @NL80211_BAND_ATTR_S1G_MCS_NSS_SET: S1G capabilities, supported S1G-MCS and NSS
4326 NL80211_BAND_ATTR_MAX = __NL80211_BAND_ATTR_AFTER_LAST - 1
4332 * enum nl80211_wmm_rule - regulatory wmm rule
4351 NL80211_WMMR_MAX = __NL80211_WMMR_LAST - 1
4355 * enum nl80211_frequency_attr - frequency attributes
4372 * @NL80211_FREQUENCY_ATTR_NO_HT40_MINUS: HT40- isn't possible with this
4379 * @NL80211_FREQUENCY_ATTR_NO_160MHZ: any 160 MHz (but not 80+80) channel
4385 * used when there is a clear assessment that the device is operating in
4386 * an indoor surroundings, i.e., it is connected to AC power (and not
4392 * band), and IEEE80211_CHAN_RADAR is not set. Instantiating a GO or TDLS
4393 * off-channel on a channel that has the IR_CONCURRENT attribute set can be
4396 * off-channel while the device is also connected to an AP with DFS and
4397 * radar detection on the UNII band (it is up to user-space, i.e.,
4400 * @NL80211_FREQUENCY_ATTR_NO_20MHZ: 20 MHz operation is not allowed
4402 * @NL80211_FREQUENCY_ATTR_NO_10MHZ: 10 MHz operation is not allowed
4407 * @NL80211_FREQUENCY_ATTR_NO_HE: HE operation is not allowed on this channel
4422 * @NL80211_FREQUENCY_ATTR_NO_EHT: EHT operation is not allowed on this channel
4427 * allowed for peer-to-peer or adhoc communication under the control
4428 * of a DFS master which operates on the same channel (FCC-594280 D01
4429 * Section B.3). Should be used together with %NL80211_RRF_DFS only.
4431 * not allowed using this channel
4433 * not allowed using this channel
4434 * @NL80211_FREQUENCY_ATTR_CAN_MONITOR: This channel can be used in monitor
4437 * @NL80211_FREQUENCY_ATTR_ALLOW_6GHZ_VLP_AP: This channel can be used for a
4441 * @NL80211_FREQUENCY_ATTR_NO_4MHZ: 4 MHz operation is not allowed on this
4443 * @NL80211_FREQUENCY_ATTR_NO_8MHZ: 8 MHz operation is not allowed on this
4445 * @NL80211_FREQUENCY_ATTR_NO_16MHZ: 16 MHz operation is not allowed on this
4498 NL80211_FREQUENCY_ATTR_MAX = __NL80211_FREQUENCY_ATTR_AFTER_LAST - 1
4513 * enum nl80211_bitrate_attr - bitrate attributes
4529 NL80211_BITRATE_ATTR_MAX = __NL80211_BITRATE_ATTR_AFTER_LAST - 1
4533 * enum nl80211_reg_initiator - Indicates the initiator of a reg domain request
4544 * structure passed by userspace (CRDA) from our wireless-regdb.
4546 * be disabled we disable the channel and re-enable it upon disassociation.
4556 * enum nl80211_reg_type - specifies the type of regulatory domain
4563 * driver specific world regulatory domain. These do not apply system-wide
4567 * of an intersection between two regulatory domains -- the previously
4579 * enum nl80211_reg_rule_attr - regulatory rule attributes
4585 * rule in KHz. This is not a center of frequency but an actual regulatory
4588 * in KHz. This is not a center a frequency but an actual regulatory
4598 * If not present or 0 default CAC time will be used.
4622 NL80211_REG_RULE_ATTR_MAX = __NL80211_REG_RULE_ATTR_AFTER_LAST - 1
4626 * enum nl80211_sched_scan_match_attr - scheduled scan match attributes
4628 * @NL80211_SCHED_SCAN_MATCH_ATTR_SSID: SSID to be used for matching,
4630 * (This cannot be used together with BSSID.)
4632 * BSS in scan results. Filtering is turned off if not specified. Note that
4640 * %NL80211_SCHED_SCAN_MATCH_ATTR_RSSI to be used as absolute RSSI or
4643 * BSS-es in the specified band is to be adjusted before doing
4644 * RSSI-based BSS selection. The attribute value is a packed structure
4646 * @NL80211_SCHED_SCAN_MATCH_ATTR_BSSID: BSSID to be used for matching
4647 * (this cannot be used together with SSID).
4666 __NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST - 1
4673 * enum nl80211_reg_rule_flags - regulatory rule flags
4675 * @NL80211_RRF_NO_OFDM: OFDM modulation not allowed
4676 * @NL80211_RRF_NO_CCK: CCK modulation not allowed
4677 * @NL80211_RRF_NO_INDOOR: indoor operation not allowed
4678 * @NL80211_RRF_NO_OUTDOOR: outdoor operation not allowed
4679 * @NL80211_RRF_DFS: DFS support is required to be used
4690 * @NL80211_RRF_NO_HT40MINUS: channels can't be used in HT40- operation
4691 * @NL80211_RRF_NO_HT40PLUS: channels can't be used in HT40+ operation
4692 * @NL80211_RRF_NO_80MHZ: 80MHz operation not allowed
4693 * @NL80211_RRF_NO_160MHZ: 160MHz operation not allowed
4694 * @NL80211_RRF_NO_HE: HE operation not allowed
4695 * @NL80211_RRF_NO_320MHZ: 320MHz operation not allowed
4696 * @NL80211_RRF_NO_EHT: EHT operation not allowed
4699 * peer-to-peer or adhoc communication under the control of a DFS master
4700 * which operates on the same channel (FCC-594280 D01 Section B.3).
4701 * Should be used together with %NL80211_RRF_DFS only.
4702 * @NL80211_RRF_NO_6GHZ_VLP_CLIENT: Client connection to VLP AP not allowed
4703 * @NL80211_RRF_NO_6GHZ_AFC_CLIENT: Client connection to AFC AP not allowed
4749 * enum nl80211_dfs_regions - regulatory DFS regions
4764 * enum nl80211_user_reg_hint_type - type of user regulatory hint
4767 * assumed if the attribute is not set.
4787 * enum nl80211_survey_info - survey information
4789 * These attribute types are used with %NL80211_ATTR_SURVEY_INFO
4795 * @NL80211_SURVEY_INFO_IN_USE: channel is currently being used
4808 * @NL80211_SURVEY_INFO_PAD: attribute used for padding for 64-bit alignment
4833 NL80211_SURVEY_INFO_MAX = __NL80211_SURVEY_INFO_AFTER_LAST - 1
4844 * enum nl80211_mntr_flags - monitor configuration flags
4858 * @NL80211_MNTR_FLAG_SKIP_TX: do not pass local tx packets
4875 NL80211_MNTR_FLAG_MAX = __NL80211_MNTR_FLAG_AFTER_LAST - 1
4879 * enum nl80211_mesh_power_mode - mesh power save modes
4882 * not known or has not been set yet.
4889 * alternate between Active and Doze states, but may not wake up
4903 NL80211_MESH_POWER_MAX = __NL80211_MESH_POWER_AFTER_LAST - 1
4907 * enum nl80211_meshconf_params - mesh configuration parameters
4915 * millisecond units, used by the Peer Link Open message
4918 * millisecond units, used by the peer link management to close a peer link
4960 * @NL80211_MESHCONF_HWMP_ROOTMODE: whether root mode is enabled or not
4976 * @NL80211_MESHCONF_FORWARDING: set Mesh STA as forwarding or non-forwarding
4977 * or forwarding entity (default is TRUE - forwarding entity)
5017 * @NL80211_MESHCONF_NOLEARN: Try to avoid multi-hop path discovery (e.g.
5019 * this might not be the optimal decision as a multi-hop route might be
5065 NL80211_MESHCONF_ATTR_MAX = __NL80211_MESHCONF_ATTR_AFTER_LAST - 1
5069 * enum nl80211_mesh_setup_params - mesh setup parameters
5071 * Mesh setup parameters. These are used to start/join a mesh and cannot be
5130 NL80211_MESH_SETUP_ATTR_MAX = __NL80211_MESH_SETUP_ATTR_AFTER_LAST - 1
5134 * enum nl80211_txq_attr - TX queue parameter attributes
5140 * 2^n-1 in the range 1..32767]
5142 * 2^n-1 in the range 1..32767]
5157 NL80211_TXQ_ATTR_MAX = __NL80211_TXQ_ATTR_AFTER_LAST - 1
5176 * enum nl80211_channel_type - channel type
5177 * @NL80211_CHAN_NO_HT: 20 MHz, non-HT channel
5192 * enum nl80211_key_mode - Key mode
5195 * Key can be used for Rx and Tx immediately
5201 * Unicast key can only be used for Rx, Tx not allowed, yet
5213 * enum nl80211_chan_width - channel width definitions
5215 * These values are used with the %NL80211_ATTR_CHANNEL_WIDTH
5218 * @NL80211_CHAN_WIDTH_20_NOHT: 20 MHz, non-HT channel
5256 * enum nl80211_bss_scan_width - control channel width for a BSS
5258 * These values are used with the %NL80211_BSS_CHAN_WIDTH attribute.
5275 * enum nl80211_bss_use_for - bitmap indicating possible BSS use
5278 * @NL80211_BSS_USE_FOR_MLD_LINK: This BSS can be used as a link in an
5289 * enum nl80211_bss_cannot_use_reasons - reason(s) connection to a
5293 * @NL80211_BSS_CANNOT_USE_6GHZ_PWR_MISMATCH: STA is not supporting
5305 * enum nl80211_bss - netlink attributes for a BSS
5321 * However, if the driver does not indicate the source of the IEs, these
5329 * @NL80211_BSS_STATUS: status, if this BSS is "used"
5332 * elements from a Beacon frame (bin); not present if no Beacon frame has
5335 * (u32, enum nl80211_bss_scan_width) - No longer used!
5337 * (not present if no beacon frame has been received yet)
5343 * @NL80211_BSS_PAD: attribute used for padding for 64-bit alignment
5350 * @NL80211_BSS_CHAIN_SIGNAL: per-chain signal strength of last BSS update.
5357 * used for, see &enum nl80211_bss_use_for.
5359 * be used for all or some of the possible uses by the device reporting it,
5396 NL80211_BSS_MAX = __NL80211_BSS_AFTER_LAST - 1
5400 * enum nl80211_bss_status - BSS "status"
5402 * Note that this is no longer used since cfg80211 no longer
5403 * keeps track of whether or not authentication was done with
5418 * enum nl80211_auth_type - AuthenticationType
5431 * trying multiple times); this is invalid in netlink -- leave out
5446 NL80211_AUTHTYPE_MAX = __NL80211_AUTHTYPE_NUM - 1,
5451 * enum nl80211_key_type - Key Type
5466 * enum nl80211_mfp - Management frame protection state
5467 * @NL80211_MFP_NO: Management frame protection not used
5484 * enum nl80211_key_default_types - key default types
5486 * @NL80211_KEY_DEFAULT_TYPE_UNICAST: key should be used as default
5488 * @NL80211_KEY_DEFAULT_TYPE_MULTICAST: key should be used as default
5501 * enum nl80211_key_attributes - key attributes
5506 * @NL80211_KEY_IDX: key ID (u8, 0-3)
5513 * @NL80211_KEY_TYPE: the key type from enum nl80211_key_type, if not
5515 * given with the command using the key or not (u32)
5541 NL80211_KEY_MAX = __NL80211_KEY_AFTER_LAST - 1
5545 * enum nl80211_tx_rate_attributes - TX rate set attributes
5547 * @NL80211_TXRATE_LEGACY: Legacy (non-MCS) rates allowed for TX rate selection
5582 NL80211_TXRATE_MAX = __NL80211_TXRATE_AFTER_LAST - 1
5589 * struct nl80211_txrate_vht - VHT MCS/NSS txrate bitmap
5598 * struct nl80211_txrate_he - HE MCS/NSS txrate bitmap
5613 * struct nl80211_txrate_eht - EHT MCS/NSS txrate bitmap
5621 * enum nl80211_band - Frequency band
5623 * @NL80211_BAND_5GHZ: around 5 GHz band (4.9 - 5.7 GHz)
5624 * @NL80211_BAND_60GHZ: around 60 GHz band (58.32 - 69.12 GHz)
5625 * @NL80211_BAND_6GHZ: around 6 GHz band (5.9 - 7.2 GHz)
5643 * enum nl80211_ps_state - powersave state
5653 * enum nl80211_attr_cqm - connection quality monitor attributes
5658 * set, multiple values can be supplied as a low-to-high sorted array of
5666 * consecutive packets were not acknowledged by the peer
5699 NL80211_ATTR_CQM_MAX = __NL80211_ATTR_CQM_AFTER_LAST - 1
5703 * enum nl80211_cqm_rssi_threshold_event - RSSI threshold event
5718 * enum nl80211_tx_power_setting - TX power adjustment
5730 * enum nl80211_tid_config - TID config state
5739 /* enum nl80211_tx_rate_setting - TX rate configuration type
5750 /* enum nl80211_tid_config_attr - TID specific configuration.
5751 * @NL80211_TID_CONFIG_ATTR_PAD: pad attribute for 64-bit values
5753 * for per-vif configuration; doesn't list the ones that are generic
5755 * @NL80211_TID_CONFIG_ATTR_PEER_SUPP: same as the previous per-vif one, but
5766 * @NL80211_TID_CONFIG_ATTR_RETRY_SHORT: Number of retries used with data frame
5767 * transmission, user-space sets this configuration in
5771 * @NL80211_TID_CONFIG_ATTR_RETRY_LONG: Number of retries used with data frame
5772 * transmission, user-space sets this configuration in
5786 * to notfiy the driver that what type of txrate should be used
5812 NL80211_TID_CONFIG_ATTR_MAX = __NL80211_TID_CONFIG_ATTR_AFTER_LAST - 1
5816 * enum nl80211_packet_pattern_attr - packet pattern attribute
5821 * a bit for each byte in the pattern. The lowest-order bit corresponds
5823 * in a little-endian-like format, i.e. the 9th byte of the pattern
5824 * corresponds to the lowest-order bit in the second byte of the mask.
5828 * Note that the pattern matching is done as though frames were not
5843 MAX_NL80211_PKTPAT = NUM_NL80211_PKTPAT - 1,
5847 * struct nl80211_pattern_support - packet pattern support information
5876 * enum nl80211_wowlan_triggers - WoWLAN trigger definitions
5878 * @NL80211_WOWLAN_TRIG_ANY: wake up on any activity, do not really put
5879 * the chip into a special state -- works best with chips that have
5880 * support for low-power operation already (flag)
5884 * is detected is implementation-specific (flag)
5891 * each pattern which is used while matching the pattern. The matching is
5898 * When reporting wakeup. it is a u32 attribute containing the 0-based
5901 * @NL80211_WOWLAN_TRIG_GTK_REKEY_SUPPORTED: Not a real trigger, and cannot be
5902 * used when setting, used only to indicate that GTK rekeying is supported
5908 * @NL80211_WOWLAN_TRIG_4WAY_HANDSHAKE: wake up on 4-way handshake (flag)
5938 * same attributes used with @NL80211_CMD_START_SCHED_SCAN. It
5948 * that the information is not available. If more than one
5963 * These nested attributes are used to configure the wakeup triggers and
5991 MAX_NL80211_WOWLAN_TRIG = NUM_NL80211_WOWLAN_TRIG - 1
6004 * optionally, a token from a list of tokens. This serves as a keep-alive
6007 * During this keep-alive period, the server doesn't send any data to the
6014 * response packets might not go through correctly.
6018 * struct nl80211_wowlan_tcp_data_seq - WoWLAN TCP data sequence
6032 * struct nl80211_wowlan_tcp_data_token - WoWLAN TCP data token config
6035 * @token_stream: stream of data to be used for the tokens, the length must
6044 * struct nl80211_wowlan_tcp_data_token_feature - data token features
6054 * enum nl80211_wowlan_tcp_attrs - WoWLAN TCP connection parameters
6063 * @NL80211_WOWLAN_TCP_SRC_PORT: source port (u16); optional, if not given a
6079 * @NL80211_WOWLAN_TCP_WAKE_MASK: Wake packet payload mask, not used for
6101 MAX_NL80211_WOWLAN_TCP = NUM_NL80211_WOWLAN_TCP - 1
6105 * struct nl80211_coalesce_rule_support - coalesce rule support information
6120 * enum nl80211_attr_coalesce_rule - coalesce rule attribute
6122 * @NL80211_ATTR_COALESCE_RULE_DELAY: delay in msecs used for packet coalescing
6138 NL80211_ATTR_COALESCE_RULE_MAX = NUM_NL80211_ATTR_COALESCE_RULE - 1
6142 * enum nl80211_coalesce_condition - coalesce rule conditions
6146 * in a rule are not matched.
6154 * enum nl80211_iface_limit_attrs - limit attributes
6170 MAX_NL80211_IFACE_LIMIT = NUM_NL80211_IFACE_LIMIT - 1
6174 * enum nl80211_if_combination_attrs -- interface combination attributes
6188 * different channels may be used within this group.
6195 * in this group (if not present, all beacon intervals be identical).
6203 * numbers = [ #{AP, P2P-GO} <= 8 ], BI min gcd, channels = 1, max = 8,
6209 * numbers = [ #{STA} <= 1, #{P2P-client,P2P-GO} <= 3 ], max = 4
6216 * "Combinations" of just a single interface will not be listed here,
6234 MAX_NL80211_IFACE_COMB = NUM_NL80211_IFACE_COMB - 1
6239 * enum nl80211_plink_state - state of a mesh peer link finite state machine
6242 * state of non-existent mesh peer links
6267 MAX_NL80211_PLINK_STATES = NUM_NL80211_PLINK_STATES - 1
6271 * enum nl80211_plink_action - actions to perform in mesh peers
6295 * enum nl80211_rekey_data - attributes for GTK rekey offload
6313 MAX_NL80211_REKEY_DATA = NUM_NL80211_REKEY_DATA - 1
6317 * enum nl80211_hidden_ssid - values for %NL80211_ATTR_HIDDEN_SSID
6318 * @NL80211_HIDDEN_SSID_NOT_IN_USE: do not hide SSID (i.e., broadcast it in
6320 * @NL80211_HIDDEN_SSID_ZERO_LEN: hide SSID by using zero-length SSID element
6332 * enum nl80211_sta_wme_attr - station WME attributes
6348 NL80211_STA_WME_MAX = __NL80211_STA_WME_AFTER_LAST - 1
6352 * enum nl80211_pmksa_candidate_attr - attributes for PMKSA caching candidates
6357 * @NL80211_PMKSA_CANDIDATE_PREAUTH: RSN pre-authentication supported (flag)
6371 MAX_NL80211_PMKSA_CANDIDATE = NUM_NL80211_PMKSA_CANDIDATE - 1
6375 * enum nl80211_tdls_operation - values for %NL80211_ATTR_TDLS_OPERATION
6391 * enum nl80211_ap_sme_features - device-integrated AP features
6401 * enum nl80211_feature_flags - device/driver features
6419 * @NL80211_FEATURE_VIF_TXPOWER: The driver supports per-vif TX power setting
6421 * OBSS scans and generate 20/40 BSS coex reports. This flag is used only
6449 * channel bandwidth change (e.g., HT 20 <-> 40 MHz channel) during the
6462 * estimation (dynack). %NL80211_ATTR_WIPHY_DYN_ACK flag attribute is used
6472 * TSPEC sessions (TID aka TSID 0-7) with the %NL80211_CMD_ADD_TX_TS
6473 * command. Standard IEEE 802.11 TSPEC setup is not yet supported, it
6474 * needs to be able to handle Block-Ack agreements and other things.
6483 * address mask/value will be used.
6486 * scan (while not associated), the %NL80211_SCAN_FLAG_RANDOM_ADDR may
6487 * be set for scheduled scan and the MAC address mask/value will be used.
6491 * be set for scheduled scan and the MAC address mask/value will be used.
6529 * enum nl80211_ext_feature_index - bit index of extended features.
6535 * NL80211_FEATURE_QUIET is not advertised.
6536 * @NL80211_EXT_FEATURE_MU_MIMO_AIR_SNIFFER: This device supports MU-MIMO air
6547 * time the last beacon/probe was received. For a non-MLO connection, the
6555 * configuration (AP/mesh), supporting a legacy (non-HT/VHT) rate.
6563 * in @NL80211_CMD_FRAME while not associated.
6574 * @NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_PSK: Device wants to do 4-way
6576 * and associate commands), doing it in the host might not be supported.
6577 * @NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_1X: Device wants to do doing 4-way
6579 * and accept the set_pmk/del_pmk commands), doing it in the host might not
6596 * Device or driver will do all DFS-related actions by itself,
6597 * informing user-space about CAC progress, radar detection event,
6599 * No need to start CAC from user-space, no need to react to
6605 * @NL80211_EXT_FEATURE_DATA_ACK_SIGNAL_SUPPORT: Backward-compatible ID
6606 * @NL80211_EXT_FEATURE_TXQS: Driver supports FQ-CoDel-enabled intermediate
6617 * able to rekey an in-use key correctly. Userspace must not rekey PTK keys
6618 * if this flag is not set. Ignoring this can leak clear text packets and/or
6621 * Individually Addressed Frames" from IEEE802.11-2016.
6639 * with VLAN tagged frames and separate VLAN-specific netdevs added using
6674 * @NL80211_EXT_FEATURE_4WAY_HANDSHAKE_AP_PSK: Device wants to do 4-way
6713 * first. For example, in station mode this can be used to vary the
6734 * @NL80211_EXT_FEATURE_DFS_CONCURRENT: The device supports peer-to-peer or
6736 * DFS master on the same channel as described in FCC-594280 D01
6741 * (signaling and payload protected) A-MSDUs and this shall be advertised
6779 /* we renamed this - stay compatible */
6826 MAX_NL80211_EXT_FEATURES = NUM_NL80211_EXT_FEATURES - 1
6830 * enum nl80211_probe_resp_offload_support_attr - optional supported
6831 * protocols for probe-response offloading by the driver/FW.
6832 * To be used with the %NL80211_ATTR_PROBE_RESP_OFFLOAD attribute.
6834 * protocols. Typically a subset of probe-requests belonging to a
6851 * enum nl80211_connect_failed_reason - connection request failed reasons
6862 * enum nl80211_timeout_reason - timeout reasons
6877 * enum nl80211_scan_flags - scan request control flags
6879 * Scan request control flags are used to control the handling
6885 * one of them can be used in the request.
6892 * will be lost while scanning off-channel, therefore it must be used only
6899 * randomised. If the attributes are not given full randomisation (46 bits,
6901 * This flag must not be requested when the feature isn't supported, check
6907 * rate of at least 5.5M. In case non-OCE AP is discovered in the channel,
6913 * a suitable candidate for (re-)association - suitable in terms of
6936 * %NL80211_ATTR_SCAN_FREQUENCIES will not be included.
6941 * channels on which APs are expected to be found. Note that when not set,
6943 * probe requests on non-PSC channels is limited, it is highly likely that
6967 * enum nl80211_acl_policy - access control policy
6971 * be used with %NL80211_ATTR_ACL_POLICY.
6974 * listed in ACL, i.e. allow all the stations which are not listed
6977 * in ACL, i.e. deny all the stations which are not listed in ACL.
6985 * enum nl80211_smps_mode - SMPS mode
6994 * @NL80211_SMPS_MAX: highest used enumeration
7002 NL80211_SMPS_MAX = __NL80211_SMPS_AFTER_LAST - 1
7006 * enum nl80211_radar_event - type of radar event for DFS operation
7008 * Type of event to be used with NL80211_ATTR_RADAR_EVENT to inform userspace
7017 * @NL80211_RADAR_NOP_FINISHED: The Non-Occupancy Period for this channel is
7020 * non-operating channel is expired and no longer valid. New CAC must
7021 * be done on this channel before starting the operation. This is not
7022 * applicable for ETSI dfs domain where pre-CAC is valid for ever.
7036 * enum nl80211_dfs_state - DFS states for channels
7038 * Channel states used by the DFS code.
7040 * @NL80211_DFS_USABLE: The channel can be used, but channel availability
7043 * is therefore marked as not available.
7053 * enum nl80211_protocol_features - nl80211 protocol features
7065 * enum nl80211_crit_proto_id - nl80211 critical protocol identifiers
7086 * enum nl80211_rxmgmt_flags - flags for received management frame.
7088 * Used by cfg80211_rx_mgmt()
7103 * a Linux nl80211 vendor ID is used (no such IDs are allocated
7104 * yet, so that's not valid so far)
7109 * struct nl80211_vendor_cmd_info - vendor command data
7111 * value is a 24-bit OUI; if it is set then a separately allocated ID
7112 * may be used, but no such IDs are allocated yet. New IDs should be
7114 * @subcmd: sub-command ID for the command
7122 * enum nl80211_tdls_peer_capability - TDLS peer flags.
7124 * Used by tdls_mgmt() to determine which conditional elements need
7140 * enum nl80211_sched_scan_plan - scanning plan for scheduled scan
7145 * scan plan (u32). The last scan plan must not specify this attribute
7160 __NL80211_SCHED_SCAN_PLAN_AFTER_LAST - 1
7164 * struct nl80211_bss_select_rssi_adjust - RSSI adjustment parameters.
7168 * @delta: value used to adjust the RSSI value of matching BSS in dB.
7176 * enum nl80211_bss_select_attr - attributes for bss selection.
7179 * @NL80211_BSS_SELECT_ATTR_RSSI: Flag indicating only RSSI-based BSS selection
7183 * When there are multiple BSS-es in the preferred band, the driver
7184 * shall use RSSI-based BSS selection as a second step. The value of
7187 * BSS-es in the specified band is to be adjusted before doing
7188 * RSSI-based BSS selection. The attribute value is a packed structure
7205 NL80211_BSS_SELECT_ATTR_MAX = __NL80211_BSS_SELECT_ATTR_AFTER_LAST - 1
7209 * enum nl80211_nan_function_type - NAN function type
7215 * @NL80211_NAN_FUNC_FOLLOW_UP: function is follow-up
7226 NL80211_NAN_FUNC_MAX_TYPE = __NL80211_NAN_FUNC_TYPE_AFTER_LAST - 1,
7230 * enum nl80211_nan_publish_type - NAN publish tx type
7243 * enum nl80211_nan_func_term_reason - NAN functions termination reason
7262 * enum nl80211_nan_func_attributes - NAN function attributes
7286 * stay active. If not present infinite TTL is assumed. This is a u32.
7324 NL80211_NAN_FUNC_ATTR_MAX = NUM_NL80211_NAN_FUNC_ATTR - 1
7328 * enum nl80211_nan_srf_attributes - NAN Service Response filter attributes
7351 NL80211_NAN_SRF_ATTR_MAX = NUM_NL80211_NAN_SRF_ATTR - 1,
7355 * enum nl80211_nan_match_attributes - NAN match attributes
7374 NL80211_NAN_MATCH_ATTR_MAX = NUM_NL80211_NAN_MATCH_ATTR - 1
7378 * enum nl80211_nan_band_conf_attributes - NAN band configuration attributes
7382 * @NL80211_NAN_BAND_CONF_FREQ: Discovery frequency. This attribute shall not
7385 * If not present, channel 149 is used if allowed, otherwise channel 44
7387 * @NL80211_NAN_BAND_CONF_RSSI_CLOSE: RSSI close threshold used for NAN state
7389 * Device Role and State Transition" of Wi-Fi Aware (TM) Specification
7390 * v4.0. If not specified, default device value is used. The value should
7391 * be greater than -60 dBm (s8).
7392 * @NL80211_NAN_BAND_CONF_RSSI_MIDDLE: RSSI middle threshold used for NAN state
7394 * Device Role and State Transition" of Wi-Fi Aware (TM) Specification
7395 * v4.0. If not present, default device value is used. The value should be
7396 * greater than -75 dBm and less than %NL80211_NAN_BAND_CONF_RSSI_CLOSE
7398 * @NL80211_NAN_BAND_CONF_WAKE_DW: Committed DW information (values 0-5).
7399 * Value 0 means that the device will not wake up during the
7400 * discovery window. Values 1-5 mean that the device will wake up
7401 * during each 2^(n - 1) discovery window, where n is the value of
7402 * this attribute. Setting this attribute to 0 is not allowed on
7405 * scanning (for cluster merge) on the band. If set, the device will not
7406 * scan on this band anymore. Disabling scanning on 2.4 GHz band is not
7411 * These attributes are used to configure NAN band-specific parameters. Note,
7425 NL80211_NAN_BAND_CONF_ATTR_MAX = NUM_NL80211_NAN_BAND_CONF_ATTR - 1,
7429 * enum nl80211_nan_conf_attributes - NAN configuration attributes
7430 * @__NL80211_NAN_CONF_INVALID: Invalid attribute, used for validation.
7432 * address that can take values from 50-6F-9A-01-00-00 to
7433 * 50-6F-9A-01-FF-FF. This attribute is optional. If not present,
7437 * @NL80211_NAN_CONF_VENDOR_ELEMS: Vendor-specific elements that will
7442 * @NL80211_NAN_CONF_SCAN_PERIOD: Scan period in seconds. If not configured,
7443 * device default is used. Zero value will disable scanning.
7446 * Only non-zero values are valid. If not configured the device default
7447 * value is used. This is u16 (optional)
7449 * in TUs. Valid range is 50-200 TUs. If not configured the device default
7450 * value is used. This is u8 (optional)
7458 * These attributes are used to configure NAN-specific parameters.
7473 NL80211_NAN_CONF_ATTR_MAX = NUM_NL80211_NAN_CONF_ATTR - 1,
7477 * enum nl80211_external_auth_action - Action to perform with external
7478 * authentication request. Used by NL80211_ATTR_EXTERNAL_AUTH_ACTION.
7488 * enum nl80211_ftm_responder_attributes - fine timing measurement
7493 * (9.4.2.22 in 802.11-2016) with type 8 - LCI (9.4.2.22.10),
7496 * (9.4.2.22 in 802.11-2016) with type 11 - Civic (Section 9.4.2.22.13),
7510 NL80211_FTM_RESP_ATTR_MAX = __NL80211_FTM_RESP_ATTR_LAST - 1,
7514 * enum nl80211_ftm_responder_stats - FTM responder statistics
7516 * These attribute types are used with %NL80211_ATTR_FTM_RESPONDER_STATS
7526 * @NL80211_FTM_STATS_NON_ASAP_NUM: number of non-ASAP sessions (u32)
7527 * @NL80211_FTM_STATS_TOTAL_DURATION_MSEC: total sessions durations - gives an
7529 * @NL80211_FTM_STATS_UNKNOWN_TRIGGERS_NUM: number of unknown FTM triggers -
7533 * - initiator asks for a new scheduling although it already has scheduled
7537 * @NL80211_FTM_STATS_PAD: used for padding, ignore
7556 NL80211_FTM_STATS_MAX = __NL80211_FTM_STATS_AFTER_LAST - 1
7560 * enum nl80211_preamble - frame preamble types
7576 * enum nl80211_peer_measurement_type - peer measurement types
7591 NL80211_PMSR_TYPE_MAX = NUM_NL80211_PMSR_TYPES - 1
7595 * enum nl80211_peer_measurement_status - peer measurement status
7599 * @NL80211_PMSR_STATUS_FAILURE: measurement failed, a type-dependent
7610 * enum nl80211_peer_measurement_req - peer measurement request attributes
7614 * type-specific request data inside. The attributes used are from the
7630 NL80211_PMSR_REQ_ATTR_MAX = NUM_NL80211_PMSR_REQ_ATTRS - 1
7634 * enum nl80211_peer_measurement_resp - peer measurement response attributes
7638 * type-specific results inside. The attributes used are from the enums
7643 * result was measured; this value is not expected to be accurate to
7650 * (*e.g. with FTM per-burst data) this flag will be cleared on all but
7653 * @NL80211_PMSR_RESP_ATTR_PAD: padding for 64-bit attributes, ignore
7670 NL80211_PMSR_RESP_ATTR_MAX = NUM_NL80211_PMSR_RESP_ATTRS - 1
7674 * enum nl80211_peer_measurement_peer_attrs - peer attributes for measurement
7678 * @NL80211_PMSR_PEER_ATTR_CHAN: channel definition, nested, using top-level
7700 NL80211_PMSR_PEER_ATTR_MAX = NUM_NL80211_PMSR_PEER_ATTRS - 1,
7704 * enum nl80211_peer_measurement_attrs - peer measurement attributes
7707 * @NL80211_PMSR_ATTR_MAX_PEERS: u32 attribute used for capability
7717 * type-specific capabilities inside, which are from the enums
7721 * sub-attributes taken from
7738 NL80211_PMSR_ATTR_MAX = NUM_NL80211_PMSR_ATTR - 1
7742 * enum nl80211_peer_measurement_ftm_capa - FTM capabilities
7747 * @NL80211_PMSR_FTM_CAPA_ATTR_NON_ASAP: flag attribute indicating non-ASAP
7761 * the maximum bursts exponent that can be used (if not present anything
7764 * the maximum FTMs per burst (if not present anything is valid)
7768 * if non-trigger-based ranging measurement is supported
7789 NL80211_PMSR_FTM_CAPA_ATTR_MAX = NUM_NL80211_PMSR_FTM_CAPA_ATTR - 1
7793 * enum nl80211_peer_measurement_ftm_req - FTM request attributes
7800 * 802.11-2016 9.4.2.168 "Fine Timing Measurement Parameters element"
7801 * (u8, 0-15, optional with default 15 i.e. "no preference")
7804 * @NL80211_PMSR_FTM_REQ_ATTR_BURST_DURATION: burst duration, as in 802.11-2016
7805 * Table 9-257 "Burst Duration field encoding" (u8, 0-15, optional with
7809 * (u8, 0-31, optional with default 0 i.e. "no preference")
7821 * ranging will be used.
7822 * @NL80211_PMSR_FTM_REQ_ATTR_NON_TRIGGER_BASED: request non-trigger-based
7828 * ranging will be used.
7858 NL80211_PMSR_FTM_REQ_ATTR_MAX = NUM_NL80211_PMSR_FTM_REQ_ATTR - 1
7862 * enum nl80211_peer_measurement_ftm_failure_reasons - FTM failure reasons
7863 * @NL80211_PMSR_FTM_FAILURE_UNSPECIFIED: unspecified failure, not used
7889 * enum nl80211_peer_measurement_ftm_resp - FTM response attributes
7892 * @NL80211_PMSR_FTM_RESP_ATTR_FAIL_REASON: FTM-specific failure reason
7895 * as separate results then it will be the burst index 0...(N-1) and
7904 * used by the responder (similar to request, u8)
7905 * @NL80211_PMSR_FTM_RESP_ATTR_BURST_DURATION: actual burst duration used by
7907 * @NL80211_PMSR_FTM_RESP_ATTR_FTMS_PER_BURST: actual FTMs per burst used
7913 * @NL80211_PMSR_FTM_RESP_ATTR_TX_RATE: bitrate we used for the response to the
7916 * @NL80211_PMSR_FTM_RESP_ATTR_RX_RATE: bitrate the responder used for the FTM
7930 * this is the contents of the Measurement Report Element (802.11-2016
7935 * this is the contents of the Measurement Report Element (802.11-2016
7970 NL80211_PMSR_FTM_RESP_ATTR_MAX = NUM_NL80211_PMSR_FTM_RESP_ATTR - 1
7974 * enum nl80211_obss_pd_attributes - OBSS packet detection attributes
7979 * @NL80211_HE_OBSS_PD_ATTR_NON_SRG_MAX_OFFSET: the non-SRG OBSS PD maximum
7982 * values used by members of the SRG.
7984 * BSSID values used by members of the SRG.
8002 NL80211_HE_OBSS_PD_ATTR_MAX = __NL80211_HE_OBSS_PD_ATTR_LAST - 1,
8006 * enum nl80211_bss_color_attributes - BSS Color attributes
8011 * @NL80211_HE_BSS_COLOR_ATTR_PARTIAL: the AID equation to be used..
8025 NL80211_HE_BSS_COLOR_ATTR_MAX = __NL80211_HE_BSS_COLOR_ATTR_LAST - 1,
8029 * enum nl80211_iftype_akm_attributes - interface type AKM attributes
8035 * @NL80211_IFTYPE_AKM_ATTR_SUITES: an array of u32. Used to indicate supported
8049 NL80211_IFTYPE_AKM_ATTR_MAX = __NL80211_IFTYPE_AKM_ATTR_LAST - 1,
8053 * enum nl80211_fils_discovery_attributes - FILS discovery configuration
8054 * from IEEE Std 802.11ai-2016, Annex C.3 MIB detail.
8077 NL80211_FILS_DISCOVERY_ATTR_MAX = __NL80211_FILS_DISCOVERY_ATTR_LAST - 1
8087 * enum nl80211_unsol_bcast_probe_resp_attributes - Unsolicited broadcast probe
8111 __NL80211_UNSOL_BCAST_PROBE_RESP_ATTR_LAST - 1
8115 * enum nl80211_sae_pwe_mechanism - The mechanism(s) allowed for SAE PWE
8116 * derivation. Applicable only when WPA3-Personal SAE authentication is
8117 * used.
8119 * @NL80211_SAE_PWE_UNSPECIFIED: not specified, used internally to indicate that
8120 * attribute is not present from userspace.
8121 * @NL80211_SAE_PWE_HUNT_AND_PECK: hunting-and-pecking loop only
8122 * @NL80211_SAE_PWE_HASH_TO_ELEMENT: hash-to-element only
8123 * @NL80211_SAE_PWE_BOTH: both hunting-and-pecking loop and hash-to-element
8124 * can be used.
8134 * enum nl80211_sar_type - type of SAR specs
8150 * enum nl80211_sar_attrs - Attributes for SAR spec
8170 * These attributes are used with %NL80211_CMD_SET_SAR_SPEC
8179 NL80211_SAR_ATTR_MAX = __NL80211_SAR_ATTR_LAST - 1,
8183 * enum nl80211_sar_specs_attrs - Attributes for SAR power limit specs
8202 * It's not allowed to set duplicated range in one SET operation.
8208 * It's not a channel center frequency. The unit is kHz.
8212 * It's not a channel center frequency. The unit is kHz.
8226 NL80211_SAR_ATTR_SPECS_MAX = __NL80211_SAR_ATTR_SPECS_LAST - 1,
8230 * enum nl80211_mbssid_config_attributes - multiple BSSID (MBSSID) and enhanced
8231 * multi-BSSID advertisements (EMA) in AP mode.
8234 * Remaining attributes should be used by the userspace to configure the
8239 * @NL80211_MBSSID_CONFIG_ATTR_MAX_INTERFACES: Used by the kernel to advertise
8242 * wiphy->mbssid_max_interfaces to a value more than or equal to 2.
8244 * @NL80211_MBSSID_CONFIG_ATTR_MAX_EMA_PROFILE_PERIODICITY: Used by the kernel
8247 * by setting wiphy->ema_max_profile_periodicity to
8248 * a non-zero value.
8252 * Value must be set to 0 for the transmitting interface and non-zero for
8253 * all non-transmitting interfaces. The userspace will be responsible
8255 * Range: 0 to wiphy->mbssid_max_interfaces-1.
8258 * a non-transmitted profile which provides the interface index (u32) of
8264 * @NL80211_MBSSID_CONFIG_ATTR_EMA: Flag used to enable EMA AP feature.
8266 * by setting wiphy->ema_max_profile_periodicity to non-zero.
8270 * are sent for a non-transmitted profile and if the transmitted profile
8288 NL80211_MBSSID_CONFIG_ATTR_MAX = __NL80211_MBSSID_CONFIG_ATTR_LAST - 1,
8292 * enum nl80211_ap_settings_flags - AP settings flags
8308 * enum nl80211_wiphy_radio_attrs - wiphy radio attributes
8336 NL80211_WIPHY_RADIO_ATTR_MAX = __NL80211_WIPHY_RADIO_ATTR_LAST - 1,
8340 * enum nl80211_wiphy_radio_freq_range - wiphy radio frequency range
8359 NL80211_WIPHY_RADIO_FREQ_ATTR_MAX = __NL80211_WIPHY_RADIO_FREQ_ATTR_LAST - 1,
8363 * enum nl80211_s1g_short_beacon_attrs - S1G short beacon data
8382 __NL80211_S1G_SHORT_BEACON_ATTR_LAST - 1
8386 * enum nl80211_nan_capabilities - NAN (Neighbor Aware Networking)
8395 * NAN Discovery Engine (DE) is not offloaded and the driver assumes
8398 * should not be used. In addition, the device/driver should support
8402 * (%NL80211_CMD_FRAME is used to transmit SDFs)
8404 * modes as defined in Wi-Fi Aware (TM) specification Table 81 (Operation
8409 * antennas. Value 0 indicates the information is not available.
8410 * See table 79 of Wi-Fi Aware (TM) specification (Number of
8416 * capabilities of the device as defined in Wi-Fi Aware (TM)
8432 NL80211_NAN_CAPABILITIES_MAX = __NL80211_NAN_CAPABILITIES_LAST - 1,