[PATCH] tests: FT over DS to a legacy AP with WMM
Raphaël Mélotte
raphael.melotte at mind.be
Tue Oct 27 08:10:37 PDT 2026
Roam with FT over the DS from an HT AP to an AP that has WMM, but no HT.
Signed-off-by: Raphaël Mélotte <raphael.melotte at mind.be>
---
Note that the kernel rejects the association with -EINVAL since commit
7d8b02592d52 (v6.9).
It is meant to be a regression test to make sure this case keeps on
working after it's fixed.
tests/hwsim/test_ap_ft.py | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
diff --git a/tests/hwsim/test_ap_ft.py b/tests/hwsim/test_ap_ft.py
index 29bec3de9..427610872 100644
--- a/tests/hwsim/test_ap_ft.py
+++ b/tests/hwsim/test_ap_ft.py
@@ -719,6 +719,24 @@ def test_ap_ft_over_ds(dev, apdev):
check_mib(dev[0], [("dot11RSNAAuthenticationSuiteRequested", "00-0f-ac-4"),
("dot11RSNAAuthenticationSuiteSelected", "00-0f-ac-4")])
+def test_ap_ft_over_ds_to_legacy(dev, apdev):
+ """WPA2-PSK-FT AP over DS from HT AP to legacy AP with WMM"""
+ ssid = "test-ft"
+ passphrase = "12345678"
+
+ params = ft_params1(ssid=ssid, passphrase=passphrase)
+ hapd0 = hostapd.add_ap(apdev[0], params)
+ # The target AP has no HT, but it has WMM. Set wmm_enabled explicitly,
+ # because the default value follows ieee80211n.
+ params = ft_params2(ssid=ssid, passphrase=passphrase)
+ params["ieee80211n"] = "0"
+ params["wmm_enabled"] = "1"
+ hapd1 = hostapd.add_ap(apdev[1], params)
+
+ dev[0].flush_scan_cache()
+ run_roams(dev[0], apdev, hapd0, hapd1, ssid, passphrase, over_ds=True,
+ force_initial_conn_to_first_ap=True)
+
def cleanup_ap_ft_separate_hostapd():
subprocess.call(["brctl", "delif", "br0ft", "veth0"],
stderr=open('/dev/null', 'w'))
--
2.54.0
More information about the Hostap
mailing list