]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
Add wpa_supplicant ctrl iface support to scan for a specific BSSID
authorAshwini Patil <c_apati@qti.qualcomm.com>
Thu, 11 May 2017 07:52:00 +0000 (13:22 +0530)
committerJouni Malinen <j@w1.fi>
Tue, 4 Jul 2017 23:02:32 +0000 (02:02 +0300)
Add support to scan for a specific BSSID through the wpa_supplicant
control interface.

Usage: wpa_cli scan bssid=ab:bc:cd:de:ef:12

Signed-off-by: Jouni Malinen <jouni@qca.qualcomm.com>
wpa_supplicant/ctrl_iface.c

index 710489db1c5ec3d32e1215f61c8c0c39e97f0e7a..5bd9d087331ffc8b34a1b2f085b2fd6e399d1100 100644 (file)
@@ -7991,6 +7991,19 @@ static void wpas_ctrl_scan(struct wpa_supplicant *wpa_s, char *params,
                        goto done;
                }
 
+               pos = os_strstr(params, "bssid=");
+               if (pos) {
+                       u8 bssid[ETH_ALEN];
+
+                       pos += 6;
+                       if (hwaddr_aton(pos, bssid)) {
+                               wpa_printf(MSG_ERROR, "Invalid BSSID %s", pos);
+                               *reply_len = -1;
+                               goto done;
+                       }
+                       os_memcpy(wpa_s->next_scan_bssid, bssid, ETH_ALEN);
+               }
+
                pos = params;
                while (pos && *pos != '\0') {
                        if (os_strncmp(pos, "ssid ", 5) == 0) {