Lines Matching refs:vap

994 	struct ieee80211vap *vap;
1016 TAILQ_FOREACH(vap, &ic->ic_vaps, iv_next){
1017 if(vap->iv_opmode != IEEE80211_M_HOSTAP)
1019 /* WDS vap's always share the local mac address. */
1023 if (vap == NULL) {
1035 vap = &rvp->vap;
1037 if (ieee80211_vap_setup(ic, vap, name, unit, opmode, flags,
1044 vap->iv_update_beacon = run_update_beacon;
1045 vap->iv_max_aid = RT2870_WCID_MAX;
1052 vap->iv_ampdu_rxmax = IEEE80211_HTCAP_MAXRXAMPDU_64K;
1054 vap->iv_ampdu_rxmax = IEEE80211_HTCAP_MAXRXAMPDU_32K;
1055 vap->iv_ampdu_density = IEEE80211_HTCAP_MPDUDENSITY_2; /* 2uS */
1063 vap->iv_key_delete = (void *)run_key_delete;
1064 vap->iv_key_set = (void *)run_key_set;
1067 rvp->newstate = vap->iv_newstate;
1068 vap->iv_newstate = run_newstate;
1070 rvp->recv_mgmt = vap->iv_recv_mgmt;
1071 vap->iv_recv_mgmt = run_recv_mgmt;
1074 ieee80211_ratectl_init(vap);
1075 ieee80211_ratectl_setinterval(vap, 1000 /* 1 sec */);
1078 ieee80211_vap_attach(vap, run_media_change, ieee80211_media_status,
1098 return (vap);
1102 run_vap_delete(struct ieee80211vap *vap)
1104 struct run_vap *rvp = RUN_VAP(vap);
1109 if (vap == NULL)
1112 ic = vap->iv_ic;
1128 "vap=%p rvp_id=%d bmap=%x rvp_cnt=%d\n",
1129 vap, rvp_id, sc->rvp_bmap, sc->rvp_cnt);
1133 ieee80211_ratectl_deinit(vap);
1134 ieee80211_vap_detach(vap);
2113 run_node_alloc(struct ieee80211vap *vap, const uint8_t mac[IEEE80211_ADDR_LEN])
2122 struct ieee80211vap *vap = ifp->if_softc;
2123 struct ieee80211com *ic = vap->iv_ic;
2137 tp = &vap->iv_txparms[ieee80211_chan2mode(ic->ic_curchan)];
2149 ni = ieee80211_ref_node(vap->iv_bss);
2170 run_newstate(struct ieee80211vap *vap, enum ieee80211_state nstate, int arg)
2173 struct ieee80211com *ic = vap->iv_ic;
2175 struct run_vap *rvp = RUN_VAP(vap);
2182 ostate = vap->iv_state;
2209 /* abort TSF synchronization if there is no vap running */
2224 switch (vap->iv_opmode) {
2228 ic->ic_opmode = vap->iv_opmode;
2229 run_update_beacon_cb(vap);
2234 ic->ic_opmode = vap->iv_opmode;
2235 run_update_beacon_cb(vap);
2240 ic->ic_opmode = vap->iv_opmode;
2248 ic->ic_opmode = vap->iv_opmode;
2252 if (vap->iv_opmode != IEEE80211_M_MONITOR) {
2264 ni = ieee80211_ref_node(vap->iv_bss);
2271 tp = &vap->iv_txparms[ieee80211_chan2mode(ic->ic_curchan)];
2295 return(rvp->newstate(vap, nstate, arg));
2359 struct ieee80211vap *vap = cmdq->arg1;
2361 struct ieee80211com *ic = vap->iv_ic;
2371 if (vap->iv_opmode == IEEE80211_M_HOSTAP)
2372 ni = ieee80211_find_vap_node(&ic->ic_sta, vap, cmdq->mac);
2374 ni = vap->iv_bss;
2405 base = RT2860_SKEY(RUN_VAP(vap)->rvp_id, k->wk_keyix);
2407 wcid = (vap->iv_opmode == IEEE80211_M_STA) ?
2430 iv[3] = vap->iv_def_txkey << 6;
2482 run_key_set(struct ieee80211vap *vap, struct ieee80211_key *k)
2484 struct ieee80211com *ic = vap->iv_ic;
2492 sc->cmdq[i].arg1 = vap;
2501 if (vap->iv_opmode == IEEE80211_M_HOSTAP) {
2513 * vap is gone. Don't refer it.
2551 run_key_delete(struct ieee80211vap *vap, struct ieee80211_key *k)
2553 struct ieee80211com *ic = vap->iv_ic;
2595 struct ieee80211vap *vap = TAILQ_FIRST(&ic->ic_vaps);
2597 if (vap == NULL)
2600 if (sc->rvp_cnt > 1 || vap->iv_opmode != IEEE80211_M_STA) {
2686 struct ieee80211vap *vap = ni->ni_vap;
2695 if (sc->rvp_cnt <= 1 && vap->iv_opmode == IEEE80211_M_STA &&
2696 ni != vap->iv_bss)
2702 if (sc->rvp_cnt <= 1 && (vap->iv_opmode == IEEE80211_M_IBSS ||
2703 vap->iv_opmode == IEEE80211_M_STA)) {
2711 if_inc_counter(vap->iv_ifp, IFCOUNTER_OERRORS,
2740 ieee80211_ratectl_tx_update(vap, txs);
2774 struct ieee80211vap *vap = ni->ni_vap;
2775 struct ieee80211com *ic = vap->iv_ic;
2781 wcid = (vap->iv_opmode == IEEE80211_M_STA) ?
2808 rate = vap->iv_txparms[ieee80211_chan2mode(ic->ic_curchan)].mgmtrate;
2845 struct ieee80211vap *vap = ni->ni_vap;
2846 struct run_softc *sc = vap->iv_ic->ic_softc;
2847 struct run_vap *rvp = RUN_VAP(vap);
2852 if (vap->iv_state == IEEE80211_S_RUN &&
3184 struct ieee80211vap *vap = NULL;
3235 vap = data->ni->ni_vap;
3236 if (ieee80211_radiotap_active_vap(vap)) {
3255 ieee80211_radiotap_tx(vap, m);
3277 vap = data->ni->ni_vap;
3282 if (vap == NULL)
3283 vap = TAILQ_FIRST(&ic->ic_vaps);
3292 sc->cmdq[i].arg0 = vap;
3358 struct ieee80211vap *vap = data->ni->ni_vap;
3409 ((m->m_pkthdr.len + IEEE80211_CRC_LEN > vap->iv_rtsthreshold) ||
3418 if (vap->iv_opmode != IEEE80211_M_STA && !IEEE80211_QOS_HAS_SEQ(wh))
3427 struct ieee80211vap *vap = ni->ni_vap;
3517 txwi->wcid = (vap->iv_opmode == IEEE80211_M_STA) ?
3543 if (sc->rvp_cnt > 1 || vap->iv_opmode == IEEE80211_M_HOSTAP ||
3544 vap->iv_opmode == IEEE80211_M_MBSS) {
3554 * We do this only in HOSTAP or multiple vap mode since FIFO stats
5000 run_update_beacon(struct ieee80211vap *vap, int item)
5002 struct ieee80211com *ic = vap->iv_ic;
5003 struct ieee80211_beacon_offsets *bo = &vap->iv_bcn_off;
5004 struct ieee80211_node *ni = vap->iv_bss;
5006 struct run_vap *rvp = RUN_VAP(vap);
5035 sc->cmdq[i].arg0 = vap;
5044 struct ieee80211vap *vap = arg;
5045 struct ieee80211_node *ni = vap->iv_bss;
5046 struct run_vap *rvp = RUN_VAP(vap);
5047 struct ieee80211com *ic = vap->iv_ic;
5132 struct ieee80211vap *vap = arg;
5133 struct run_softc *sc = vap->iv_ic->ic_softc;
5137 if(vap->iv_state == IEEE80211_S_RUN &&
5138 vap->iv_opmode != IEEE80211_M_STA)
5140 else if (vap->iv_state == IEEE80211_S_SCAN) {
5144 ieee80211_cancel_scan(vap);
5208 struct ieee80211vap *vap = TAILQ_FIRST(&ic->ic_vaps);
5212 RUN_VAP(vap)->rvp_id, ic->ic_opmode);
5216 tmp |= vap->iv_bss->ni_intval * 16;
6102 struct ieee80211vap *vap = TAILQ_FIRST(&ic->ic_vaps);
6132 run_set_macaddr(sc, vap ? vap->iv_myaddr : ic->ic_macaddr);