]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
Sync with wireless-next.git include/uapi/linux/nl80211.h
authorJouni Malinen <j@w1.fi>
Sat, 28 Oct 2023 15:39:48 +0000 (18:39 +0300)
committerJouni Malinen <j@w1.fi>
Sat, 28 Oct 2023 15:41:37 +0000 (18:41 +0300)
This brings in nl80211 definitions as of 2023-10-23.

Signed-off-by: Jouni Malinen <j@w1.fi>
src/drivers/driver_nl80211_event.c
src/drivers/nl80211_copy.h

index 9d39703e0bf6572ec05faa29c5c857d2ef862ae2..0297bffeb37370c914263464f116dd09188400ae 100644 (file)
@@ -185,6 +185,7 @@ static const char * nl80211_command_to_string(enum nl80211_commands cmd)
        C2S(NL80211_CMD_MODIFY_LINK_STA)
        C2S(NL80211_CMD_REMOVE_LINK_STA)
        C2S(NL80211_CMD_SET_HW_TIMESTAMP)
+       C2S(NL80211_CMD_LINKS_REMOVED)
        C2S(__NL80211_CMD_AFTER_LAST)
        }
 #undef C2S
index c59fec406da5e304c96231b6d3e57fab78e163db..dced2c49daecd70631e88aa6b25248c864ed9683 100644 (file)
@@ -11,7 +11,7 @@
  * Copyright 2008 Jouni Malinen <jouni.malinen@atheros.com>
  * Copyright 2008 Colin McCabe <colin@cozybit.com>
  * Copyright 2015-2017 Intel Deutschland GmbH
- * Copyright (C) 2018-2022 Intel Corporation
+ * Copyright (C) 2018-2023 Intel Corporation
  *
  * Permission to use, copy, modify, and/or distribute this software for any
  * purpose with or without fee is hereby granted, provided that the above
  * following events occur.
  * a) Expiration of hardware timer whose expiration time is set to maximum
  * coalescing delay of matching coalesce rule.
- * b) Coalescing buffer in hardware reaches it's limit.
+ * b) Coalescing buffer in hardware reaches its limit.
  * c) Packet doesn't match any of the configured coalesce rules.
  *
  * User needs to configure following parameters for creating a coalesce
 /**
  * DOC: Multi-Link Operation
  *
- * In Multi-Link Operation, a connection between to MLDs utilizes multiple
+ * In Multi-Link Operation, a connection between two MLDs utilizes multiple
  * links. To use this in nl80211, various commands and responses now need
  * to or will include the new %NL80211_ATTR_MLO_LINKS attribute.
  * Additionally, various commands that need to operate on a specific link
  * use %NL80211_CMD_START_AP or similar functions.
  */
 
+/**
+ * DOC: OWE DH IE handling offload
+ *
+ * By setting @NL80211_EXT_FEATURE_OWE_OFFLOAD flag, drivers can indicate
+ * kernel/application space to avoid DH IE handling. When this flag is
+ * advertised, the driver/device will take care of DH IE inclusion and
+ * processing of peer DH IE to generate PMK.
+ */
+
 /**
  * enum nl80211_commands - supported nl80211 commands
  *
  *     The number of peers that HW timestamping can be enabled for concurrently
  *     is indicated by %NL80211_ATTR_MAX_HW_TIMESTAMP_PEERS.
  *
+ * @NL80211_CMD_LINKS_REMOVED: Notify userspace about the removal of STA MLD
+ *     setup links due to AP MLD removing the corresponding affiliated APs with
+ *     Multi-Link reconfiguration. %NL80211_ATTR_MLO_LINKS is used to provide
+ *     information about the removed STA MLD setup links.
+ *
  * @NL80211_CMD_MAX: highest used command number
  * @__NL80211_CMD_AFTER_LAST: internal use
  */
@@ -1562,6 +1576,8 @@ enum nl80211_commands {
 
        NL80211_CMD_SET_HW_TIMESTAMP,
 
+       NL80211_CMD_LINKS_REMOVED,
+
        /* add new commands above here */
 
        /* used to define NL80211_CMD_MAX below */
@@ -2683,11 +2699,13 @@ enum nl80211_commands {
  *
  * @NL80211_ATTR_FILS_DISCOVERY: Optional parameter to configure FILS
  *     discovery. It is a nested attribute, see
- *     &enum nl80211_fils_discovery_attributes.
+ *     &enum nl80211_fils_discovery_attributes. Userspace should pass an empty
+ *     nested attribute to disable this feature and delete the templates.
  *
  * @NL80211_ATTR_UNSOL_BCAST_PROBE_RESP: Optional parameter to configure
  *     unsolicited broadcast probe response. It is a nested attribute, see
- *     &enum nl80211_unsol_bcast_probe_resp_attributes.
+ *     &enum nl80211_unsol_bcast_probe_resp_attributes. Userspace should pass an empty
+ *     nested attribute to disable this feature and delete the templates.
  *
  * @NL80211_ATTR_S1G_CAPABILITY: S1G Capability information element (from
  *     association request when used with NL80211_CMD_NEW_STATION)
@@ -2805,6 +2823,9 @@ enum nl80211_commands {
  *     index. If the userspace includes more RNR elements than number of
  *     MBSSID elements then these will be added in every EMA beacon.
  *
+ * @NL80211_ATTR_MLO_LINK_DISABLED: Flag attribute indicating that the link is
+ *     disabled.
+ *
  * @NUM_NL80211_ATTR: total number of nl80211_attrs available
  * @NL80211_ATTR_MAX: highest attribute number currently defined
  * @__NL80211_ATTR_AFTER_LAST: internal use
@@ -3341,6 +3362,8 @@ enum nl80211_attrs {
 
        NL80211_ATTR_EMA_RNR_ELEMS,
 
+       NL80211_ATTR_MLO_LINK_DISABLED,
+
        /* add attributes here, update the policy in nl80211.c */
 
        __NL80211_ATTR_AFTER_LAST,
@@ -3667,6 +3690,13 @@ enum nl80211_eht_ru_alloc {
  *     (u8, see &enum nl80211_eht_gi)
  * @NL80211_RATE_INFO_EHT_RU_ALLOC: EHT RU allocation, if not present then
  *     non-OFDMA was used (u8, see &enum nl80211_eht_ru_alloc)
+ * @NL80211_RATE_INFO_S1G_MCS: S1G MCS index (u8, 0-10)
+ * @NL80211_RATE_INFO_S1G_NSS: S1G NSS value (u8, 1-4)
+ * @NL80211_RATE_INFO_1_MHZ_WIDTH: 1 MHz S1G rate
+ * @NL80211_RATE_INFO_2_MHZ_WIDTH: 2 MHz S1G rate
+ * @NL80211_RATE_INFO_4_MHZ_WIDTH: 4 MHz S1G rate
+ * @NL80211_RATE_INFO_8_MHZ_WIDTH: 8 MHz S1G rate
+ * @NL80211_RATE_INFO_16_MHZ_WIDTH: 16 MHz S1G rate
  * @__NL80211_RATE_INFO_AFTER_LAST: internal use
  */
 enum nl80211_rate_info {
@@ -3693,6 +3723,13 @@ enum nl80211_rate_info {
        NL80211_RATE_INFO_EHT_NSS,
        NL80211_RATE_INFO_EHT_GI,
        NL80211_RATE_INFO_EHT_RU_ALLOC,
+       NL80211_RATE_INFO_S1G_MCS,
+       NL80211_RATE_INFO_S1G_NSS,
+       NL80211_RATE_INFO_1_MHZ_WIDTH,
+       NL80211_RATE_INFO_2_MHZ_WIDTH,
+       NL80211_RATE_INFO_4_MHZ_WIDTH,
+       NL80211_RATE_INFO_8_MHZ_WIDTH,
+       NL80211_RATE_INFO_16_MHZ_WIDTH,
 
        /* keep last */
        __NL80211_RATE_INFO_AFTER_LAST,
@@ -4187,6 +4224,8 @@ enum nl80211_wmm_rule {
  *     as the primary or any of the secondary channels isn't possible
  * @NL80211_FREQUENCY_ATTR_NO_EHT: EHT operation is not allowed on this channel
  *     in current regulatory domain.
+ * @NL80211_FREQUENCY_ATTR_PSD: Power spectral density (in dBm) that
+ *     is allowed on this channel in current regulatory domain.
  * @NL80211_FREQUENCY_ATTR_MAX: highest frequency attribute number
  *     currently defined
  * @__NL80211_FREQUENCY_ATTR_AFTER_LAST: internal use
@@ -4225,6 +4264,7 @@ enum nl80211_frequency_attr {
        NL80211_FREQUENCY_ATTR_16MHZ,
        NL80211_FREQUENCY_ATTR_NO_320MHZ,
        NL80211_FREQUENCY_ATTR_NO_EHT,
+       NL80211_FREQUENCY_ATTR_PSD,
 
        /* keep last */
        __NL80211_FREQUENCY_ATTR_AFTER_LAST,
@@ -4325,6 +4365,8 @@ enum nl80211_reg_type {
  *     a given frequency range. The value is in mBm (100 * dBm).
  * @NL80211_ATTR_DFS_CAC_TIME: DFS CAC time in milliseconds.
  *     If not present or 0 default CAC time will be used.
+ * @NL80211_ATTR_POWER_RULE_PSD: power spectral density (in dBm).
+ *     This could be negative.
  * @NL80211_REG_RULE_ATTR_MAX: highest regulatory rule attribute number
  *     currently defined
  * @__NL80211_REG_RULE_ATTR_AFTER_LAST: internal use
@@ -4342,6 +4384,8 @@ enum nl80211_reg_rule_attr {
 
        NL80211_ATTR_DFS_CAC_TIME,
 
+       NL80211_ATTR_POWER_RULE_PSD,
+
        /* keep last */
        __NL80211_REG_RULE_ATTR_AFTER_LAST,
        NL80211_REG_RULE_ATTR_MAX = __NL80211_REG_RULE_ATTR_AFTER_LAST - 1
@@ -4424,6 +4468,8 @@ enum nl80211_sched_scan_match_attr {
  * @NL80211_RRF_NO_160MHZ: 160MHz operation not allowed
  * @NL80211_RRF_NO_HE: HE operation not allowed
  * @NL80211_RRF_NO_320MHZ: 320MHz operation not allowed
+ * @NL80211_RRF_NO_EHT: EHT operation not allowed
+ * @NL80211_RRF_PSD: Ruleset has power spectral density value
  */
 enum nl80211_reg_rule_flags {
        NL80211_RRF_NO_OFDM             = 1<<0,
@@ -4443,6 +4489,8 @@ enum nl80211_reg_rule_flags {
        NL80211_RRF_NO_160MHZ           = 1<<16,
        NL80211_RRF_NO_HE               = 1<<17,
        NL80211_RRF_NO_320MHZ           = 1<<18,
+       NL80211_RRF_NO_EHT              = 1<<19,
+       NL80211_RRF_PSD                 = 1<<20,
 };
 
 #define NL80211_RRF_PASSIVE_SCAN       NL80211_RRF_NO_IR
@@ -5010,7 +5058,7 @@ enum nl80211_bss_scan_width {
  *     elements from a Beacon frame (bin); not present if no Beacon frame has
  *     yet been received
  * @NL80211_BSS_CHAN_WIDTH: channel width of the control channel
- *     (u32, enum nl80211_bss_scan_width)
+ *     (u32, enum nl80211_bss_scan_width) - No longer used!
  * @NL80211_BSS_BEACON_TSF: TSF of the last received beacon (u64)
  *     (not present if no beacon frame has been received yet)
  * @NL80211_BSS_PRESP_DATA: the data in @NL80211_BSS_INFORMATION_ELEMENTS and
@@ -6372,6 +6420,12 @@ enum nl80211_feature_flags {
  *     in authentication and deauthentication frames sent to unassociated peer
  *     using @NL80211_CMD_FRAME.
  *
+ * @NL80211_EXT_FEATURE_OWE_OFFLOAD: Driver/Device wants to do OWE DH IE
+ *     handling in station mode.
+ *
+ * @NL80211_EXT_FEATURE_OWE_OFFLOAD_AP: Driver/Device wants to do OWE DH IE
+ *     handling in AP mode.
+ *
  * @NUM_NL80211_EXT_FEATURES: number of extended features.
  * @MAX_NL80211_EXT_FEATURES: highest extended feature index.
  */
@@ -6443,6 +6497,8 @@ enum nl80211_ext_feature_index {
        NL80211_EXT_FEATURE_PUNCT,
        NL80211_EXT_FEATURE_SECURE_NAN,
        NL80211_EXT_FEATURE_AUTH_AND_DEAUTH_RANDOM_TA,
+       NL80211_EXT_FEATURE_OWE_OFFLOAD,
+       NL80211_EXT_FEATURE_OWE_OFFLOAD_AP,
 
        /* add new features before the definition below */
        NUM_NL80211_EXT_FEATURES,
@@ -7578,7 +7634,7 @@ enum nl80211_iftype_akm_attributes {
  * @NL80211_FILS_DISCOVERY_ATTR_INT_MIN: Minimum packet interval (u32, TU).
  *     Allowed range: 0..10000 (TU = Time Unit)
  * @NL80211_FILS_DISCOVERY_ATTR_INT_MAX: Maximum packet interval (u32, TU).
- *     Allowed range: 0..10000 (TU = Time Unit)
+ *     Allowed range: 0..10000 (TU = Time Unit). If set to 0, the feature is disabled.
  * @NL80211_FILS_DISCOVERY_ATTR_TMPL: Template data for FILS discovery action
  *     frame including the headers.
  *
@@ -7611,7 +7667,8 @@ enum nl80211_fils_discovery_attributes {
  *
  * @NL80211_UNSOL_BCAST_PROBE_RESP_ATTR_INT: Maximum packet interval (u32, TU).
  *     Allowed range: 0..20 (TU = Time Unit). IEEE P802.11ax/D6.0
- *     26.17.2.3.2 (AP behavior for fast passive scanning).
+ *     26.17.2.3.2 (AP behavior for fast passive scanning). If set to 0, the feature is
+ *     disabled.
  * @NL80211_UNSOL_BCAST_PROBE_RESP_ATTR_TMPL: Unsolicited broadcast probe response
  *     frame template (binary).
  *