From 257ba3afae411f312cf65f2418711b54b9a48e74 Mon Sep 17 00:00:00 2001 From: Johannes Berg Date: Mon, 25 Sep 2023 09:20:41 +0200 Subject: [PATCH] tests: Wait for radio work to start after DPP_LISTEN command Since DPP listen is a radio work, it doesn't start immediately and then we can end up missing whatever happens next in the test. Wait for the radio work to start before continuing the test. Signed-off-by: Johannes Berg --- tests/hwsim/wpasupplicant.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/tests/hwsim/wpasupplicant.py b/tests/hwsim/wpasupplicant.py index e9f10e221..ba372e523 100644 --- a/tests/hwsim/wpasupplicant.py +++ b/tests/hwsim/wpasupplicant.py @@ -1545,6 +1545,15 @@ class WpaSupplicant: cmd += " role=" + role if "OK" not in self.request(cmd): raise Exception("Failed to start listen operation") + # Since DPP listen is a radio work, make sure it has started + # by the time we return and continue with the test, since it + # usually will send something this side should receive. + work_started = "dpp-listen@" + self.ifname + ":" + str(freq) + ":1" + for i in range(10): + if work_started in self.request("RADIO_WORK show"): + return + time.sleep(0.01) + raise Exception("Failed to start DPP listen work") def dpp_auth_init(self, peer=None, uri=None, conf=None, configurator=None, extra=None, own=None, role=None, neg_freq=None,