From a51c40aa35b44468374556caab667ac205edfe57 Mon Sep 17 00:00:00 2001 From: Jouni Malinen Date: Mon, 2 Mar 2015 16:45:51 +0200 Subject: [PATCH] P2P: Fix regression in start-GO/AP through a "fake" scan Commit 3f9ebc439c9468bf51219c931a05028aa8a3d3a7 ('P2P: Allow AP/GO interface to be started while P2P-in-progress') moved the wpa_s->connect_without_scan and wpa_s->last_scan_req checks to an earlier place within the wpa_supplicant_scan() function without adjusting wpa_s->last_scan_req. This variable was set between the old and new location, so the new location needs to use wpa_s->scan_req. This fixes an issue where AP/GO operations were not properly started in some operation sequence. Instead, a station mode scan was executed. This issue could be triggered, e.g., by running the no_go_freq test case followed by autogo_random_channel. Signed-off-by: Jouni Malinen --- wpa_supplicant/scan.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wpa_supplicant/scan.c b/wpa_supplicant/scan.c index bc59705dc..805891a88 100644 --- a/wpa_supplicant/scan.c +++ b/wpa_supplicant/scan.c @@ -680,7 +680,7 @@ static void wpa_supplicant_scan(void *eloop_ctx, void *timeout_ctx) } ssid = NULL; - if (wpa_s->last_scan_req != MANUAL_SCAN_REQ && + if (wpa_s->scan_req != MANUAL_SCAN_REQ && wpa_s->connect_without_scan) { connect_without_scan = 1; for (ssid = wpa_s->conf->ssid; ssid; ssid = ssid->next) {