diff options
author | Johannes Berg <johannes.berg@intel.com> | 2014-06-12 16:24:31 -0400 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2014-11-19 12:46:09 -0500 |
commit | a344d6778a98e4c19ac871f369e399e6356edcb3 (patch) | |
tree | 57680bfd10fc013c7a996fbea7212be900f089db /net/mac80211/mlme.c | |
parent | 6ea0a69ca21bbddab5b3979c2190013b0263e749 (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.c | 8 |
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(); |