aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorJouni Malinen <j@w1.fi>2017-01-14 15:28:25 (GMT)
committerJouni Malinen <j@w1.fi>2017-01-14 15:28:25 (GMT)
commit76055b4c6115620421313038b6128f3b93d5160e (patch)
treea2f4c4cfce172d6969aa597fcc7373f71ca7414f /tests
parentadf8f45f8af27a9ac9429ecde81776b19b6f9224 (diff)
downloadhostap-76055b4c6115620421313038b6128f3b93d5160e.zip
hostap-76055b4c6115620421313038b6128f3b93d5160e.tar.gz
hostap-76055b4c6115620421313038b6128f3b93d5160e.tar.bz2
tests: D-Bus Get/Set Pmf
Signed-off-by: Jouni Malinen <j@w1.fi>
Diffstat (limited to 'tests')
-rw-r--r--tests/hwsim/test_dbus.py43
1 files changed, 43 insertions, 0 deletions
diff --git a/tests/hwsim/test_dbus.py b/tests/hwsim/test_dbus.py
index d7b4b6d..9947315 100644
--- a/tests/hwsim/test_dbus.py
+++ b/tests/hwsim/test_dbus.py
@@ -2210,6 +2210,49 @@ def _test_dbus_apscan(dev, apdev):
if_obj.Set(WPAS_DBUS_IFACE, "ApScan", dbus.UInt32(1),
dbus_interface=dbus.PROPERTIES_IFACE)
+def test_dbus_pmf(dev, apdev):
+ """D-Bus Get/Set Pmf"""
+ try:
+ _test_dbus_pmf(dev, apdev)
+ finally:
+ dev[0].request("SET pmf 0")
+
+def _test_dbus_pmf(dev, apdev):
+ (bus,wpas_obj,path,if_obj) = prepare_dbus(dev[0])
+
+ dev[0].set("pmf", "0")
+ res = if_obj.Get(WPAS_DBUS_IFACE, "Pmf",
+ dbus_interface=dbus.PROPERTIES_IFACE)
+ if res != 0:
+ raise Exception("Unexpected initial Pmf value: %d" % res)
+
+ for i in range(3):
+ if_obj.Set(WPAS_DBUS_IFACE, "Pmf", dbus.UInt32(i),
+ dbus_interface=dbus.PROPERTIES_IFACE)
+ res = if_obj.Get(WPAS_DBUS_IFACE, "Pmf",
+ dbus_interface=dbus.PROPERTIES_IFACE)
+ if res != i:
+ raise Exception("Unexpected Pmf value %d (expected %d)" % (res, i))
+
+ try:
+ if_obj.Set(WPAS_DBUS_IFACE, "Pmf", dbus.Int16(-1),
+ dbus_interface=dbus.PROPERTIES_IFACE)
+ raise Exception("Invalid Set(Pmf,-1) accepted")
+ except dbus.exceptions.DBusException, e:
+ if "Error.Failed: wrong property type" not in str(e):
+ raise Exception("Unexpected error message for invalid Set(Pmf,-1): " + str(e))
+
+ try:
+ if_obj.Set(WPAS_DBUS_IFACE, "Pmf", dbus.UInt32(123),
+ dbus_interface=dbus.PROPERTIES_IFACE)
+ raise Exception("Invalid Set(Pmf,123) accepted")
+ except dbus.exceptions.DBusException, e:
+ if "Error.Failed: Pmf must be 0, 1, or 2" not in str(e):
+ raise Exception("Unexpected error message for invalid Set(Pmf,123): " + str(e))
+
+ if_obj.Set(WPAS_DBUS_IFACE, "Pmf", dbus.UInt32(1),
+ dbus_interface=dbus.PROPERTIES_IFACE)
+
def test_dbus_fastreauth(dev, apdev):
"""D-Bus Get/Set FastReauth"""
(bus,wpas_obj,path,if_obj) = prepare_dbus(dev[0])