]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
tests: Removing a P2P group via the group control interface
authorToby Gray <toby.gray@realvnc.com>
Tue, 14 Oct 2014 17:34:42 +0000 (18:34 +0100)
committerJouni Malinen <j@w1.fi>
Sat, 18 Oct 2014 13:22:25 +0000 (16:22 +0300)
This adds a test which attempts to use the control interface for the
P2P group to remove the P2P group.

Signed-off-by: Toby Gray <toby.gray@realvnc.com>
tests/hwsim/test_p2p_device.py

index 921772099bd65c60a10cab9684a596871e823746..b9b481057d68ed13f6ae04e2a6aab3e72989ce1c 100644 (file)
@@ -30,3 +30,21 @@ def test_p2p_device_grpform2(dev, apdev):
                                            r_dev=dev[0], r_intent=0)
     check_grpform_results(i_res, r_res)
     remove_group(wpas, dev[0])
+
+def test_p2p_device_group_remove(dev, apdev):
+    """P2P group removal via the P2P ctrl interface with driver using cfg80211 P2P Device"""
+    wpas = WpaSupplicant(global_iface='/tmp/wpas-wlan5')
+    wpas.interface_add("wlan5")
+    [i_res, r_res] = go_neg_pin_authorized(i_dev=dev[0], i_intent=15,
+                                           r_dev=wpas, r_intent=0)
+    check_grpform_results(i_res, r_res)
+    # Issue the remove request on the interface which will be removed
+    p2p_iface_wpas = WpaSupplicant(ifname=r_res['ifname'])
+    res = p2p_iface_wpas.request("P2P_GROUP_REMOVE *")
+    if "OK" not in res:
+        raise Exception("Failed to remove P2P group")
+    ev = wpas.wait_global_event(["P2P-GROUP-REMOVED"], timeout=10)
+    if ev is None:
+        raise Exception("Group removal event not received")
+    if not wpas.global_ping():
+        raise Exception("Could not ping global ctrl_iface after group removal")