diff options
| author | Jouni Malinen <jouni@qca.qualcomm.com> | 2014-12-12 12:11:14 +0200 |
|---|---|---|
| committer | Arne Coucheron <arco68@gmail.com> | 2015-02-14 12:35:50 +0100 |
| commit | 2a291a0714327e1f8c27636e37be7664fa82f663 (patch) | |
| tree | 290e1442da207421d523eae12b833bcb640c9679 | |
| parent | 370379b257b95f677f1b6eeb4ac00f3ec5f97b16 (diff) | |
| download | android_external_wpa_supplicant_8-2a291a0714327e1f8c27636e37be7664fa82f663.tar.gz android_external_wpa_supplicant_8-2a291a0714327e1f8c27636e37be7664fa82f663.tar.bz2 android_external_wpa_supplicant_8-2a291a0714327e1f8c27636e37be7664fa82f663.zip | |
Reject new SCAN commands if there is a pending request
FAIL-BUSY was already returned for the case where a scan had been
started, but with the radio work design, it would have been possible to
schedule multiple scan requests if a non-scan radio work was in
progress. Multiple back-to-back scans are not usually very helpful, so
reject this type of cases where the SCAN command would be used to build
such a sequence.
CRs-Fixed: 774291
Git-commit: e69ae5ff319f549635a87c844b8a4f20c7289ca2
Git-repo : git://w1.fi/srv/git/hostap.git
Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
Change-Id: Idd14f540e573c07e2bb7ee71927b93b51b8f1d6f
| -rw-r--r-- | wpa_supplicant/ctrl_iface.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/wpa_supplicant/ctrl_iface.c b/wpa_supplicant/ctrl_iface.c index 5310eb7e..8ac2a0ca 100644 --- a/wpa_supplicant/ctrl_iface.c +++ b/wpa_supplicant/ctrl_iface.c @@ -6044,6 +6044,13 @@ static void wpas_ctrl_scan(struct wpa_supplicant *wpa_s, char *params, wpa_s->manual_scan_only_new = 0; wpa_s->scan_id_count = 0; + if (radio_work_pending(wpa_s, "scan")) { + wpa_printf(MSG_DEBUG, + "Pending scan scheduled - reject new request"); + *reply_len = os_snprintf(reply, reply_size, "FAIL-BUSY\n"); + return; + } + if (params) { if (os_strncasecmp(params, "TYPE=ONLY", 9) == 0) wpa_s->scan_res_handler = scan_only_handler; |
