diff options
author | Johannes Berg <johannes@sipsolutions.net> | 2010-05-03 02:49:48 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2010-05-03 14:53:10 -0400 |
commit | be4a4b6a5d2f76393f545a2545fbaa1b65577e13 (patch) | |
tree | 5456729061f295a1e7782766eb195707228475f8 /net/mac80211/ieee80211_i.h | |
parent | a75b4363eaafa99d909da4f1192322a78b074c73 (diff) |
mac80211: improve IBSS scanning
When IBSS is fixed to a frequency, it can still
scan to try to find the right BSSID. This makes
sense if the BSSID isn't also fixed, but it need
not scan all channels -- just one is sufficient.
Make it do that by moving the scan setup code to
ieee80211_request_internal_scan() and include
a channel variable setting.
Note that this can be further improved to start
the IBSS right away if both frequency and BSSID
are fixed.
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/ieee80211_i.h')
-rw-r--r-- | net/mac80211/ieee80211_i.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h index 4e73660ebe99..c8077a3647c6 100644 --- a/net/mac80211/ieee80211_i.h +++ b/net/mac80211/ieee80211_i.h | |||
@@ -1020,7 +1020,8 @@ void ieee80211_ibss_restart(struct ieee80211_sub_if_data *sdata); | |||
1020 | /* scan/BSS handling */ | 1020 | /* scan/BSS handling */ |
1021 | void ieee80211_scan_work(struct work_struct *work); | 1021 | void ieee80211_scan_work(struct work_struct *work); |
1022 | int ieee80211_request_internal_scan(struct ieee80211_sub_if_data *sdata, | 1022 | int ieee80211_request_internal_scan(struct ieee80211_sub_if_data *sdata, |
1023 | const u8 *ssid, u8 ssid_len); | 1023 | const u8 *ssid, u8 ssid_len, |
1024 | struct ieee80211_channel *chan); | ||
1024 | int ieee80211_request_scan(struct ieee80211_sub_if_data *sdata, | 1025 | int ieee80211_request_scan(struct ieee80211_sub_if_data *sdata, |
1025 | struct cfg80211_scan_request *req); | 1026 | struct cfg80211_scan_request *req); |
1026 | void ieee80211_scan_cancel(struct ieee80211_local *local); | 1027 | void ieee80211_scan_cancel(struct ieee80211_local *local); |