eap_start = True
if "CTRL-EVENT-EAP-FAILURE" in ev:
eap_failure = True
+ dev[0].dump_monitor(mon=False)
dev[0].dump_monitor()
ev = hapd.wait_event(["AP-STA-DISCONNECTED"], timeout=0.1)
if ev:
eap_start = True
if "CTRL-EVENT-EAP-FAILURE" in ev:
eap_failure = True
+ dev[0].dump_monitor(mon=False)
dev[0].dump_monitor()
ev = hapd.wait_event(["AP-STA-DISCONNECTED"], timeout=0.1)
if ev:
if ev is None or "failed" not in ev:
raise Exception("Push button bootstrapping did not fail on AP")
while True:
- ev = dev[0].wait_event(["DPP-PB-RESULT", "DPP-RX"], timeout=100)
+ ev = dev[0].wait_event(["DPP-PB-RESULT", "DPP-RX", "DPP-TX"],
+ timeout=100)
if ev is None:
raise Exception("Push button result not reported on station")
+ dev[0].dump_monitor(mon=False)
if "DPP-PB-RESULT failed" in ev:
break
if "type=18" in ev:
raise Exception("Timeout on EAP start")
time.sleep(0.1)
dev[0].request("REMOVE_NETWORK all")
+ dev[0].dump_monitor()
logger.info("Too short password")
dev[0].connect("eap-test", key_mgmt="WPA-EAP", scan_freq="2412",
ev = dev[0].wait_event(["CTRL-EVENT-EAP-PROPOSED-METHOD"], timeout=15)
if ev is None:
raise Exception("Timeout on EAP start")
+ start = os.times()[4]
+ while True:
+ ev = dev[0].wait_event(["CTRL-EVENT-EAP-PROPOSED-METHOD"],
+ timeout=0.1)
+ if ev is None:
+ break
+ now = os.times()[4]
+ if now - start > 0.1:
+ break
+ dev[0].dump_monitor()
+
+ dev[0].request("REMOVE_NETWORK all")
time.sleep(0.1)
+ dev[0].dump_monitor()
finally:
stop_radius_server(srv)
ev = dev[0].wait_event(["CTRL-EVENT-DISCONNECTED"], timeout=1)
if ev is not None:
raise Exception("Unexpected disconnection")
+ dev[0].dump_monitor()
logger.info("Disconnect-Request with mismatching NAS-IP-Address")
req = radius_das.DisconnectPacket(dict=dict, secret=b"secret",
ev = dev[0].wait_event(["CTRL-EVENT-DISCONNECTED"], timeout=1)
if ev is not None:
raise Exception("Unexpected disconnection")
+ dev[0].dump_monitor()
logger.info("Disconnect-Request with matching Acct-Session-Id")
req = radius_das.DisconnectPacket(dict=dict, secret=b"secret",
hapd.wait_sta_disconnect(addr=dev[0].own_addr())
dev[0].wait_connected(timeout=10, error="Re-connection timed out")
hapd.wait_sta(addr=dev[0].own_addr())
+ dev[0].dump_monitor()
logger.info("Disconnect-Request with matching Acct-Multi-Session-Id")
sta = hapd.get_sta(addr)
hapd.wait_sta_disconnect(addr=dev[0].own_addr())
dev[0].wait_connected(timeout=10, error="Re-connection timed out")
hapd.wait_sta(addr=dev[0].own_addr())
+ dev[0].dump_monitor()
logger.info("Disconnect-Request with matching User-Name")
req = radius_das.DisconnectPacket(dict=dict, secret=b"secret",
hapd.wait_sta_disconnect(addr=dev[0].own_addr())
dev[0].wait_connected(timeout=10, error="Re-connection timed out")
hapd.wait_sta(addr=dev[0].own_addr())
+ dev[0].dump_monitor()
logger.info("Disconnect-Request with matching Calling-Station-Id")
req = radius_das.DisconnectPacket(dict=dict, secret=b"secret",
raise Exception("Unexpected skipping of EAP authentication in reconnection")
dev[0].wait_connected(timeout=10, error="Re-connection timed out")
hapd.wait_sta(addr=dev[0].own_addr())
+ dev[0].dump_monitor()
logger.info("Disconnect-Request with matching Calling-Station-Id and non-matching CUI")
req = radius_das.DisconnectPacket(dict=dict, secret=b"secret",
connect(dev[2], "radius-das")
hapd.wait_sta(addr=dev[2].own_addr())
+ dev[0].dump_monitor()
logger.info("Disconnect-Request with matching User-Name - multiple sessions matching")
req = radius_das.DisconnectPacket(dict=dict, secret=b"secret",
hapd.wait_sta_disconnect(addr=dev[0].own_addr())
dev[0].wait_connected(timeout=10, error="Re-connection timed out")
hapd.wait_sta(addr=dev[0].own_addr())
+ dev[0].dump_monitor()
ev = dev[2].wait_event(["CTRL-EVENT-DISCONNECTED"], timeout=1)
if ev is not None:
raise Exception("Timeout on EAP start")
dev[0].wait_connected(timeout=15)
hapd.wait_sta(addr=dev[0].own_addr())
+ dev[0].dump_monitor()
logger.info("Disconnect-Request with matching User-Name after disassociation")
dev[0].request("DISCONNECT")
dev[0].wait_disconnected(timeout=10)
+ dev[0].dump_monitor()
hapd.wait_sta_disconnect(addr=dev[0].own_addr())
dev[2].request("DISCONNECT")
dev[2].wait_disconnected(timeout=10)
raise Exception("Timeout on EAP start")
dev[0].wait_connected(timeout=15)
hapd.wait_sta(addr=dev[0].own_addr())
+ dev[0].dump_monitor()
dev[0].request("DISCONNECT")
dev[0].wait_disconnected(timeout=10)
hapd.wait_sta_disconnect(addr=dev[0].own_addr())
+ dev[0].dump_monitor()
req = radius_das.DisconnectPacket(dict=dict, secret=b"secret",
NAS_IP_Address="127.0.0.1",
NAS_Identifier="nas.example.com",
dut.cmd_check(cmd + extra)
dut.cmd_check("sta_associate,interface,%s,ssid,%s,channel,1" % (ifname, "test-suite-b"),
timeout=10)
+ dev[0].dump_monitor()
dut.wait_connected()
+ dev[0].dump_monitor()
dut.cmd_check("sta_get_ip_config,interface," + ifname)
dut.cmd_check("sta_disconnect,interface," + ifname)
dut.cmd_check("sta_reset_default,interface," + ifname)
+ dev[0].dump_monitor()
def test_sigma_dut_ap_suite_b(dev, apdev, params):
"""sigma_dut controlled AP Suite B"""
dev[0].connect("test-psk", key_mgmt="WPA-PSK-SHA256",
psk="12345678", scan_freq="2412",
ieee80211w="2", beacon_prot="1")
- time.sleep(1)
+ for i in range(10):
+ dev[0].dump_monitor()
+ time.sleep(0.1)
valid_bip = wt.get_bss_counter('valid_bip_mmie', bssid)
invalid_bip = wt.get_bss_counter('invalid_bip_mmie', bssid)
@remote_compatible
def test_wpas_ctrl_many_networks(dev, apdev):
"""wpa_supplicant ctrl_iface LIST_NETWORKS with huge number of networks"""
- for i in range(1000):
- id = dev[0].add_network()
+ for i in range(999):
+ dev[0].add_network()
+ dev[0].dump_monitor()
+ id = dev[0].add_network()
ev = dev[0].wait_event(["CTRL-EVENT-NETWORK-ADDED %d" % id])
if ev is None:
raise Exception("Network added event not seen for the last network")
# power CPU, so increase the command timeout significantly to avoid issues
# with the test case failing and following reset operation timing out.
dev[0].request("REMOVE_NETWORK all", timeout=60)
- ev = dev[0].wait_event(["CTRL-EVENT-NETWORK-REMOVED %d" % id])
- if ev is None:
- raise Exception("Network removed event not seen for the last network")
- ev = dev[0].wait_global_event(["CTRL-EVENT-NETWORK-REMOVED %d" % id], timeout=10)
- if ev is None:
- raise Exception("Network removed event (global) not seen for the last network")
+ seen = seen_global = False
+
+ for i in range(1000):
+ ev = dev[0].wait_event(["CTRL-EVENT-NETWORK-REMOVED"])
+ if ev is None:
+ raise Exception("Network removed event not seen for the last network")
+ if str(id) in ev:
+ seen = True
+ ev = dev[0].wait_global_event(["CTRL-EVENT-NETWORK-REMOVED"],
+ timeout=10)
+ if ev is None:
+ raise Exception("Network removed event (global) not seen for the last network")
+ if str(id) in ev:
+ seen_global = True
+ if not seen:
+ raise Exception("Network removed event not seen for the last network")
+ if not seen_global:
+ raise Exception("Network removed event (global) not seen for the last network")
dev[0].dump_monitor()
@remote_compatible