aboutsummaryrefslogtreecommitdiff
path: root/sys/net80211
diff options
context:
space:
mode:
authorAndriy Voskoboinyk <avos@FreeBSD.org>2019-01-23 13:17:03 +0000
committerAndriy Voskoboinyk <avos@FreeBSD.org>2019-01-23 13:17:03 +0000
commit7e2bcba46e9b01c9cbb7a1289f5a1fb98c079ec4 (patch)
tree0f705d2e932545a4d96800b2456f9e139e939d92 /sys/net80211
parent938ed5dad6554aa457ceecc0178b6e406496d923 (diff)
downloadsrc-7e2bcba46e9b01c9cbb7a1289f5a1fb98c079ec4.tar.gz
src-7e2bcba46e9b01c9cbb7a1289f5a1fb98c079ec4.zip
net80211: turn channel mode check into assertion.
There is may be only 11b channel (since chanflags[] table maps MODE_AUTO to the corresponding 11b channel flags). Checked with RTL8812AU, STA mode. MFC after: 5 days
Notes
Notes: svn path=/head/; revision=343342
Diffstat (limited to 'sys/net80211')
-rw-r--r--sys/net80211/ieee80211_scan_sta.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/net80211/ieee80211_scan_sta.c b/sys/net80211/ieee80211_scan_sta.c
index 675dd83a25b7..1cada2927591 100644
--- a/sys/net80211/ieee80211_scan_sta.c
+++ b/sys/net80211/ieee80211_scan_sta.c
@@ -496,12 +496,15 @@ add_channels(struct ieee80211vap *vap,
if (c == NULL || isexcluded(vap, c))
continue;
if (mode == IEEE80211_MODE_AUTO) {
+ KASSERT(IEEE80211_IS_CHAN_B(c),
+ ("%s: wrong channel for 'auto' mode %u / %u\n",
+ __func__, c->ic_freq, c->ic_flags));
+
/*
* XXX special-case 11b/g channels so we select
* the g channel if both are present.
*/
- if (IEEE80211_IS_CHAN_B(c) &&
- (cg = find11gchannel(ic, i, c->ic_freq)) != NULL)
+ if ((cg = find11gchannel(ic, i, c->ic_freq)) != NULL)
c = cg;
}
ss->ss_chans[ss->ss_last++] = c;