]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
AP: Reject association request upon invalid HE capabilities
authorRajkumar Manoharan <rmanohar@codeaurora.org>
Tue, 2 Jun 2020 06:14:28 +0000 (23:14 -0700)
committerJouni Malinen <j@w1.fi>
Wed, 10 Jun 2020 18:34:38 +0000 (21:34 +0300)
Operation in the 6 GHz band mandates valid HE capabilities element in
station negotiation. Reject association request upon receiving invalid
or missing HE elements.

Signed-off-by: Rajkumar Manoharan <rmanohar@codeaurora.org>
src/ap/ieee802_11.c
src/common/ieee802_11_common.c
src/common/ieee802_11_defs.h

index 6723f33ddd8a52dc40b6ef7aaf867faadbc2ea97..4f4e548c8996d07db46380887497e2c25322e691 100644 (file)
@@ -3230,6 +3230,13 @@ static int check_assoc_ies(struct hostapd_data *hapd, struct sta_info *sta,
                if (resp != WLAN_STATUS_SUCCESS)
                        return resp;
                if (is_6ghz_op_class(hapd->iconf->op_class)) {
+                       if (!(sta->flags & WLAN_STA_HE)) {
+                               hostapd_logger(hapd, sta->addr,
+                                              HOSTAPD_MODULE_IEEE80211,
+                                              HOSTAPD_LEVEL_INFO,
+                                              "Station does not support mandatory HE PHY - reject association");
+                               return WLAN_STATUS_DENIED_HE_NOT_SUPPORTED;
+                       }
                        resp = copy_sta_he_6ghz_capab(hapd, sta,
                                                      elems.he_6ghz_band_cap);
                        if (resp != WLAN_STATUS_SUCCESS)
index 9cd631783dab9910fda75e3793fca00921375aed..c4e744693d5615f5d0fc05e51dae3120e021364d 100644 (file)
@@ -1762,6 +1762,7 @@ const char * status2str(u16 status)
        S2S(FILS_AUTHENTICATION_FAILURE)
        S2S(UNKNOWN_AUTHENTICATION_SERVER)
        S2S(UNKNOWN_PASSWORD_IDENTIFIER)
+       S2S(DENIED_HE_NOT_SUPPORTED)
        S2S(SAE_HASH_TO_ELEMENT)
        S2S(SAE_PK)
        }
index da0e7bdcff1d704075591ff41b5df3fafb383da5..4d3037eee7e1a546f9946990610f4bb1afb46dc7 100644 (file)
 #define WLAN_STATUS_FILS_AUTHENTICATION_FAILURE 112
 #define WLAN_STATUS_UNKNOWN_AUTHENTICATION_SERVER 113
 #define WLAN_STATUS_UNKNOWN_PASSWORD_IDENTIFIER 123
+#define WLAN_STATUS_DENIED_HE_NOT_SUPPORTED 124
 #define WLAN_STATUS_SAE_HASH_TO_ELEMENT 126
 #define WLAN_STATUS_SAE_PK 127