diff options
author | David Gwynne <dlg@cvs.openbsd.org> | 2004-12-06 11:15:15 +0000 |
---|---|---|
committer | David Gwynne <dlg@cvs.openbsd.org> | 2004-12-06 11:15:15 +0000 |
commit | 86f11d1ddd3b474eca26a50e956355b6880ce724 (patch) | |
tree | 6ba2d9467ace69389a1a78b82c49cac860ffc9d3 | |
parent | 932219ebb9c68cf9e9ad8171d7b3f08da961c568 (diff) |
add a flag that lets a wireless card indicate it can receive probe responses
or beacons on any channel during a scan.
ok damien@ "come on" deraadt@
-rw-r--r-- | sys/net80211/ieee80211_input.c | 5 | ||||
-rw-r--r-- | sys/net80211/ieee80211_var.h | 3 |
2 files changed, 5 insertions, 3 deletions
diff --git a/sys/net80211/ieee80211_input.c b/sys/net80211/ieee80211_input.c index 0d2ff372cdb..e1c1523c590 100644 --- a/sys/net80211/ieee80211_input.c +++ b/sys/net80211/ieee80211_input.c @@ -1,5 +1,5 @@ /* $NetBSD: ieee80211_input.c,v 1.24 2004/05/31 11:12:24 dyoung Exp $ */ -/* $OpenBSD: ieee80211_input.c,v 1.2 2004/11/02 02:15:49 reyk Exp $ */ +/* $OpenBSD: ieee80211_input.c,v 1.3 2004/12/06 11:15:14 dlg Exp $ */ /*- * Copyright (c) 2001 Atsushi Onoe @@ -1042,7 +1042,8 @@ ieee80211_recv_mgmt(struct ieee80211com *ic, struct mbuf *m0, ic->ic_stats.is_rx_badchan++; return; } - if (chan != bchan && ic->ic_phytype != IEEE80211_T_FH) { + if (!(ic->ic_caps & IEEE80211_C_SCANALL) && + (chan != bchan && ic->ic_phytype != IEEE80211_T_FH)) { /* * Frame was received on a channel different from the * one indicated in the DS params element id; diff --git a/sys/net80211/ieee80211_var.h b/sys/net80211/ieee80211_var.h index ca735745149..a518940c271 100644 --- a/sys/net80211/ieee80211_var.h +++ b/sys/net80211/ieee80211_var.h @@ -1,4 +1,4 @@ -/* $OpenBSD: ieee80211_var.h,v 1.2 2004/11/02 02:15:49 reyk Exp $ */ +/* $OpenBSD: ieee80211_var.h,v 1.3 2004/12/06 11:15:14 dlg Exp $ */ /* $NetBSD: ieee80211_var.h,v 1.7 2004/05/06 03:07:10 dyoung Exp $ */ /*- @@ -282,6 +282,7 @@ struct ieee80211com { #define IEEE80211_C_SHSLOT 0x00000080 /* CAPABILITY: short slottime */ #define IEEE80211_C_SHPREAMBLE 0x00000100 /* CAPABILITY: short preamble */ #define IEEE80211_C_MONITOR 0x00000200 /* CAPABILITY: monitor mode */ +#define IEEE80211_C_SCANALL 0x00000400 /* CAPABILITY: scan all chan */ /* flags for ieee80211_fix_rate() */ #define IEEE80211_F_DOSORT 0x00000001 /* sort rate list */ |