]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
nl80211: Add a capability flag for RSN overriding
authorVeerendranath Jakkam <quic_vjakkam@quicinc.com>
Thu, 13 Jun 2024 06:43:14 +0000 (12:13 +0530)
committerJouni Malinen <j@w1.fi>
Sat, 20 Jul 2024 18:28:28 +0000 (21:28 +0300)
Add a new capability flag based on the nl80211 feature advertisement for
RSN overriding support.

Signed-off-by: Veerendranath Jakkam <quic_vjakkam@quicinc.com>
src/drivers/driver.h
src/drivers/driver_nl80211.c
src/drivers/driver_nl80211_capa.c

index 3e77474899ebb4716c7104d566ceb4f20efe5afb..4331782d897adeb11f6842a503cbb8d1935ef1bf 100644 (file)
@@ -2330,6 +2330,8 @@ struct wpa_driver_capa {
 #define WPA_DRIVER_FLAGS2_SAE_OFFLOAD_AP       0x0000000000100000ULL
 /** Driver supports TWT responder in HT and VHT modes */
 #define WPA_DRIVER_FLAGS2_HT_VHT_TWT_RESPONDER 0x0000000000200000ULL
+/** Driver supports RSN override elements */
+#define WPA_DRIVER_FLAGS2_RSN_OVERRIDE_STA     0x0000000000400000ULL
        u64 flags2;
 
 #define FULL_AP_CLIENT_STATE_SUPP(drv_flags) \
index e6fbad96d57fcf3be090b0021ed3c320171ab9d1..39f58ff839c499afa634eff888f798ed33d43d88 100644 (file)
@@ -9899,6 +9899,9 @@ static int nl80211_set_param(void *priv, const char *param)
                        WPA_DRIVER_FLAGS2_SEC_LTF_AP;
        }
 
+       if (os_strstr(param, "rsn_override_in_driver=1"))
+               drv->capa.flags2 |= WPA_DRIVER_FLAGS2_RSN_OVERRIDE_STA;
+
        return 0;
 }
 
index dc16bd4458da8f2ea92cf5abb0eeddf74ffdb5af..240d01d3d6e25f71ccf8987af8474b2c26a20e72 100644 (file)
@@ -1443,6 +1443,12 @@ static void qca_nl80211_get_features(struct wpa_driver_nl80211_data *drv)
                drv->qca_ap_allowed_freqs = 1;
        if (check_feature(QCA_WLAN_VENDOR_FEATURE_HT_VHT_TWT_RESPONDER, &info))
                drv->capa.flags2 |= WPA_DRIVER_FLAGS2_HT_VHT_TWT_RESPONDER;
+       if (check_feature(QCA_WLAN_VENDOR_FEATURE_RSN_OVERRIDE_STA, &info)) {
+               wpa_printf(MSG_DEBUG,
+                          "The driver supports RSN overriding in STA mode");
+               drv->capa.flags2 |= WPA_DRIVER_FLAGS2_RSN_OVERRIDE_STA;
+       }
+
        os_free(info.flags);
 }