The branch main has been updated by bz:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=fa02d9fceab7d452d5b3312a89b4e7b95529edcd

commit fa02d9fceab7d452d5b3312a89b4e7b95529edcd
Author:     Bjoern A. Zeeb <b...@freebsd.org>
AuthorDate: 2025-06-02 16:00:37 +0000
Commit:     Bjoern A. Zeeb <b...@freebsd.org>
CommitDate: 2025-06-05 14:33:50 +0000

    net80211: add the beginning of the extfield information elements (IE ext)
    
    The original list of IEs got expanded from TLV to TLextTV.
    If the T matches 255 then we have a second list of IEs where the
    meaning of TL stays the same. That means the 1 octet extT is part
    of the length and the value starts at ie+3.
    
    Start populating the list with IEEE802.11-2020 and 802.11ax-2021
    values.
    
    They will be initially used to start decoding some of the announced IEs
    for ifconfig [-v] list (scan|sta).  That should help users with
    AX-enabled APs to see this (rather than no or UNKNOWN_ELEMID_255 and
    make debugging easier once we implement 11ax.
    
    Sposored by:    The FreeBSD Foundation
    MFC after:      3 days
    Reviewed by:    adrian
    Differential Revision: https://reviews.freebsd.org/D50674
---
 sys/net80211/ieee80211.h | 69 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 69 insertions(+)

diff --git a/sys/net80211/ieee80211.h b/sys/net80211/ieee80211.h
index bab74d0ca41c..cca721e6b54e 100644
--- a/sys/net80211/ieee80211.h
+++ b/sys/net80211/ieee80211.h
@@ -1102,6 +1102,7 @@ struct ieee80211_ie_vht_txpwrenv {
  * Management information element payloads.
  *
  * 802.11-2020 Table 9-92 (Element IDs).
+ * 802.11ax-2021
  */
 
 enum {
@@ -1343,6 +1344,74 @@ enum {
        IEEE80211_ELEMID_EXTFIELD       = 255
 };
 
+enum ieee80211_elemid_ext {
+       IEEE80211_ELEMID_EXT_ASSOC_DELAY_INFO           = 1,
+       IEEE80211_ELEMID_EXT_FILS_REQ_PARAMS            = 2,
+       IEEE80211_ELEMID_EXT_FILS_KEY_CONFIRM           = 3,
+       IEEE80211_ELEMID_EXT_FILS_SESSION               = 4,
+       IEEE80211_ELEMID_EXT_FILS_HLP_CONTAINER         = 5,
+       IEEE80211_ELEMID_EXT_FILS_IP_ADDR_ASSIGNMENT    = 6,
+       IEEE80211_ELEMID_EXT_KEY_DELIVERY               = 7,
+       IEEE80211_ELEMID_EXT_FILS_WRAPPED_DATA          = 8,
+       IEEE80211_ELEMID_EXT_FTM_SYNC_INFO              = 9,
+       IEEE80211_ELEMID_EXT_EXT_REQ                    = 10,
+       IEEE80211_ELEMID_EXT_EST_SERVICE_PARAM_INBOUND  = 11,
+       IEEE80211_ELEMID_EXT_FILS_PUBLIC_KEY            = 12,
+       IEEE80211_ELEMID_EXT_FILS_NONCE                 = 13,
+       IEEE80211_ELEMID_EXT_FUTURE_CHAN_GUIDANCE       = 14,
+       IEEE80211_ELEMID_EXT_SERVICE_HINT               = 15,
+       IEEE80211_ELEMID_EXT_SERVICE_HASH               = 16,
+       IEEE80211_ELEMID_EXT_CDMG_CAPA                  = 17,
+       IEEE80211_ELEMID_EXT_DYN_BW_CTRL                = 18,
+       IEEE80211_ELEMID_EXT_CDMG_EXT_SCHEDULE          = 19,
+       IEEE80211_ELEMID_EXT_SSW_REPORT                 = 20,
+       IEEE80211_ELEMID_EXT_CLUSTER_PROBE              = 21,
+       IEEE80211_ELEMID_EXT_EXT_CLUSTER_REPORT         = 22,
+       IEEE80211_ELEMID_EXT_CLUSTER_SW_ANNOUNCEMENT    = 23,
+       IEEE80211_ELEMID_EXT_ENHANCED_BEAM_TRACKING     = 24,
+       IEEE80211_ELEMID_EXT_SPSH_REPORT                = 25,
+       IEEE80211_ELEMID_EXT_CLUSTER_INTERF_ASSESS      = 26,
+       IEEE80211_ELEMID_EXT_CMMG_CAPA                  = 27,
+       IEEE80211_ELEMID_EXT_CMMG_OPER                  = 28,
+       IEEE80211_ELEMID_EXT_CMMG_OPMODE_NOTIF          = 29,
+       IEEE80211_ELEMID_EXT_CMMG_LINK_MARGIN           = 30,
+       IEEE80211_ELEMID_EXT_CMMG_LINK_ADAP_ACK         = 31,
+       /* 32 reserved. */
+       IEEE80211_ELEMID_EXT_PASSWORD_ID                = 33,
+       IEEE80211_ELEMID_EXT_GLK_GCR_PARAM_SET          = 34,
+       IEEE80211_ELEMID_EXT_HE_CAPA                    = 35,
+       IEEE80211_ELEMID_EXT_HE_OPER                    = 36,
+       IEEE80211_ELEMID_EXT_UORA_PARAM_SET             = 37,
+       IEEE80211_ELEMID_EXT_MU_EDCA_PARAM_SET          = 38,
+       IEEE80211_ELEMID_EXT_SPATIAL_REUSE_PARAM_SET    = 39,
+       IEEE80211_ELEMID_EXT_GAS_EXTENSION              = 40,
+       IEEE80211_ELEMID_EXT_NDP_FEEDB_REPORT_PARAM     = 41,
+       IEEE80211_ELEMID_EXT_BSS_COLOR_CHG_ANNOUNCE     = 42,
+       IEEE80211_ELEMID_EXT_QUIET_TIMME_PERIOD         = 43,
+       IEEE80211_ELEMID_EXT_VENDOR_SPECIFIC_REQ_ELEM   = 44,
+       IEEE80211_ELEMID_EXT_ESS_REPORT                 = 45,
+       IEEE80211_ELEMID_EXT_OPS                        = 46,
+       IEEE80211_ELEMID_EXT_HE_BSS_LOAD                = 47,
+       /* 48-51 reserved. */
+       IEEE80211_ELEMID_EXT_MAC_CH_SW_TIME             = 52,
+       IEEE80211_ELEMID_EXT_EST_SERVICE_PARAM_OUTBOUND = 53,
+       IEEE80211_ELEMID_EXT_OCI                        = 54,
+       IEEE80211_ELEMID_EXT_MULTI_BSSID_CONFIG         = 55,
+       IEEE80211_ELEMID_EXT_NON_INHERITANCE            = 56,
+       IEEE80211_ELEMID_EXT_KNOWN_BSSID                = 57,
+       IEEE80211_ELEMID_EXT_SHORT_SSID_LIST            = 58,
+       IEEE80211_ELEMID_EXT_HE_6GHZ_BAND_CAPA          = 59,
+       IEEE80211_ELEMID_EXT_ULMU_POWER_CAAP            = 60,
+       /* 61-87 reserved. */
+       IEEE80211_ELEMID_EXT_MSCS_DESCRIPTOR            = 88,
+       IEEE80211_ELEMID_EXT_TCLAS_MASK                 = 89,
+       IEEE80211_ELEMID_EXT_SUPPL_CLASS_2_CAPA         = 90,
+       IEEE80211_ELEMID_EXT_OCT_SOURCE                 = 91,
+       IEEE80211_ELEMID_EXT_REJECTED_GROUPS            = 92,
+       IEEE80211_ELEMID_EXT_ANTI_CLOGGING_TAOKEN_CONTAINER = 93,
+       /* 94-255 reserved. */
+};
+
 struct ieee80211_tim_ie {
        uint8_t         tim_ie;                 /* IEEE80211_ELEMID_TIM */
        uint8_t         tim_len;

Reply via email to