Date: Tue, 22 Nov 2016 02:51:07 +0000 (UTC) From: Adrian Chadd <adrian@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r308952 - head/sys/net80211 Message-ID: <201611220251.uAM2p78f093469@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: adrian Date: Tue Nov 22 02:51:06 2016 New Revision: 308952 URL: https://svnweb.freebsd.org/changeset/base/308952 Log: [net80211] store references to VHT and related IEs. This just stores pointers to the IE; it doesn't yet parse anything. Note: it blows out the size of ieee80211_node, so this will require ye olde kernel/modules recompile. Modified: head/sys/net80211/ieee80211_node.c head/sys/net80211/ieee80211_node.h Modified: head/sys/net80211/ieee80211_node.c ============================================================================== --- head/sys/net80211/ieee80211_node.c Tue Nov 22 02:42:00 2016 (r308951) +++ head/sys/net80211/ieee80211_node.c Tue Nov 22 02:51:06 2016 (r308952) @@ -896,6 +896,10 @@ ieee80211_sta_join(struct ieee80211vap * if (ni->ni_ies.tdma_ie != NULL) ieee80211_parse_tdma(ni, ni->ni_ies.tdma_ie); #endif + + /* XXX parse VHT IEs */ + /* XXX parse BSSLOAD IE */ + /* XXX parse APCHANREP IE */ } vap->iv_dtim_period = se->se_dtimperiod; @@ -1055,6 +1059,21 @@ ieee80211_ies_expand(struct ieee80211_ie ies->meshid_ie = ie; break; #endif + case IEEE80211_ELEMID_VHT_CAP: + ies->vhtcap_ie = ie; + break; + case IEEE80211_ELEMID_VHT_OPMODE: + ies->vhtopmode_ie = ie; + break; + case IEEE80211_ELEMID_VHT_PWR_ENV: + ies->vhtpwrenv_ie = ie; + break; + case IEEE80211_ELEMID_BSSLOAD: + ies->bssload_ie = ie; + break; + case IEEE80211_ELEMID_APCHANREP: + ies->apchanrep_ie = ie; + break; } ielen -= 2 + ie[1]; ie += 2 + ie[1]; Modified: head/sys/net80211/ieee80211_node.h ============================================================================== --- head/sys/net80211/ieee80211_node.h Tue Nov 22 02:42:00 2016 (r308951) +++ head/sys/net80211/ieee80211_node.h Tue Nov 22 02:51:06 2016 (r308952) @@ -83,6 +83,11 @@ struct ieee80211_ies { uint8_t *htinfo_ie; /* captured HTINFO ie */ uint8_t *tdma_ie; /* captured TDMA ie */ uint8_t *meshid_ie; /* captured MESH ID ie */ + uint8_t *vhtcap_ie; /* captured VHTCAP ie */ + uint8_t *vhtopmode_ie; /* captured VHTOPMODE ie */ + uint8_t *vhtpwrenv_ie; /* captured VHTPWRENV ie */ + uint8_t *apchanrep_ie; /* captured APCHANREP ie */ + uint8_t *bssload_ie; /* captured BSSLOAD ie */ uint8_t *spare[4]; /* NB: these must be the last members of this structure */ uint8_t *data; /* frame data > 802.11 header */
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201611220251.uAM2p78f093469>