[PATCH 04/20] AP: Correctly set WLAN_RSNX_CAPAB_KEK_IN_PASN
Andrei Otcheretianski
andrei.otcheretianski at intel.com
Wed Jun 10 06:11:57 PDT 2026
From: Ilan Peer <ilan.peer at intel.com>
The WLAN_RSNX_CAPAB_KEK_IN_PASN should be set in the RSNXE
only when EPPKE is used.
Signed-off-by: Ilan Peer <ilan.peer at intel.com>
---
src/ap/ieee802_11_shared.c | 3 ++-
src/ap/wpa_auth_ie.c | 4 ++--
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/src/ap/ieee802_11_shared.c b/src/ap/ieee802_11_shared.c
index a6decab8d9..831fbb0978 100644
--- a/src/ap/ieee802_11_shared.c
+++ b/src/ap/ieee802_11_shared.c
@@ -1164,8 +1164,9 @@ u8 * hostapd_eid_rsnxe(struct hostapd_data *hapd, u8 *eid, size_t len)
(hapd->conf->assoc_frame_encryption ||
hapd->conf->pmksa_caching_privacy)) {
capab |= BIT(WLAN_RSNX_CAPAB_ASSOC_FRAME_ENCRYPTION);
- capab |= BIT(WLAN_RSNX_CAPAB_KEK_IN_PASN);
}
+ if (hapd->conf->wpa_key_mgmt & WPA_KEY_MGMT_EPPKE)
+ capab |= BIT(WLAN_RSNX_CAPAB_KEK_IN_PASN);
if (hapd->conf->pmksa_caching_privacy)
capab |= BIT(WLAN_RSNX_CAPAB_PMKSA_CACHING_PRIVACY);
if (hapd->conf->eap_using_authentication_frames)
diff --git a/src/ap/wpa_auth_ie.c b/src/ap/wpa_auth_ie.c
index 07abe86c8b..ff797f73e9 100644
--- a/src/ap/wpa_auth_ie.c
+++ b/src/ap/wpa_auth_ie.c
@@ -582,10 +582,10 @@ static u64 rsnxe_capab(struct wpa_auth_config *conf, int key_mgmt)
* Frame Encryption Support field in the RSNXE to 1.
*/
if (conf->assoc_frame_encryption ||
- conf->pmksa_caching_privacy) {
+ conf->pmksa_caching_privacy)
capab |= BIT(WLAN_RSNX_CAPAB_ASSOC_FRAME_ENCRYPTION);
+ if (key_mgmt & WPA_KEY_MGMT_EPPKE)
capab |= BIT(WLAN_RSNX_CAPAB_KEK_IN_PASN);
- }
if (conf->pmksa_caching_privacy)
capab |= BIT(WLAN_RSNX_CAPAB_PMKSA_CACHING_PRIVACY);
if (conf->eap_using_authentication_frames)
--
2.53.0
More information about the Hostap
mailing list