mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-08 14:23:19 +00:00
mac80211: Do not scan for IBSS merge with a fixed BSSID.
Currently, when we are on an IBSS network with no active station,
we would scan for other BSSID, even if fixed_bssid is on, due to
a bug in ibss.c, where fixed_channel would be checked instead of
fixed_bssid. This would trigger useless scans where scan results
would not be used anyway.
This patch also reverts commit 39d02a7d90
,
which assumed that the ifibss->fixed_channel check was legitimate
to disable single-channel scans. IBSS single-channel scan should
now be fixed.
Signed-off-by: Nicolas Cavallari <cavallar@lri.fr>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
6e1b1b2460
commit
f1e3be1561
@ -655,14 +655,15 @@ static void ieee80211_sta_merge_ibss(struct ieee80211_sub_if_data *sdata)
|
||||
if (ieee80211_sta_active_ibss(sdata))
|
||||
return;
|
||||
|
||||
if (ifibss->fixed_channel)
|
||||
if (ifibss->fixed_bssid)
|
||||
return;
|
||||
|
||||
printk(KERN_DEBUG "%s: No active IBSS STAs - trying to scan for other "
|
||||
"IBSS networks with same SSID (merge)\n", sdata->name);
|
||||
|
||||
ieee80211_request_internal_scan(sdata,
|
||||
ifibss->ssid, ifibss->ssid_len, NULL);
|
||||
ifibss->ssid, ifibss->ssid_len,
|
||||
ifibss->fixed_channel ? ifibss->channel : NULL);
|
||||
}
|
||||
|
||||
static void ieee80211_sta_create_ibss(struct ieee80211_sub_if_data *sdata)
|
||||
|
Loading…
Reference in New Issue
Block a user