]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
DPP: Clear dpp_listen_freq on remain-on-channel failure
authorJouni Malinen <jouni@codeaurora.org>
Wed, 30 Jan 2019 10:28:43 +0000 (12:28 +0200)
committerJouni Malinen <j@w1.fi>
Wed, 30 Jan 2019 10:28:43 +0000 (12:28 +0200)
If the DPP_LISTEN command failed due to the driver rejecting the
remain-on-channel request, wpa_s->dpp_listen_freq was left set to the
requested listen frequency and this resulted in the next DPP_LISTEN for
the same frequency reporting "DPP: Already listening on .." even when
the driver was not really listening on that frequency. Fix this by
clearing wpa_s->dpp_listen_freq in the error case.

Signed-off-by: Jouni Malinen <jouni@codeaurora.org>
wpa_supplicant/dpp_supplicant.c

index 7bc46610a971823b28d3e955c50c0f058ef1aedf..b6a667173a1fe4e0ee2b1fad9b73c838e45fe7f4 100644 (file)
@@ -942,6 +942,7 @@ static void dpp_start_listen_cb(struct wpa_radio_work *work, int deinit)
                wpa_printf(MSG_DEBUG,
                           "DPP: Failed to request the driver to remain on channel (%u MHz) for listen",
                           lwork->freq);
+               wpa_s->dpp_listen_freq = 0;
                wpas_dpp_listen_work_done(wpa_s);
                wpa_s->dpp_pending_listen_freq = 0;
                return;