]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
wifi: mwifiex: simplify WPA flags setting
authorSascha Hauer <s.hauer@pengutronix.de>
Mon, 5 Aug 2024 06:39:13 +0000 (08:39 +0200)
committerKalle Valo <kvalo@kernel.org>
Sat, 10 Aug 2024 07:35:28 +0000 (10:35 +0300)
The WPA flags setting only depends on the wpa_versions bitfield and not
on the AKM suite, so move it out of the switch/case to simplify the code
a bit. Also set bss_config->protocol to zero explicitly. This is done
only to make the code clearer, bss_config has been zero alloced by the
caller, so should be zero already. No functional change intended.

Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com>
Acked-by: Brian Norris <briannorris@chromium.org>
Link: https://lore.kernel.org/r/20240723-mwifiex-wpa-psk-sha256-v3-1-025168a91da1@pengutronix.de
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://patch.msgid.link/20240805-mwifiex-wpa-psk-sha256-v4-1-e1eee80508e6@pengutronix.de
drivers/net/wireless/marvell/mwifiex/uap_cmd.c

index 073c665183b3058e8f3b08af2a80b9db8f4ce1d7..51fcae8726ed0d9e5e2393541620dea4ba4703a4 100644 (file)
@@ -46,34 +46,21 @@ int mwifiex_set_secure_params(struct mwifiex_private *priv,
 
        bss_config->key_mgmt_operation |= KEY_MGMT_ON_HOST;
 
+       bss_config->protocol = 0;
+       if (params->crypto.wpa_versions & NL80211_WPA_VERSION_1)
+               bss_config->protocol |= PROTOCOL_WPA;
+       if (params->crypto.wpa_versions & NL80211_WPA_VERSION_2)
+               bss_config->protocol |= PROTOCOL_WPA2;
+
        for (i = 0; i < params->crypto.n_akm_suites; i++) {
                switch (params->crypto.akm_suites[i]) {
                case WLAN_AKM_SUITE_8021X:
-                       if (params->crypto.wpa_versions &
-                           NL80211_WPA_VERSION_1) {
-                               bss_config->protocol = PROTOCOL_WPA;
-                               bss_config->key_mgmt = KEY_MGMT_EAP;
-                       }
-                       if (params->crypto.wpa_versions &
-                           NL80211_WPA_VERSION_2) {
-                               bss_config->protocol |= PROTOCOL_WPA2;
-                               bss_config->key_mgmt = KEY_MGMT_EAP;
-                       }
+                       bss_config->key_mgmt = KEY_MGMT_EAP;
                        break;
                case WLAN_AKM_SUITE_PSK:
-                       if (params->crypto.wpa_versions &
-                           NL80211_WPA_VERSION_1) {
-                               bss_config->protocol = PROTOCOL_WPA;
-                               bss_config->key_mgmt = KEY_MGMT_PSK;
-                       }
-                       if (params->crypto.wpa_versions &
-                           NL80211_WPA_VERSION_2) {
-                               bss_config->protocol |= PROTOCOL_WPA2;
-                               bss_config->key_mgmt = KEY_MGMT_PSK;
-                       }
+                       bss_config->key_mgmt = KEY_MGMT_PSK;
                        break;
                case WLAN_AKM_SUITE_SAE:
-                       bss_config->protocol = PROTOCOL_WPA2;
                        bss_config->key_mgmt = KEY_MGMT_SAE;
                        break;
                default: