diff options
author | sam <sam@FreeBSD.org> | 2005-08-08 03:30:57 +0000 |
---|---|---|
committer | sam <sam@FreeBSD.org> | 2005-08-08 03:30:57 +0000 |
commit | a71123cebfbc9af46b53dec14375534ae5c7076e (patch) | |
tree | b61ffe07bac4a6b4eaff6820d88a3707be5fc831 /sys/net80211/ieee80211_node.c | |
parent | 3060bdb6720112effa149af05f489daf4dc779ff (diff) | |
download | FreeBSD-src-a71123cebfbc9af46b53dec14375534ae5c7076e.zip FreeBSD-src-a71123cebfbc9af46b53dec14375534ae5c7076e.tar.gz |
Cleanup beacon/listen interval handling:
o separate configured beacon interval from listen interval; this
avoids potential use of one value for the other (e.g. setting
powersavesleep to 0 clobbers the beacon interval used in hostap
or ibss mode)
o bounds check the beacon interval received in probe response and
beacon frames and drop frames with bogus settings; not clear
if we should instead clamp the value as any alteration would
result in mismatched sta+ap configuration and probably be more
confusing (don't want to log to the console but perhaps ok with
rate limiting)
o while here up max beacon interval to reflect WiFi standard
Noticed by: Martin <nakal@nurfuerspam.de>
MFC after: 1 week
Diffstat (limited to 'sys/net80211/ieee80211_node.c')
-rw-r--r-- | sys/net80211/ieee80211_node.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/net80211/ieee80211_node.c b/sys/net80211/ieee80211_node.c index 12ff342..ff8cfcd 100644 --- a/sys/net80211/ieee80211_node.c +++ b/sys/net80211/ieee80211_node.c @@ -389,7 +389,7 @@ ieee80211_create_ibss(struct ieee80211com* ic, struct ieee80211_channel *chan) ni->ni_esslen = ic->ic_des_esslen; memcpy(ni->ni_essid, ic->ic_des_essid, ni->ni_esslen); copy_bss(ni, ic->ic_bss); - ni->ni_intval = ic->ic_lintval; + ni->ni_intval = ic->ic_bintval; if (ic->ic_flags & IEEE80211_F_PRIVACY) ni->ni_capinfo |= IEEE80211_CAPINFO_PRIVACY; if (ic->ic_phytype == IEEE80211_T_FH) { @@ -441,7 +441,7 @@ ieee80211_reset_bss(struct ieee80211com *ic) ic->ic_bss = ieee80211_ref_node(ni); if (obss != NULL) { copy_bss(ni, obss); - ni->ni_intval = ic->ic_lintval; + ni->ni_intval = ic->ic_bintval; ieee80211_free_node(obss); } } |