aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArik Nemtsov <arik@wizery.com>2015-12-10 12:56:07 +0200
committerGlen Kuhne <kuh@google.com>2017-10-10 10:42:51 -0700
commita7baabbbe719f153fa05ee3858cae1dff914f183 (patch)
tree52681974a65bb35cdfc3006f8c845b35a998b065
parente52ae8e63a78f72480c802930053c727ce1ee724 (diff)
downloadandroid_external_wpa_supplicant_8-a7baabbbe719f153fa05ee3858cae1dff914f183.tar.gz
android_external_wpa_supplicant_8-a7baabbbe719f153fa05ee3858cae1dff914f183.tar.bz2
android_external_wpa_supplicant_8-a7baabbbe719f153fa05ee3858cae1dff914f183.zip
TDLS: Ignore incoming TDLS Setup Response retries
The Setup Response timer is relatively fast (500 ms) and there are instances where it fires on the responder side after the initiator has already sent out the TDLS Setup Confirm frame. Prevent the processing of this stale TDLS Setup Response frame on the initiator side. Bug: 65245581 Test: Wifi Integration Suite Merged-In: I0fadef8993a548d64a4280372bc105fefa11e62a Change-Id: I404ab3d3bb864d72c6189890d1d63d7b893f3f9e Signed-off-by: Arik Nemtsov <arikx.nemtsov@intel.com> Signed-off-by: Glen Kuhne <kuh@google.com>
-rw-r--r--src/rsn_supp/tdls.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/rsn_supp/tdls.c b/src/rsn_supp/tdls.c
index cd34223f..ceccda9d 100644
--- a/src/rsn_supp/tdls.c
+++ b/src/rsn_supp/tdls.c
@@ -2058,6 +2058,14 @@ static int wpa_tdls_process_tpk_m2(struct wpa_sm *sm, const u8 *src_addr,
"ignore TPK M2 from " MACSTR, MAC2STR(src_addr));
return -1;
}
+
+ if (peer->tpk_success) {
+ wpa_printf(MSG_INFO, "TDLS: Ignore incoming TPK M2 retry, from "
+ MACSTR " as TPK M3 was already sent",
+ MAC2STR(src_addr));
+ return 0;
+ }
+
wpa_tdls_tpk_retry_timeout_cancel(sm, peer, WLAN_TDLS_SETUP_REQUEST);
if (len < 3 + 2 + 1) {