summaryrefslogtreecommitdiffstats
path: root/sys/net80211/ieee80211_ht.h
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_ht.h
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_ht.h')
-rw-r--r--sys/net80211/ieee80211_ht.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/net80211/ieee80211_ht.h b/sys/net80211/ieee80211_ht.h
index dfad584..62d2f2e 100644
--- a/sys/net80211/ieee80211_ht.h
+++ b/sys/net80211/ieee80211_ht.h
@@ -165,7 +165,7 @@ void ieee80211_setup_basic_htrates(struct ieee80211_node *,
struct mbuf *ieee80211_decap_amsdu(struct ieee80211_node *, struct mbuf *);
int ieee80211_ampdu_reorder(struct ieee80211_node *, struct mbuf *);
void ieee80211_recv_bar(struct ieee80211_node *, struct mbuf *);
-void ieee80211_ht_node_init(struct ieee80211_node *, const uint8_t *);
+void ieee80211_ht_node_init(struct ieee80211_node *);
void ieee80211_ht_node_cleanup(struct ieee80211_node *);
void ieee80211_ht_node_age(struct ieee80211_node *);
@@ -178,6 +178,9 @@ void ieee80211_htprot_update(struct ieee80211com *, int protmode);
void ieee80211_ht_timeout(struct ieee80211com *);
void ieee80211_parse_htcap(struct ieee80211_node *, const uint8_t *);
void ieee80211_parse_htinfo(struct ieee80211_node *, const uint8_t *);
+void ieee80211_ht_updateparams(struct ieee80211_node *, const uint8_t *,
+ const uint8_t *);
+void ieee80211_ht_updatehtcap(struct ieee80211_node *, const uint8_t *);
void ieee80211_recv_action(struct ieee80211_node *,
const uint8_t *, const uint8_t *);
int ieee80211_ampdu_request(struct ieee80211_node *,
OpenPOWER on IntegriCloud