]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
PASN: Align RSNXE with IEEE P802.11az/D7.0 definitions
authorAndrei Otcheretianski <andrei.otcheretianski@intel.com>
Sun, 4 Dec 2022 12:46:15 +0000 (14:46 +0200)
committerJouni Malinen <j@w1.fi>
Fri, 16 Dec 2022 20:35:19 +0000 (22:35 +0200)
RSNXE bits were modified, so update the relevant places accordingly.
Please note, WLAN_RSNX_CAPAB_PROT_RANGE_NEG was renamed to
WLAN_RSNX_CAPAB_URNM_MFPR and the bit position is changed to 15 instead
of 10, while BIT 10 is used for WLAN_RSNX_CAPAB_URNM_MFPR_X20 and is not
supported yet.

Signed-off-by: Ilan Peer <ilan.peer@intel.com>
Signed-off-by: Andrei Otcheretianski <andrei.otcheretianski@intel.com>
src/ap/ieee802_11_shared.c
src/ap/wpa_auth_ie.c
src/common/ieee802_11_defs.h
src/rsn_supp/wpa_ie.c
wpa_supplicant/pasn_supplicant.c

index a7ab3a2d777a3bd3eaed4d1b8993d4345d5ca17f..31dfb62543b49d269b3679b677e51efaedced27c 100644 (file)
@@ -1095,7 +1095,7 @@ u8 * hostapd_eid_rsnxe(struct hostapd_data *hapd, u8 *eid, size_t len)
        if (hapd->iface->drv_flags2 & WPA_DRIVER_FLAGS2_SEC_RTT_AP)
                capab |= BIT(WLAN_RSNX_CAPAB_SECURE_RTT);
        if (hapd->iface->drv_flags2 & WPA_DRIVER_FLAGS2_PROT_RANGE_NEG_AP)
-               capab |= BIT(WLAN_RSNX_CAPAB_PROT_RANGE_NEG);
+               capab |= BIT(WLAN_RSNX_CAPAB_URNM_MFPR);
 
        flen = (capab & 0xff00) ? 2 : 1;
        if (len < 2 + flen || !capab)
index 2a17891032afee9792b728bc3150afb299a94b7d..89d4a3ca0347c7492ab9778277986ed4689a1376 100644 (file)
@@ -420,7 +420,7 @@ int wpa_write_rsnxe(struct wpa_auth_config *conf, u8 *buf, size_t len)
        if (conf->secure_rtt)
                capab |= BIT(WLAN_RSNX_CAPAB_SECURE_RTT);
        if (conf->prot_range_neg)
-               capab |= BIT(WLAN_RSNX_CAPAB_PROT_RANGE_NEG);
+               capab |= BIT(WLAN_RSNX_CAPAB_URNM_MFPR);
 
        flen = (capab & 0xff00) ? 2 : 1;
        if (!capab)
index 4bae8ff24a5616a0eec605e1e7ff7db95730e20f..be251d0e4d1901519b26b6c7d9833582d05d2bd0 100644 (file)
 #define WLAN_RSNX_CAPAB_SAE_PK 6
 #define WLAN_RSNX_CAPAB_SECURE_LTF 8
 #define WLAN_RSNX_CAPAB_SECURE_RTT 9
-#define WLAN_RSNX_CAPAB_PROT_RANGE_NEG 10
+#define WLAN_RSNX_CAPAB_URNM_MFPR_X20 10
+#define WLAN_RSNX_CAPAB_URNM_MFPR 15
 
 /* Multiple BSSID element subelements */
 #define WLAN_MBSSID_SUBELEMENT_NONTRANSMITTED_BSSID_PROFILE 0
index 2d7f68e8f47daac986e7b675bdd1b0169075f890..50bd2b276e83fb90ae9a3b815cc35d05b3092304 100644 (file)
@@ -376,7 +376,7 @@ int wpa_gen_rsnxe(struct wpa_sm *sm, u8 *rsnxe, size_t rsnxe_len)
        if (sm->secure_rtt)
                capab |= BIT(WLAN_RSNX_CAPAB_SECURE_RTT);
        if (sm->prot_range_neg)
-               capab |= BIT(WLAN_RSNX_CAPAB_PROT_RANGE_NEG);
+               capab |= BIT(WLAN_RSNX_CAPAB_URNM_MFPR);
 
        flen = (capab & 0xff00) ? 2 : 1;
        if (!capab)
index 12c2fccb16c4189c3174df665ed3e07dd9e0333d..edecfde8d6e5a39a225ff00059772c3bc54440ad 100644 (file)
@@ -577,7 +577,7 @@ static void wpas_pasn_auth_start_cb(struct wpa_radio_work *work, int deinit)
        if (wpa_s->drv_flags2 & WPA_DRIVER_FLAGS2_SEC_RTT_STA)
                capab |= BIT(WLAN_RSNX_CAPAB_SECURE_RTT);
        if (wpa_s->drv_flags2 & WPA_DRIVER_FLAGS2_PROT_RANGE_NEG_STA)
-               capab |= BIT(WLAN_RSNX_CAPAB_PROT_RANGE_NEG);
+               capab |= BIT(WLAN_RSNX_CAPAB_URNM_MFPR);
        pasn->rsnxe_capab = capab;
        pasn->send_mgmt = wpas_pasn_send_mlme;