]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
tests: HS 2.0 roaming partner preference
authorJouni Malinen <jouni@qca.qualcomm.com>
Mon, 4 Nov 2013 12:39:25 +0000 (14:39 +0200)
committerJouni Malinen <j@w1.fi>
Tue, 25 Feb 2014 23:24:25 +0000 (01:24 +0200)
Signed-hostap: Jouni Malinen <jouni@qca.qualcomm.com>

tests/hwsim/test_ap_hs20.py
tests/hwsim/wpasupplicant.py

index 699b199b5c84dc7929d58aee7cfa92c2327cbd6d..b8ef861c4e271b6ea8756cb19c916f0fcc676b44 100644 (file)
@@ -832,6 +832,30 @@ def test_ap_hs20_domain_suffix_match(dev, apdev):
     if "Domain suffix mismatch" not in ev:
         raise Exception("Domain suffix mismatch not reported")
 
+def test_ap_hs20_roaming_partner_preference(dev, apdev):
+    """Hotspot 2.0 and roaming partner preference"""
+    params = hs20_ap_params()
+    params['domain_name'] = "roaming.example.org"
+    hostapd.add_ap(apdev[0]['ifname'], params)
+
+    params = hs20_ap_params()
+    params['ssid'] = "test-hs20-other"
+    params['domain_name'] = "roaming.example.net"
+    hostapd.add_ap(apdev[1]['ifname'], params)
+
+    logger.info("Verify default vs. specified preference")
+    values = default_cred()
+    values['roaming_partner'] = "roaming.example.net,1,127,*"
+    policy_test(dev[0], apdev[1], values, only_one=False)
+    values['roaming_partner'] = "roaming.example.net,1,129,*"
+    policy_test(dev[0], apdev[0], values, only_one=False)
+
+    logger.info("Verify partial FQDN match")
+    values['roaming_partner'] = "example.net,0,0,*"
+    policy_test(dev[0], apdev[1], values, only_one=False)
+    values['roaming_partner'] = "example.net,0,255,*"
+    policy_test(dev[0], apdev[0], values, only_one=False)
+
 def test_ap_hs20_multi_cred_sp_prio(dev, apdev):
     """Hotspot 2.0 multi-cred sp_priority"""
     if not hlr_auc_gw_available():
index 5dd6d7f7c6311e73861606ae4e10c3cb284f8d4e..9029f8841f58cb247f2a7ecdffe2e8bdfc02adef 100644 (file)
@@ -209,7 +209,8 @@ class WpaSupplicant:
 
         quoted = [ "realm", "username", "password", "domain", "imsi",
                    "excluded_ssid", "milenage", "ca_cert", "client_cert",
-                   "private_key", "domain_suffix_match", "provisioning_sp" ]
+                   "private_key", "domain_suffix_match", "provisioning_sp",
+                   "roaming_partner" ]
         for field in quoted:
             if field in params:
                 self.set_cred_quoted(id, field, params[field])