[prev in list] [next in list] [prev in thread] [next in thread] 

List:       hostap
Subject:    [PATCH] check for driver SME support when selecting FT suites
From:       Matthew Wang <matthewmwang () chromium ! org>
Date:       2019-02-27 1:21:39
Message-ID: 20190227012139.188973-1-matthewmwang () chromium ! org
[Download RAW message or body]

Fast BSS Transition (802.11r) cannot be performed without driver support for
Station Management Entity (SME). However, wpa_supplicant will select FT suites
(FT-PSK and FT-EAP) even when the driver does not support it. This change has
wpa_supplicant select the FT suites only if the driver supports SME.
---
 wpa_supplicant/wpa_supplicant.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/wpa_supplicant/wpa_supplicant.c b/wpa_supplicant/wpa_supplicant.c
index 20ae588ad..0a758f840 100644
--- a/wpa_supplicant/wpa_supplicant.c
+++ b/wpa_supplicant/wpa_supplicant.c
@@ -1440,7 +1440,8 @@ int wpa_supplicant_set_suites(struct wpa_supplicant *wpa_s,
 			pmksa_cache_clear_current(wpa_s->wpa);
 		}
 #endif /* CONFIG_SHA384 */
-	} else if (sel & WPA_KEY_MGMT_FT_IEEE8021X) {
+	} else if ((sel & WPA_KEY_MGMT_FT_IEEE8021X) &&
+		   (wpa_s->drv_flags & WPA_DRIVER_FLAGS_SME)) {
 		wpa_s->key_mgmt = WPA_KEY_MGMT_FT_IEEE8021X;
 		wpa_dbg(wpa_s, MSG_DEBUG, "WPA: using KEY_MGMT FT/802.1X");
 		if (pmksa_cache_get_current(wpa_s->wpa)) {
@@ -1450,7 +1451,8 @@ int wpa_supplicant_set_suites(struct wpa_supplicant *wpa_s,
 				"WPA: Disable PMKSA caching for FT/802.1X connection");
 			pmksa_cache_clear_current(wpa_s->wpa);
 		}
-	} else if (sel & WPA_KEY_MGMT_FT_PSK) {
+	} else if ((sel & WPA_KEY_MGMT_FT_PSK) &&
+		   (wpa_s->drv_flags & WPA_DRIVER_FLAGS_SME)) {
 		wpa_s->key_mgmt = WPA_KEY_MGMT_FT_PSK;
 		wpa_dbg(wpa_s, MSG_DEBUG, "WPA: using KEY_MGMT FT/PSK");
 #endif /* CONFIG_IEEE80211R */
-- 
2.21.0.rc2.261.ga7da99ff1b-goog


_______________________________________________
Hostap mailing list
Hostap@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/hostap
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic