aboutsummaryrefslogtreecommitdiffstats
path: root/wpa_supplicant/scan.c
diff options
context:
space:
mode:
Diffstat (limited to 'wpa_supplicant/scan.c')
-rw-r--r--wpa_supplicant/scan.c18
1 files changed, 10 insertions, 8 deletions
diff --git a/wpa_supplicant/scan.c b/wpa_supplicant/scan.c
index ca7af57..6b43968 100644
--- a/wpa_supplicant/scan.c
+++ b/wpa_supplicant/scan.c
@@ -66,7 +66,7 @@ static int wpas_wps_in_use(struct wpa_supplicant *wpa_s,
}
#ifdef CONFIG_P2P
- if (!wpa_s->global->p2p_disabled && wpa_s->global->p2p) {
+ if (wpas_p2p_non_idle(wpa_s)) {
wpa_s->wps->dev.p2p = 1;
if (!wps) {
wps = 1;
@@ -369,8 +369,7 @@ static void wpas_add_interworking_elements(struct wpa_supplicant *wpa_s,
static struct wpabuf *
-wpa_supplicant_extra_ies(struct wpa_supplicant *wpa_s,
- struct wpa_driver_scan_params *params)
+wpa_supplicant_extra_ies(struct wpa_supplicant *wpa_s)
{
struct wpabuf *extra_ie = NULL;
#ifdef CONFIG_WPS
@@ -690,7 +689,7 @@ static void wpa_supplicant_scan(void *eloop_ctx, void *timeout_ctx)
ssid_list_set:
wpa_supplicant_optimize_freqs(wpa_s, &params);
- extra_ie = wpa_supplicant_extra_ies(wpa_s, &params);
+ extra_ie = wpa_supplicant_extra_ies(wpa_s);
#ifdef CONFIG_HS20
if (wpa_s->conf->hs20 && wpabuf_resize(&extra_ie, 6) == 0)
@@ -828,7 +827,7 @@ int wpa_supplicant_req_sched_scan(struct wpa_supplicant *wpa_s)
struct wpa_driver_scan_params params;
struct wpa_driver_scan_params *scan_params;
struct wpa_ssid *ssid = NULL;
- struct wpabuf *wps_ie = NULL;
+ struct wpabuf *extra_ie = NULL;
int ret, prio = 0;
unsigned int max_sched_scan_ssids;
int wildcard = 0;
@@ -962,8 +961,11 @@ start_scan:
if (!params.num_ssids)
params.num_ssids++;
- if (wpa_s->wps)
- wps_ie = wpa_supplicant_extra_ies(wpa_s, &params);
+ extra_ie = wpa_supplicant_extra_ies(wpa_s);
+ if (extra_ie) {
+ params.extra_ies = wpabuf_head(extra_ie);
+ params.extra_ies_len = wpabuf_len(extra_ie);
+ }
scan_params = &params;
@@ -992,7 +994,7 @@ scan:
}
- wpabuf_free(wps_ie);
+ wpabuf_free(extra_ie);
if (params.filter_ssids)
os_free(params.filter_ssids);