aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/util.c
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2011-07-18 12:08:36 -0400
committerJohn W. Linville <linville@tuxdriver.com>2011-07-19 16:50:00 -0400
commit85a237fe308405ee38eb9c6733571c49902ec229 (patch)
tree8e8fdbd588a749b7eb7da24d65684a2ca6161c6b /net/mac80211/util.c
parent34850ab25d74ab4eead62c3b4a9e8036a25cc669 (diff)
mac80211: implement scan supported rates
Scanning currently uses the TX rate mask to restrict the rate set, which is bogus. Make it use the new set of rates from userspace. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/util.c')
-rw-r--r--net/mac80211/util.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/net/mac80211/util.c b/net/mac80211/util.c
index ca440bce3de8..ddeb1b998383 100644
--- a/net/mac80211/util.c
+++ b/net/mac80211/util.c
@@ -1017,7 +1017,7 @@ int ieee80211_build_preq_ies(struct ieee80211_local *local, u8 *buffer,
1017} 1017}
1018 1018
1019struct sk_buff *ieee80211_build_probe_req(struct ieee80211_sub_if_data *sdata, 1019struct sk_buff *ieee80211_build_probe_req(struct ieee80211_sub_if_data *sdata,
1020 u8 *dst, 1020 u8 *dst, u32 ratemask,
1021 const u8 *ssid, size_t ssid_len, 1021 const u8 *ssid, size_t ssid_len,
1022 const u8 *ie, size_t ie_len, 1022 const u8 *ie, size_t ie_len,
1023 bool directed) 1023 bool directed)
@@ -1050,9 +1050,7 @@ struct sk_buff *ieee80211_build_probe_req(struct ieee80211_sub_if_data *sdata,
1050 1050
1051 buf_len = ieee80211_build_preq_ies(local, buf, ie, ie_len, 1051 buf_len = ieee80211_build_preq_ies(local, buf, ie, ie_len,
1052 local->hw.conf.channel->band, 1052 local->hw.conf.channel->band,
1053 sdata->rc_rateidx_mask 1053 ratemask, chan);
1054 [local->hw.conf.channel->band],
1055 chan);
1056 1054
1057 skb = ieee80211_probereq_get(&local->hw, &sdata->vif, 1055 skb = ieee80211_probereq_get(&local->hw, &sdata->vif,
1058 ssid, ssid_len, 1056 ssid, ssid_len,
@@ -1073,12 +1071,12 @@ struct sk_buff *ieee80211_build_probe_req(struct ieee80211_sub_if_data *sdata,
1073void ieee80211_send_probe_req(struct ieee80211_sub_if_data *sdata, u8 *dst, 1071void ieee80211_send_probe_req(struct ieee80211_sub_if_data *sdata, u8 *dst,
1074 const u8 *ssid, size_t ssid_len, 1072 const u8 *ssid, size_t ssid_len,
1075 const u8 *ie, size_t ie_len, 1073 const u8 *ie, size_t ie_len,
1076 bool directed) 1074 u32 ratemask, bool directed)
1077{ 1075{
1078 struct sk_buff *skb; 1076 struct sk_buff *skb;
1079 1077
1080 skb = ieee80211_build_probe_req(sdata, dst, ssid, ssid_len, ie, ie_len, 1078 skb = ieee80211_build_probe_req(sdata, dst, ratemask, ssid, ssid_len,
1081 directed); 1079 ie, ie_len, directed);
1082 if (skb) 1080 if (skb)
1083 ieee80211_tx_skb(sdata, skb); 1081 ieee80211_tx_skb(sdata, skb);
1084} 1082}