diff mbox series

check for LEAP before doing FT

Message ID 20190808200212.207583-1-matthewmwang@chromium.org
State Accepted
Headers show
Series check for LEAP before doing FT | expand

Commit Message

Matthew Wang Aug. 8, 2019, 8:02 p.m. UTC
According to https://www.cisco.com/c/en/us/td/docs/wireless/controller/technotes/80211r-ft/b-80211r-dg.html
Cisco does not support EAP-LEAP with Fast Transition. Here,
we check for LEAP before selected FT 802.1X key management
suite.

Signed-off-by: Matthew Wang <matthewmwang@chromium.org>
---
 wpa_supplicant/wpa_supplicant.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

Comments

Jouni Malinen Aug. 11, 2019, 3:25 p.m. UTC | #1
On Thu, Aug 08, 2019 at 01:02:12PM -0700, Matthew Wang wrote:
> According to https://www.cisco.com/c/en/us/td/docs/wireless/controller/technotes/80211r-ft/b-80211r-dg.html
> Cisco does not support EAP-LEAP with Fast Transition. Here,
> we check for LEAP before selected FT 802.1X key management
> suite.

Thanks, applied.
diff mbox series

Patch

diff --git a/wpa_supplicant/wpa_supplicant.c b/wpa_supplicant/wpa_supplicant.c
index 911d79d17..a2953ee45 100644
--- a/wpa_supplicant/wpa_supplicant.c
+++ b/wpa_supplicant/wpa_supplicant.c
@@ -1413,7 +1413,8 @@  int wpa_supplicant_set_suites(struct wpa_supplicant *wpa_s,
 	if (0) {
 #ifdef CONFIG_IEEE80211R
 #ifdef CONFIG_SHA384
-	} else if (sel & WPA_KEY_MGMT_FT_IEEE8021X_SHA384) {
+	} else if (sel & WPA_KEY_MGMT_FT_IEEE8021X_SHA384 &&
+		   (os_strcmp(wpa_supplicant_get_eap_mode(wpa_s), "LEAP") != 0)) {
 		wpa_s->key_mgmt = WPA_KEY_MGMT_FT_IEEE8021X_SHA384;
 		wpa_dbg(wpa_s, MSG_DEBUG,
 			"WPA: using KEY_MGMT FT/802.1X-SHA384");
@@ -1456,7 +1457,8 @@  int wpa_supplicant_set_suites(struct wpa_supplicant *wpa_s,
 		wpa_dbg(wpa_s, MSG_DEBUG, "WPA: using KEY_MGMT FILS-SHA256");
 #endif /* CONFIG_FILS */
 #ifdef CONFIG_IEEE80211R
-	} else if (sel & WPA_KEY_MGMT_FT_IEEE8021X) {
+	} else if (sel & WPA_KEY_MGMT_FT_IEEE8021X &&
+		   (os_strcmp(wpa_supplicant_get_eap_mode(wpa_s), "LEAP") != 0)) {
 		wpa_s->key_mgmt = WPA_KEY_MGMT_FT_IEEE8021X;
 		wpa_dbg(wpa_s, MSG_DEBUG, "WPA: using KEY_MGMT FT/802.1X");
 		if (!ssid->ft_eap_pmksa_caching &&