diff --git a/tests/hwsim/test_dbus.py b/tests/hwsim/test_dbus.py index 4dee2277b..c16f59d53 100644 --- a/tests/hwsim/test_dbus.py +++ b/tests/hwsim/test_dbus.py @@ -3940,6 +3940,7 @@ def test_dbus_p2p_autogo_pbc(dev, apdev): self.first = True self.waiting_end = False self.done = False + self.dev1 = WpaSupplicant('wlan1', '/tmp/wpas-wlan1') def __enter__(self): gobject.timeout_add(1, self.run_test) @@ -3963,12 +3964,12 @@ def test_dbus_p2p_autogo_pbc(dev, apdev): self.group = properties['group_object'] self.g_if_obj = bus.get_object(WPAS_DBUS_SERVICE, properties['interface_object']) - dev1 = WpaSupplicant('wlan1', '/tmp/wpas-wlan1') - dev1.global_request("P2P_CONNECT " + addr0 + " pbc join") + self.dev1.global_request("P2P_CONNECT " + addr0 + " pbc join") def groupFinished(self, properties): logger.debug("groupFinished: " + str(properties)) self.done = True + self.dev1 = None self.loop.quit() def deviceFound(self, path): @@ -3993,6 +3994,9 @@ def test_dbus_p2p_autogo_pbc(dev, apdev): def staAuthorized(self, name): logger.debug("staAuthorized: " + name) + # wait for client to be fully connected + self.dev1.wait_connected() + # so we can cleanly disconnect it now group_p2p = dbus.Interface(self.g_if_obj, WPAS_DBUS_IFACE_P2PDEVICE) group_p2p.Disconnect()