diff --git a/tests/hwsim/test_p2p_device.py b/tests/hwsim/test_p2p_device.py index 921772099..b9b481057 100644 --- a/tests/hwsim/test_p2p_device.py +++ b/tests/hwsim/test_p2p_device.py @@ -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")