tests: Random MAC address in scans while connected

Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
This commit is contained in:
Jouni Malinen 2016-11-25 22:48:26 +02:00 committed by Jouni Malinen
parent 346b333d9a
commit dff690b859
2 changed files with 27 additions and 1 deletions

View file

@ -790,6 +790,29 @@ def _test_scan_random_mac(dev, apdev, params):
if not found:
raise Exception("Fixed OUI random address not seen")
def test_scan_random_mac_connected(dev, apdev, params):
"""Random MAC address in scans while connected"""
try:
_test_scan_random_mac_connected(dev, apdev, params)
finally:
dev[0].request("MAC_RAND_SCAN all enable=0")
def _test_scan_random_mac_connected(dev, apdev, params):
hostapd.add_ap(apdev[0], { "ssid": "test-scan" })
bssid = apdev[0]['bssid']
if dev[0].get_driver_status_field('capa.mac_addr_rand_scan_supported') != '1':
raise HwsimSkip("Driver does not support random MAC address for scanning")
dev[0].connect("test-scan", key_mgmt="NONE", scan_freq="2412")
hostapd.add_ap(apdev[1], { "ssid": "test-scan-2", "channel": "11" })
bssid1 = apdev[1]['bssid']
# Verify that scanning can be completed while connected even if that means
# disabling use of random MAC address.
dev[0].request("MAC_RAND_SCAN all enable=1")
dev[0].scan_for_bss(bssid1, freq=2462, force_scan=True)
@remote_compatible
def test_scan_trigger_failure(dev, apdev):
"""Scan trigger to the driver failing"""

View file

@ -1053,9 +1053,12 @@ class WpaSupplicant:
raise Exception("Failed to trigger scan")
if no_wait:
return
ev = self.wait_event(["CTRL-EVENT-SCAN-RESULTS"], 15)
ev = self.wait_event(["CTRL-EVENT-SCAN-RESULTS",
"CTRL-EVENT-SCAN-FAILED"], 15)
if ev is None:
raise Exception("Scan timed out")
if "CTRL-EVENT-SCAN-FAILED" in ev:
raise Exception("Scan failed: " + ev)
def scan_for_bss(self, bssid, freq=None, force_scan=False, only_new=False):
if not force_scan and self.get_bss(bssid) is not None: