From 6aea02e579503adca9f4000b063a83ec4338724d Mon Sep 17 00:00:00 2001 From: Jouni Malinen Date: Tue, 21 Feb 2017 12:49:16 +0200 Subject: [PATCH] SME: Clear portValid on starting authentication to fix FILS The ft_completed for FILS authentication case in wpa_supplicant_event_assoc() depends on something having cleared portValid so that setting it TRUE ends up authorizing the port. This clearing part did not happen when using FILS authentication during a reassociation within an ESS. Fix this by clearing portValid in sme_send_authentication() just before the keys are cleared (i.e., the old connection would not be usable anyway). Signed-off-by: Jouni Malinen --- wpa_supplicant/sme.c | 1 + 1 file changed, 1 insertion(+) diff --git a/wpa_supplicant/sme.c b/wpa_supplicant/sme.c index cf16bf7c5..b57f167b1 100644 --- a/wpa_supplicant/sme.c +++ b/wpa_supplicant/sme.c @@ -572,6 +572,7 @@ static void sme_send_authentication(struct wpa_supplicant *wpa_s, " (SSID='%s' freq=%d MHz)", MAC2STR(params.bssid), wpa_ssid_txt(params.ssid, params.ssid_len), params.freq); + eapol_sm_notify_portValid(wpa_s->eapol, FALSE); wpa_clear_keys(wpa_s, bss->bssid); wpa_supplicant_set_state(wpa_s, WPA_AUTHENTICATING); if (old_ssid != wpa_s->current_ssid)