diff mbox

[v2,29/33] FT: handle OVER_DS reassociate client retry

Message ID 1474750454-6626-30-git-send-email-michael-dev@fami-braun.de
State Deferred
Headers show

Commit Message

michael-dev Sept. 24, 2016, 8:54 p.m. UTC
Signed-off-by: Michael Braun <michael-dev@fami-braun.de>
---
 src/ap/ieee802_11.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)
diff mbox

Patch

diff --git a/src/ap/ieee802_11.c b/src/ap/ieee802_11.c
index 1c871e3..b5b24e2 100644
--- a/src/ap/ieee802_11.c
+++ b/src/ap/ieee802_11.c
@@ -2167,6 +2167,19 @@  static void handle_assoc(struct hostapd_data *hapd,
 		 */
 		sta->flags |= WLAN_STA_AUTH;
 	} else
+	if (sta && sta->auth_alg == WLAN_AUTH_FT &&
+	    (sta->flags & WLAN_STA_AUTH) == 0 &&
+	    (sta->flags & WLAN_STA_PREAUTH_FT_OVER_DS) == 0 &&
+	    (sta->flags & WLAN_STA_ASSOC)) {
+		hostapd_logger(hapd, mgmt->sa, HOSTAPD_MODULE_IEEE80211,
+			       HOSTAPD_LEVEL_DEBUG,
+			       "FT: Already associated STA " MACSTR " try to "
+			       "connect without authenticated and with OVER_DS "
+			       "cleared but using FT. Ignore as it might be a "
+			       "retry.",
+			   MAC2STR(mgmt->sa));
+		return;
+	} else
 #endif /* CONFIG_IEEE80211R */
 	if (sta == NULL || (sta->flags & WLAN_STA_AUTH) == 0) {
 		hostapd_logger(hapd, mgmt->sa, HOSTAPD_MODULE_IEEE80211,