summaryrefslogtreecommitdiffstats
path: root/sys/net80211/ieee80211_hostap.c
diff options
context:
space:
mode:
authorsam <sam@FreeBSD.org>2008-09-21 23:44:15 +0000
committersam <sam@FreeBSD.org>2008-09-21 23:44:15 +0000
commitb823d18ca491ab2a0d4996a20a7368650e7d7715 (patch)
tree68592baf2027c37efcdcd6532dbf42b70cde44eb /sys/net80211/ieee80211_hostap.c
parent40f433ee351dc5c31546fb51df1fb8be5e330955 (diff)
downloadFreeBSD-src-b823d18ca491ab2a0d4996a20a7368650e7d7715.zip
FreeBSD-src-b823d18ca491ab2a0d4996a20a7368650e7d7715.tar.gz
Revamp ht ie handling:
o change ieee80211_parse_htcap and ieee80211_parse_htinfo to save only internal state obtained from the ie's; no dynamic state such as ni_chw is altered o add ieee80211_ht_updateparams to parse ht cap+info ie's and update dynamic node state o change ieee80211_ht_node_init to not take an htcap ie that is parsed; instead have the caller make a separate call as one caller wants to parse the ie while another wants to parse both cap+info ie's and update state so can better do this with ieee80211_ht_updateparams These changes fix sta mode state handling where the node's channel width was shifted to ht20/ht40 prematurely.
Diffstat (limited to 'sys/net80211/ieee80211_hostap.c')
-rw-r--r--sys/net80211/ieee80211_hostap.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/net80211/ieee80211_hostap.c b/sys/net80211/ieee80211_hostap.c
index c876dab..7f28f4f 100644
--- a/sys/net80211/ieee80211_hostap.c
+++ b/sys/net80211/ieee80211_hostap.c
@@ -2038,7 +2038,8 @@ hostap_recv_mgmt(struct ieee80211_node *ni, struct mbuf *m0,
vap->iv_stats.is_ht_assoc_norate++;
return;
}
- ieee80211_ht_node_init(ni, htcap);
+ ieee80211_ht_node_init(ni);
+ ieee80211_ht_updatehtcap(ni, htcap);
} else if (ni->ni_flags & IEEE80211_NODE_HT)
ieee80211_ht_node_cleanup(ni);
/*
OpenPOWER on IntegriCloud