If the hw scan request specifies a single BSSID, use that value instead
of the wildcard BSSID in the Probe Request frames.

Signed-off-by: Jouni Malinen <jo...@qca.qualcomm.com>
---
 drivers/net/wireless/mac80211_hwsim.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/net/wireless/mac80211_hwsim.c 
b/drivers/net/wireless/mac80211_hwsim.c
index a723a85..281c6b7 100644
--- a/drivers/net/wireless/mac80211_hwsim.c
+++ b/drivers/net/wireless/mac80211_hwsim.c
@@ -1909,6 +1909,7 @@ static void hw_scan_work(struct work_struct *work)
                /* send probes */
                for (i = 0; i < req->n_ssids; i++) {
                        struct sk_buff *probe;
+                       struct ieee80211_mgmt *mgmt;
 
                        probe = ieee80211_probereq_get(hwsim->hw,
                                                       hwsim->scan_addr,
@@ -1918,6 +1919,10 @@ static void hw_scan_work(struct work_struct *work)
                        if (!probe)
                                continue;
 
+                       mgmt = (struct ieee80211_mgmt *) probe->data;
+                       memcpy(mgmt->da, req->bssid, ETH_ALEN);
+                       memcpy(mgmt->bssid, req->bssid, ETH_ALEN);
+
                        if (req->ie_len)
                                memcpy(skb_put(probe, req->ie_len), req->ie,
                                       req->ie_len);
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to