Message ID | 20250107125149.1820266-4-andrei.otcheretianski@intel.com |
---|---|
State | Deferred |
Headers | show |
Series | [1/8] defs: Add RSNXE SPP A-MSDU capable definition | expand |
On Tue, Jan 07, 2025 at 02:51:45PM +0200, Andrei Otcheretianski wrote: > 1. Some of the tests under test_ap_psk/test_ap_ft/test_ocv, do not > expect the use of RSNXE or expecting hardcoded RSNXE value. > Enabling SPP A-MSDU by default in a future patch that implements > this feature may lead to failures. To prevent this, disable > SPP A-MSDU. I applied other patches in the series (i.e., 1-3, 5-8) with some cleanup and fixes. However, I ended up disabling SPP A-MSDU support in hostapd by default since I do not want to force known interoperability issues with deployed STAs having issues with the RSNXE to occur in the default configuration. Furthermore, there has been very limited interoperability testing of SPP A-MSDU so far, so I'd also want that to change before promoting this functionality significantly. With that change in the spp_amsdu default, this patch 4 is not needed. > 2. test_ap_wds_sta and test_ap_pmf_toggle uses > reassoc_same_bss_optim=1. After reassociation, the 4-way handshake > fails due to the absence of RSNXE. This appears to be a general > bug. Until a fix is implemented, disable SPP A-MSDU to prevent > unexpected failures. I did not see these test cases failing when enabling SPP A-MSDU support.
diff --git a/tests/hwsim/test_ap_ft.py b/tests/hwsim/test_ap_ft.py index bbbe8cf221..be0498bbf0 100644 --- a/tests/hwsim/test_ap_ft.py +++ b/tests/hwsim/test_ap_ft.py @@ -52,6 +52,8 @@ def ft_params(rsn=True, ssid=None, passphrase=None, mobility_domain="a1b2"): params["r0_key_lifetime"] = "10000" params["pmk_r1_push"] = "1" params["reassociation_deadline"] = "1000" + # disable spp_amsdu (may affect some tests by add/modify unexpected RSNXE) + params['spp_amsdu'] = '0' return params def ft_params1a(rsn=True, ssid=None, passphrase=None): diff --git a/tests/hwsim/test_ap_params.py b/tests/hwsim/test_ap_params.py index 1eeebbd4ed..a8553e597f 100644 --- a/tests/hwsim/test_ap_params.py +++ b/tests/hwsim/test_ap_params.py @@ -296,6 +296,10 @@ def test_ap_wds_sta(dev, apdev): params = hostapd.wpa2_params(ssid=ssid, passphrase=passphrase) params['wds_sta'] = "1" params['wds_bridge'] = "wds-br0" + # FIXME: there is a bug when using reassoc_same_bss_optim=1 which + # cause the RSNXE to be omitted in the 4-way-handshake after reassoc, + # disable spp_amsdu until fixed. + params["spp_amsdu"] = "0" hapd = hostapd.add_ap(apdev[0], params) try: diff --git a/tests/hwsim/test_ap_pmf.py b/tests/hwsim/test_ap_pmf.py index 331ac393ba..7da15f27a2 100644 --- a/tests/hwsim/test_ap_pmf.py +++ b/tests/hwsim/test_ap_pmf.py @@ -842,6 +842,10 @@ def _test_ap_pmf_toggle(dev, apdev): params["ieee80211w"] = "1" params["assoc_sa_query_max_timeout"] = "1" params["assoc_sa_query_retry_timeout"] = "1" + # FIXME: there is a bug when using reassoc_same_bss_optim=1 which + # cause the RSNXE to be omitted in the 4-way-handshake after reassoc, + # disable spp_amsdu until fixed. + params["spp_amsdu"] = "0" hapd = hostapd.add_ap(apdev[0], params) Wlantest.setup(hapd) wt = Wlantest() diff --git a/tests/hwsim/test_ap_psk.py b/tests/hwsim/test_ap_psk.py index 84b08d32b0..100a4aafb8 100644 --- a/tests/hwsim/test_ap_psk.py +++ b/tests/hwsim/test_ap_psk.py @@ -1527,6 +1527,8 @@ def eapol_test(apdev, dev, wpa2=True, ieee80211w=0): params = hostapd.wpa_params(ssid=ssid) params['wpa_psk'] = psk params['ieee80211w'] = str(ieee80211w) + # disable spp_amsdu (may affect some tests by add/modify unexpected RSNXE) + params['spp_amsdu'] = '0' hapd = hostapd.add_ap(apdev, params) hapd.request("SET ext_eapol_frame_io 1") dev.request("SET ext_eapol_frame_io 1") diff --git a/tests/hwsim/test_ocv.py b/tests/hwsim/test_ocv.py index 32af729313..c4b3db4461 100644 --- a/tests/hwsim/test_ocv.py +++ b/tests/hwsim/test_ocv.py @@ -374,6 +374,7 @@ class APConnection: passphrase=self.passphrase)) params["wpa_pairwise_update_count"] = "10" params["ocv"] = ap_ocv + params['spp_amsdu'] = "0" try: self.hapd = hostapd.add_ap(apdev, params) except Exception as e: @@ -748,6 +749,7 @@ class STAConnection: params.update(hostapd.wpa2_params(ssid=self.ssid, passphrase=self.passphrase)) params['wpa_pairwise_update_count'] = "10" + params['spp_amsdu'] = "0" try: self.hapd = hostapd.add_ap(apdev, params)