diff --git a/tests/hwsim/auth_serv/eap_user.conf b/tests/hwsim/auth_serv/eap_user.conf index 7e43a36ba..53bb7e0c9 100644 --- a/tests/hwsim/auth_serv/eap_user.conf +++ b/tests/hwsim/auth_serv/eap_user.conf @@ -47,6 +47,12 @@ radius_accept_attr=56:x:32000001 "vlan1tagged" PAX 0123456789abcdef0123456789abcdef radius_accept_attr=56:x:31000001 +"vlan12mixed" PAX 0123456789abcdef0123456789abcdef +radius_accept_attr=56:x:31000001 +radius_accept_attr=64:d:13 +radius_accept_attr=65:d:6 +radius_accept_attr=81:s:2 + "test-class" PAX 0123456789abcdef0123456789abcdef radius_accept_attr=25:x:00112233445566778899 diff --git a/tests/hwsim/test_ap_vlan.py b/tests/hwsim/test_ap_vlan.py index 57cef93e0..46500064a 100644 --- a/tests/hwsim/test_ap_vlan.py +++ b/tests/hwsim/test_ap_vlan.py @@ -535,3 +535,33 @@ def test_ap_vlan_wpa2_radius_tagged(dev, apdev): finally: subprocess.call(['ifconfig', ifname, 'down']) subprocess.call(['ip', 'link', 'del', ifname]) + +def test_ap_vlan_wpa2_radius_mixed(dev, apdev): + """AP VLAN with WPA2-Enterprise and tagged+untagged VLANs""" + ifname = 'wlan0.1' + try: + params = hostapd.wpa2_eap_params(ssid="test-vlan") + params['dynamic_vlan'] = "1" + params["vlan_naming"] = "1" + hapd = hostapd.add_ap(apdev[0]['ifname'], params) + + dev[0].connect("test-vlan", key_mgmt="WPA-EAP", eap="PAX", + identity="vlan12mixed", + password_hex="0123456789abcdef0123456789abcdef", + scan_freq="2412") + + # Add tagged VLAN interface to wpa_supplicant interface for testing + subprocess.call(['ip', 'link', 'add', 'link', dev[0].ifname, + 'name', ifname, 'type', 'vlan', 'id', '1']) + subprocess.call(['ifconfig', ifname, 'up']) + + logger.info("Test connectivity in untagged VLAN 2") + hwsim_utils.run_connectivity_test(dev[0], hapd, 0, + ifname1=dev[0].ifname, + ifname2="brvlan2") + logger.info("Test connectivity in tagged VLAN 1") + hwsim_utils.run_connectivity_test(dev[0], hapd, 0, ifname1=ifname, + ifname2="brvlan1") + finally: + subprocess.call(['ifconfig', ifname, 'down']) + subprocess.call(['ip', 'link', 'del', ifname])