tests: Handle scan result clearing more carefully in ap_country

If the ABORT_SCAN command succeeds, CTRL-EVENT-SCAN-RESULTS event is
delivered for the aborted scan. Following this with an immediate
flush_scan_cache() call can result in the first scan interpreting that
pending event as the completion and that results in trying to start
another scan while the first scan is still in progress.

Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
Jouni Malinen 2019-03-17 17:40:39 +02:00
parent 09bdbc6ed9
commit 2b4263d06f

View File

@ -132,8 +132,11 @@ def test_ap_country(dev, apdev):
if hapd: if hapd:
hapd.request("DISABLE") hapd.request("DISABLE")
dev[0].request("DISCONNECT") dev[0].request("DISCONNECT")
dev[0].request("ABORT_SCAN") res = dev[0].request("ABORT_SCAN")
dev[0].wait_event(["CTRL-EVENT-DISCONNECTED"], timeout=0.5) for i in range(2 if "OK" in res else 1):
dev[0].wait_event(["CTRL-EVENT-DISCONNECTED",
"CTRL-EVENT-SCAN-RESULTS"], timeout=0.5)
dev[0].dump_monitor()
hostapd.cmd_execute(apdev[0], ['iw', 'reg', 'set', '00']) hostapd.cmd_execute(apdev[0], ['iw', 'reg', 'set', '00'])
dev[0].wait_event(["CTRL-EVENT-REGDOM-CHANGE"], timeout=0.5) dev[0].wait_event(["CTRL-EVENT-REGDOM-CHANGE"], timeout=0.5)
dev[0].flush_scan_cache() dev[0].flush_scan_cache()