tests: AP may discard FT ReassocReq in ap_ft_sae_h2e_downgrade_attack

This is in preparation for a hostapd implementation change on how to
address the unexpected RSNXE Used field value in FTE during FT
reassociation.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
This commit is contained in:
Jouni Malinen 2020-04-14 16:36:07 +03:00 committed by Jouni Malinen
parent af0178c75b
commit 2012a26d0f

View file

@ -1080,10 +1080,17 @@ def test_ap_ft_sae_h2e_downgrade_attack(dev, apdev):
force_initial_conn_to_first_ap=True, force_initial_conn_to_first_ap=True,
return_after_initial=True) return_after_initial=True)
dev[0].scan_for_bss(hapd1.own_addr(), freq="2412") dev[0].scan_for_bss(hapd1.own_addr(), freq="2412")
dev[0].request("ROAM " + hapd1.own_addr()) if "OK" not in dev[0].request("ROAM " + hapd1.own_addr()):
ev = dev[0].wait_event(["CTRL-EVENT-ASSOC-REJECT"], timeout=10) raise Exception("ROAM command failed")
if ev is None: # The target AP is expected to discard Reassociation Response frame due
raise Exception("Association not rejected") # to RSNXE Used mismatch. This will result in roaming timeout and
# returning back to the old AP.
ev = dev[0].wait_event(["CTRL-EVENT-ASSOC-REJECT",
"CTRL-EVENT-CONNECTED"], timeout=10)
if ev and "CTRL-EVENT-ASSOC-REJECT" in ev:
pass
elif ev and hapd1.own_addr() in ev:
raise Exception("Roaming succeeded unexpectedly")
finally: finally:
dev[0].set("sae_pwe", "0") dev[0].set("sae_pwe", "0")