aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Shmidt <dimitrysh@google.com>2009-11-17 10:10:55 -0800
committerAndroid Git Automerger <android-git-automerger@android.com>2009-11-17 10:10:55 -0800
commitcce8160f1471e73f9b4bbe737547485c9b298e6d (patch)
treee3143d10628650e01cefaa0f10c8c2c0ab744244
parent3ea0e8237905b833a136b30f06e80fa385aa2a88 (diff)
parentcef0cae916e22f4e2179b88e7ef57a3372ab7ada (diff)
downloadwpa_supplicant-cce8160f1471e73f9b4bbe737547485c9b298e6d.tar.gz
am cef0cae9: am 0ebb71cf: wext: Use probe scan only for hidden networks (b/2262258)
Merge commit 'cef0cae916e22f4e2179b88e7ef57a3372ab7ada' into eclair-mr2-plus-aosp * commit 'cef0cae916e22f4e2179b88e7ef57a3372ab7ada': wext: Use probe scan only for hidden networks (b/2262258)
-rw-r--r--driver_wext.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/driver_wext.c b/driver_wext.c
index c512586..e939a00 100644
--- a/driver_wext.c
+++ b/driver_wext.c
@@ -1126,6 +1126,10 @@ int wpa_driver_wext_scan(void *priv, const u8 *ssid, size_t ssid_len)
struct iwreq iwr;
int ret = 0, timeout;
struct iw_scan_req req;
+#ifdef ANDROID
+ struct wpa_supplicant *wpa_s = (struct wpa_supplicant *)(drv->ctx);
+ int scan_probe_flag = 0;
+#endif
if (ssid_len > IW_ESSID_MAX_SIZE) {
wpa_printf(MSG_DEBUG, "%s: too long SSID (%lu)",
@@ -1136,7 +1140,14 @@ int wpa_driver_wext_scan(void *priv, const u8 *ssid, size_t ssid_len)
os_memset(&iwr, 0, sizeof(iwr));
os_strncpy(iwr.ifr_name, drv->ifname, IFNAMSIZ);
+#ifdef ANDROID
+ if (wpa_s->prev_scan_ssid != BROADCAST_SSID_SCAN) {
+ scan_probe_flag = wpa_s->prev_scan_ssid->scan_ssid;
+ }
+ if (scan_probe_flag && (ssid && ssid_len)) {
+#else
if (ssid && ssid_len) {
+#endif
os_memset(&req, 0, sizeof(req));
req.essid_len = ssid_len;
req.bssid.sa_family = ARPHRD_ETHER;