From e03822913dff653989ee67adccfa4b81d35f7fc2 Mon Sep 17 00:00:00 2001 From: Michael Braun Date: Thu, 18 May 2017 15:21:52 +0200 Subject: [PATCH] tests: Add a small sleep in FT run_roams() time.sleep() in run_roams() is required because the target AP sets the key once the station was associated. There are races, when the station processes the (Re)Association Response frame AND the test suite starts FT_DS before the AP processes its local confirmation and thus wpa_auth_sm_event(ASSOC_FT). Therefore, the ActionFrame will be lost, as the AP driver is missing the key. Since this is this speed is highly synthetic, wait a few milliseconds before roaming back. Signed-off-by: Michael Braun --- tests/hwsim/test_ap_ft.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tests/hwsim/test_ap_ft.py b/tests/hwsim/test_ap_ft.py index 122afcd03..6b4d558f0 100644 --- a/tests/hwsim/test_ap_ft.py +++ b/tests/hwsim/test_ap_ft.py @@ -163,6 +163,9 @@ def run_roams(dev, apdev, hapd0, hapd1, ssid, passphrase, over_ds=False, dev.scan_for_bss(ap2['bssid'], freq="2412") for i in range(0, roams): + # Roaming artificially fast can make data test fail because the key is + # set later. + time.sleep(0.01) logger.info("Roam to the second AP") if over_ds: dev.roam_over_ds(ap2['bssid'], fail_test=fail_test) @@ -178,6 +181,9 @@ def run_roams(dev, apdev, hapd0, hapd1, ssid, passphrase, over_ds=False, else: hwsim_utils.test_connectivity(dev, hapd2ap) + # Roaming artificially fast can make data test fail because the key is + # set later. + time.sleep(0.01) logger.info("Roam back to the first AP") if over_ds: dev.roam_over_ds(ap1['bssid'])