summaryrefslogtreecommitdiffstats
path: root/net/mac80211/mlme.c
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2014-06-12 16:24:31 -0400
committerJohannes Berg <johannes.berg@intel.com>2014-11-19 12:46:09 -0500
commita344d6778a98e4c19ac871f369e399e6356edcb3 (patch)
tree57680bfd10fc013c7a996fbea7212be900f089db /net/mac80211/mlme.c
parent6ea0a69ca21bbddab5b3979c2190013b0263e749 (diff)
mac80211: allow drivers to support NL80211_SCAN_FLAG_RANDOM_ADDR
Allow drivers to support NL80211_SCAN_FLAG_RANDOM_ADDR with software based scanning and generate a random MAC address for them for every scan request with the flag. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/mlme.c')
-rw-r--r--net/mac80211/mlme.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c
index 45490a202d9c..d29589a09065 100644
--- a/net/mac80211/mlme.c
+++ b/net/mac80211/mlme.c
@@ -2225,7 +2225,8 @@ static void ieee80211_mgd_probe_ap_send(struct ieee80211_sub_if_data *sdata)
2225 else 2225 else
2226 ssid_len = ssid[1]; 2226 ssid_len = ssid[1];
2227 2227
2228 ieee80211_send_probe_req(sdata, dst, ssid + 2, ssid_len, NULL, 2228 ieee80211_send_probe_req(sdata, sdata->vif.addr, NULL,
2229 ssid + 2, ssid_len, NULL,
2229 0, (u32) -1, true, 0, 2230 0, (u32) -1, true, 0,
2230 ifmgd->associated->channel, false); 2231 ifmgd->associated->channel, false);
2231 rcu_read_unlock(); 2232 rcu_read_unlock();
@@ -2328,7 +2329,7 @@ struct sk_buff *ieee80211_ap_probereq_get(struct ieee80211_hw *hw,
2328 else 2329 else
2329 ssid_len = ssid[1]; 2330 ssid_len = ssid[1];
2330 2331
2331 skb = ieee80211_build_probe_req(sdata, cbss->bssid, 2332 skb = ieee80211_build_probe_req(sdata, sdata->vif.addr, cbss->bssid,
2332 (u32) -1, cbss->channel, 2333 (u32) -1, cbss->channel,
2333 ssid + 2, ssid_len, 2334 ssid + 2, ssid_len,
2334 NULL, 0, true); 2335 NULL, 0, true);
@@ -3649,7 +3650,8 @@ static int ieee80211_probe_auth(struct ieee80211_sub_if_data *sdata)
3649 * Direct probe is sent to broadcast address as some APs 3650 * Direct probe is sent to broadcast address as some APs
3650 * will not answer to direct packet in unassociated state. 3651 * will not answer to direct packet in unassociated state.
3651 */ 3652 */
3652 ieee80211_send_probe_req(sdata, NULL, ssidie + 2, ssidie[1], 3653 ieee80211_send_probe_req(sdata, sdata->vif.addr, NULL,
3654 ssidie + 2, ssidie[1],
3653 NULL, 0, (u32) -1, true, 0, 3655 NULL, 0, (u32) -1, true, 0,
3654 auth_data->bss->channel, false); 3656 auth_data->bss->channel, false);
3655 rcu_read_unlock(); 3657 rcu_read_unlock();