@@ -114,3 +114,60 @@ def test_he_ap_mbssid_same_security(dev, apdev, params):
"pairwise": "CCMP", "group": "CCMP", "scan_freq": "2412"}
mbssid_start_ap(dev, apdev, params, fname, ifname, sta_params)
dev[0].set("sae_pwe", "0")
+
+def test_he_ap_mbssid_mixed_security1(dev, apdev, params):
+ """HE AP MBSSID MIXED SECURITY 1"""
+ f, fname, ifname = mbssid_create_cfg_file(apdev, params)
+
+ psk_params = {"wpa": "2", "wpa_passphrase": "12345678",
+ "wpa_pairwise": "CCMP", "wpa_key_mgmt": "WPA-PSK"}
+
+ owe_params = {"wpa": "2", "wpa_pairwise": "CCMP", "wpa_key_mgmt": "OWE"}
+
+ sae_params = {"wpa": "2", "wpa_passphrase": "12345678",
+ "wpa_pairwise": "CCMP", "wpa_key_mgmt": "SAE",
+ "sae_pwe": "1", "ieee80211w": "2"}
+
+ mbssid_write_bss_params(f, ifname, 0, sae_params)
+ mbssid_write_bss_params(f, ifname, 1, psk_params)
+ mbssid_write_bss_params(f, ifname, 2, owe_params)
+ mbssid_write_bss_params(f, ifname, 3)
+ mbssid_write_bss_params(f, ifname, 4, psk_params)
+ mbssid_write_bss_params(f, ifname, 5, sae_params)
+ mbssid_write_bss_params(f, ifname, 6, owe_params)
+ mbssid_write_bss_params(f, ifname, 7)
+
+ f.close()
+
+ dev[0].set("sae_pwe", "1")
+ sta_params = {"psk": "12345678", "key_mgmt": "SAE", "ieee80211w": "2",
+ "pairwise": "CCMP", "group": "CCMP", "scan_freq": "2412"}
+ mbssid_start_ap(dev, apdev, params, fname, ifname, sta_params)
+ dev[0].set("sae_pwe", "0")
+
+def test_he_ap_mbssid_mixed_security2(dev, apdev, params):
+ """HE AP MBSSID MIXED SECURITY 2"""
+ f, fname, ifname = mbssid_create_cfg_file(apdev, params)
+
+ psk_params = {"wpa": "2", "wpa_passphrase": "12345678",
+ "wpa_pairwise": "CCMP", "wpa_key_mgmt": "WPA-PSK"}
+
+ owe_params = {"wpa": "2", "wpa_pairwise": "CCMP", "wpa_key_mgmt": "OWE"}
+
+ sae_params = {"wpa": "2", "wpa_passphrase": "12345678",
+ "wpa_pairwise": "CCMP", "wpa_key_mgmt": "SAE",
+ "sae_pwe": "1", "ieee80211w": "2"}
+
+ mbssid_write_bss_params(f, ifname, 0)
+ mbssid_write_bss_params(f, ifname, 1, psk_params)
+ mbssid_write_bss_params(f, ifname, 2, owe_params)
+ mbssid_write_bss_params(f, ifname, 3, sae_params)
+ mbssid_write_bss_params(f, ifname, 4)
+ mbssid_write_bss_params(f, ifname, 5, psk_params)
+ mbssid_write_bss_params(f, ifname, 6, sae_params)
+ mbssid_write_bss_params(f, ifname, 7, owe_params)
+
+ f.close()
+
+ sta_params = {"key_mgmt": "NONE", "scan_freq": "2412"}
+ mbssid_start_ap(dev, apdev, params, fname, ifname, sta_params)
test_he_ap_mbssid_mixed_security1() and test_he_ap_mbssid_mixed_security2() add 8 VAPs with mixed security configurations (SAE, OWE, WPA2-PSK, open). - test_he_ap_mbssid_mixed_security1() Transmitting interface uses SAE. In this case the non-transmitting profiles will include non inheritance element (IEEE Std 802.11-2020 section 9.4.2.240) wherever the security differs from the transmitting profile. - test_he_ap_mbssid_mixed_security2() Transmitting profile is open hence no need for the non inheritance elements. Instead each non-transmitting profile includes RSN, RSNE if applicable. Signed-off-by: Aloka Dixit <quic_alokad@quicinc.com> --- v1: depends on https://patchwork.kernel.org/project/linux-wireless/list/?series=700684&state=%2A&archive=both tests/hwsim/test_he_mbssid.py | 57 +++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+)