]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
FT: Clear SME FT data on disassoc
authorAhmad Masri <amasri@codeaurora.org>
Mon, 30 Apr 2018 10:42:04 +0000 (13:42 +0300)
committerJouni Malinen <j@w1.fi>
Fri, 4 May 2018 17:56:52 +0000 (20:56 +0300)
SME ft_used flag is sometimes not cleared on disassoc. For example,
after initial FT connection, ft_used is set while ft_ies stays NULL.
Later on, upon disassoc, sme_update_ft_ies() is not invoked and ft_used
is not cleared. Fix this by invoking sme_update_ft_ies() also in case
ft_used is set.

This is needed to fix an issue with drivers that use nl80211 Connect API
with FT and expect to the NL80211_AUTHTYPE_OPEN specified in the Connect
command for the initial mobility domain association.

Signed-off-by: Ahmad Masri <amasri@codeaurora.org>
wpa_supplicant/sme.c

index 97f2d0b38f60e623385bb6141985901b1ca5d39d..1348e1c29c243cff6af83db53057bd4907214f69 100644 (file)
@@ -1729,7 +1729,7 @@ void sme_clear_on_disassoc(struct wpa_supplicant *wpa_s)
        sae_clear_data(&wpa_s->sme.sae);
 #endif /* CONFIG_SAE */
 #ifdef CONFIG_IEEE80211R
-       if (wpa_s->sme.ft_ies)
+       if (wpa_s->sme.ft_ies || wpa_s->sme.ft_used)
                sme_update_ft_ies(wpa_s, NULL, NULL, 0);
 #endif /* CONFIG_IEEE80211R */
 }