[PATCH v2] tests: add a simple wmediumd test

Johannes Berg johannes at sipsolutions.net
Fri Nov 27 06:41:37 PST 2015


From: Johannes Berg <johannes.berg at intel.com>

If wmediumd is available on the path, test that it can forward
packets between two virtual nodes and that stopping it makes
the regular in-kernel datapath do the needed work again.

Signed-off-by: Johannes Berg <johannes.berg at intel.com>
---
 tests/hwsim/test_wmediumd.py | 44 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 44 insertions(+)
 create mode 100644 tests/hwsim/test_wmediumd.py

diff --git a/tests/hwsim/test_wmediumd.py b/tests/hwsim/test_wmediumd.py
new file mode 100644
index 000000000000..dd52f672ba7d
--- /dev/null
+++ b/tests/hwsim/test_wmediumd.py
@@ -0,0 +1,44 @@
+# wmediumd sanity checks
+# Copyright (c) 2015, Intel Deutschland GmbH
+#
+# This software may be distributed under the terms of the BSD license.
+# See README for more details.
+
+import tempfile, os, subprocess, errno
+from utils import HwsimSkip
+from test_ap_open import test_ap_open
+
+CFG = """
+ifaces :
+{
+    ids = ["%s", "%s" ];
+    links = (
+        (0, 1, 30)
+    );
+};
+"""
+
+def test_wmediumd_simple(dev, apdev):
+    """test a simple wmediumd configuration"""
+    fd, fn = tempfile.mkstemp()
+    try:
+        f = os.fdopen(fd, 'w')
+        f.write(CFG % (apdev[0]['bssid'], dev[0].own_addr()))
+        f.close()
+        try:
+            p = subprocess.Popen(['wmediumd', '-c', fn],
+                                 stdout=open('/dev/null', 'a'),
+                                 stderr=subprocess.STDOUT)
+        except OSError, e:
+            if e.errno == errno.ENOENT:
+                raise HwsimSkip("wmediumd not available")
+            raise
+        try:
+            test_ap_open(dev, apdev)
+        finally:
+            p.terminate()
+            p.wait()
+        # test that releasing hwsim works correctly
+        test_ap_open(dev, apdev);
+    finally:
+        os.unlink(fn)
-- 
2.6.2




More information about the Hostap mailing list