Lines Matching refs:vap

88 hostap_vdetach(struct ieee80211vap *vap)  in hostap_vdetach()  argument
93 hostap_vattach(struct ieee80211vap *vap) in hostap_vattach() argument
95 vap->iv_newstate = hostap_newstate; in hostap_vattach()
96 vap->iv_input = hostap_input; in hostap_vattach()
97 vap->iv_recv_mgmt = hostap_recv_mgmt; in hostap_vattach()
98 vap->iv_recv_ctl = hostap_recv_ctl; in hostap_vattach()
99 vap->iv_opdetach = hostap_vdetach; in hostap_vattach()
100 vap->iv_deliver_data = hostap_deliver_data; in hostap_vattach()
101 vap->iv_recv_pspoll = ieee80211_recv_pspoll; in hostap_vattach()
118 struct ieee80211vap *vap = ni->ni_vap; in sta_csa() local
121 if (ni->ni_inact > vap->iv_inact_init) { in sta_csa()
122 ni->ni_inact = vap->iv_inact_init; in sta_csa()
123 IEEE80211_NOTE(vap, IEEE80211_MSG_INACT, ni, in sta_csa()
153 hostap_newstate(struct ieee80211vap *vap, enum ieee80211_state nstate, int arg) in hostap_newstate() argument
155 struct ieee80211com *ic = vap->iv_ic; in hostap_newstate()
160 ostate = vap->iv_state; in hostap_newstate()
161 IEEE80211_DPRINTF(vap, IEEE80211_MSG_STATE, "%s: %s -> %s (%d)\n", in hostap_newstate()
164 vap->iv_state = nstate; /* state transition */ in hostap_newstate()
166 ieee80211_cancel_scan(vap); /* background scan */ in hostap_newstate()
171 ieee80211_cancel_scan(vap); in hostap_newstate()
174 ieee80211_dfs_cac_stop(vap); in hostap_newstate()
177 ieee80211_iterate_nodes_vap(&ic->ic_sta, vap, in hostap_newstate()
185 ieee80211_reset_bss(vap); in hostap_newstate()
187 if (vap->iv_auth->ia_detach != NULL) in hostap_newstate()
188 vap->iv_auth->ia_detach(vap); in hostap_newstate()
194 ieee80211_iterate_nodes_vap(&ic->ic_sta, vap, in hostap_newstate()
202 vap->iv_flags_ext &= ~IEEE80211_FEXT_NONERP_PR; in hostap_newstate()
203 vap->iv_flags_ht &= ~IEEE80211_FHT_NONHT_PR; in hostap_newstate()
212 ieee80211_dfs_cac_stop(vap); in hostap_newstate()
215 if (vap->iv_des_chan != IEEE80211_CHAN_ANYC && in hostap_newstate()
216 !IEEE80211_IS_CHAN_RADAR(vap->iv_des_chan)) { in hostap_newstate()
223 ieee80211_create_ibss(vap, vap->iv_des_chan); in hostap_newstate()
233 if (vap->iv_flags_ext & IEEE80211_FEXT_SCANREQ) { in hostap_newstate()
234 ieee80211_check_scan(vap, in hostap_newstate()
235 vap->iv_scanreq_flags, in hostap_newstate()
236 vap->iv_scanreq_duration, in hostap_newstate()
237 vap->iv_scanreq_mindwell, in hostap_newstate()
238 vap->iv_scanreq_maxdwell, in hostap_newstate()
239 vap->iv_scanreq_nssid, vap->iv_scanreq_ssid); in hostap_newstate()
240 vap->iv_flags_ext &= ~IEEE80211_FEXT_SCANREQ; in hostap_newstate()
242 ieee80211_check_scan_current(vap); in hostap_newstate()
248 ieee80211_check_scan_current(vap); in hostap_newstate()
259 ieee80211_dfs_cac_start(vap); in hostap_newstate()
262 if (vap->iv_flags & IEEE80211_F_WPA) { in hostap_newstate()
273 ieee80211_create_ibss(vap, in hostap_newstate()
275 ic->ic_curchan, vap->iv_flags_ht)); in hostap_newstate()
290 ieee80211_iterate_nodes_vap(&ic->ic_sta, vap, in hostap_newstate()
296 ieee80211_node_set_chan(vap->iv_bss, in hostap_newstate()
298 ieee80211_htchanflags(vap->iv_bss->ni_chan))); in hostap_newstate()
304 if (ieee80211_msg_debug(vap)) { in hostap_newstate()
305 struct ieee80211_node *ni = vap->iv_bss; in hostap_newstate()
306 ieee80211_note(vap, in hostap_newstate()
324 if (vap->iv_auth->ia_attach != NULL) { in hostap_newstate()
326 vap->iv_auth->ia_attach(vap); in hostap_newstate()
327 } else if (vap->iv_auth->ia_detach != NULL) { in hostap_newstate()
328 vap->iv_auth->ia_detach(vap); in hostap_newstate()
330 ieee80211_node_authorize(vap->iv_bss); in hostap_newstate()
341 ieee80211_iterate_nodes_vap(&ic->ic_sta, vap, in hostap_newstate()
352 hostap_deliver_data(struct ieee80211vap *vap, in hostap_deliver_data() argument
356 struct ifnet *ifp = vap->iv_ifp; in hostap_deliver_data()
362 KASSERT(vap->iv_opmode == IEEE80211_M_HOSTAP, in hostap_deliver_data()
363 ("gack, opmode %d", vap->iv_opmode)); in hostap_deliver_data()
377 if ((vap->iv_flags & IEEE80211_F_NOBRIDGE) == 0) { in hostap_deliver_data()
395 &vap->iv_ic->ic_sta, vap, eh->ether_dhost); in hostap_deliver_data()
403 if (sta != vap->iv_bss) { in hostap_deliver_data()
408 vap->iv_stats.is_rx_unauth++; in hostap_deliver_data()
415 (void) ieee80211_vap_xmitpkt(vap, mcopy); in hostap_deliver_data()
427 ieee80211_dwds_mcast(vap, m); in hostap_deliver_data()
435 ieee80211_vap_deliver_data(vap, m); in hostap_deliver_data()
446 doprint(struct ieee80211vap *vap, int subtype) in doprint() argument
450 return (vap->iv_ic->ic_flags & IEEE80211_F_SCAN); in doprint()
471 struct ieee80211vap *vap = ni->ni_vap; in hostap_input() local
473 struct ifnet *ifp = vap->iv_ifp; in hostap_input()
514 IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_ANY, in hostap_input()
517 vap->iv_stats.is_rx_tooshort++; in hostap_input()
529 IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_ANY, in hostap_input()
532 vap->iv_stats.is_rx_badversion++; in hostap_input()
546 IEEE80211_DISCARD_MAC(vap, in hostap_input()
550 vap->iv_stats.is_rx_tooshort++; in hostap_input()
560 !IEEE80211_ADDR_EQ(bssid, vap->iv_bss->ni_bssid) && in hostap_input()
562 ieee80211_vap_get_broadcast_address(vap))) { in hostap_input()
564 IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_INPUT, in hostap_input()
566 vap->iv_stats.is_rx_wrongbss++; in hostap_input()
587 IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_ANY, in hostap_input()
590 vap->iv_stats.is_rx_tooshort++; in hostap_input()
595 (vap->iv_flags & IEEE80211_F_DWDS)))) { in hostap_input()
597 IEEE80211_DISCARD(vap, in hostap_input()
601 IEEE80211_DISCARD(vap, in hostap_input()
607 vap->iv_stats.is_rx_wrongdir++; in hostap_input()
611 if (ni == vap->iv_bss) { in hostap_input()
612 IEEE80211_DISCARD(vap, IEEE80211_MSG_INPUT, in hostap_input()
617 vap->iv_stats.is_rx_notassoc++; in hostap_input()
621 IEEE80211_DISCARD(vap, IEEE80211_MSG_INPUT, in hostap_input()
626 vap->iv_stats.is_rx_notassoc++; in hostap_input()
636 vap->iv_node_ps(ni, in hostap_input()
645 IEEE80211_DISCARD(vap, in hostap_input()
650 vap->iv_stats.is_rx_unauth++; in hostap_input()
680 if ((vap->iv_flags & IEEE80211_F_PRIVACY) == 0) { in hostap_input()
684 IEEE80211_DISCARD(vap, IEEE80211_MSG_INPUT, in hostap_input()
686 vap->iv_stats.is_rx_noprivacy++; in hostap_input()
726 if (key != NULL && !ieee80211_crypto_demic(vap, key, m, 0)) { in hostap_input()
727 IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_INPUT, in hostap_input()
729 vap->iv_stats.is_rx_demicfail++; in hostap_input()
734 if (ieee80211_radiotap_active_vap(vap)) in hostap_input()
735 ieee80211_radiotap_rx(vap, m); in hostap_input()
740 m = ieee80211_decap(vap, m, hdrspace, qos); in hostap_input()
747 IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_INPUT, in hostap_input()
749 vap->iv_stats.is_rx_decap++; in hostap_input()
768 IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_INPUT, in hostap_input()
773 vap->iv_stats.is_rx_unauth++; in hostap_input()
782 if ((vap->iv_flags & IEEE80211_F_DROPUNENC) && in hostap_input()
790 vap->iv_stats.is_rx_unencrypted++; in hostap_input()
802 m = ieee80211_decap_fastframe(vap, ni, m); in hostap_input()
810 hostap_deliver_data(vap, ni, m); in hostap_input()
814 vap->iv_stats.is_rx_mgmt++; in hostap_input()
817 IEEE80211_DISCARD(vap, IEEE80211_MSG_INPUT, in hostap_input()
819 vap->iv_stats.is_rx_wrongdir++; in hostap_input()
823 IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_ANY, in hostap_input()
826 vap->iv_stats.is_rx_tooshort++; in hostap_input()
831 IEEE80211_DISCARD(vap, IEEE80211_MSG_ANY, in hostap_input()
834 vap->iv_stats.is_rx_mgtdiscard++; /* XXX stat */ in hostap_input()
838 if ((ieee80211_msg_debug(vap) && doprint(vap, subtype)) || in hostap_input()
839 ieee80211_msg_dumppkts(vap)) { in hostap_input()
840 net80211_vap_printf(vap, in hostap_input()
852 IEEE80211_DISCARD(vap, IEEE80211_MSG_INPUT, in hostap_input()
855 vap->iv_stats.is_rx_mgtdiscard++; /* XXX */ in hostap_input()
858 if ((vap->iv_flags & IEEE80211_F_PRIVACY) == 0) { in hostap_input()
862 IEEE80211_DISCARD(vap, IEEE80211_MSG_INPUT, in hostap_input()
864 vap->iv_stats.is_rx_noprivacy++; in hostap_input()
881 if (ieee80211_radiotap_active_vap(vap)) in hostap_input()
882 ieee80211_radiotap_rx(vap, m); in hostap_input()
884 vap->iv_recv_mgmt(ni, m, subtype, rxs, rssi, nf); in hostap_input()
888 vap->iv_stats.is_rx_ctl++; in hostap_input()
891 vap->iv_recv_ctl(ni, m, subtype); in hostap_input()
894 IEEE80211_DISCARD(vap, IEEE80211_MSG_ANY, in hostap_input()
903 if (need_tap && ieee80211_radiotap_active_vap(vap)) in hostap_input()
904 ieee80211_radiotap_rx(vap, m); in hostap_input()
914 struct ieee80211vap *vap = ni->ni_vap; in hostap_auth_open() local
916 KASSERT(vap->iv_state == IEEE80211_S_RUN, ("state %d", vap->iv_state)); in hostap_auth_open()
919 IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_AUTH, in hostap_auth_open()
922 vap->iv_stats.is_rx_bad_auth++; /* XXX */ in hostap_auth_open()
939 vap->iv_stats.is_rx_bad_auth++; in hostap_auth_open()
943 if (ni == vap->iv_bss) { in hostap_auth_open()
944 ni = ieee80211_dup_bss(vap, wh->i_addr2); in hostap_auth_open()
961 if (vap->iv_acl != NULL && in hostap_auth_open()
962 vap->iv_acl->iac_getpolicy(vap) == IEEE80211_MACCMD_POLICY_RADIUS) { in hostap_auth_open()
970 IEEE80211_NOTE_MAC(vap, in hostap_auth_open()
976 IEEE80211_NOTE_MAC(vap, in hostap_auth_open()
993 struct ieee80211vap *vap = ni->ni_vap; in hostap_auth_shared() local
997 KASSERT(vap->iv_state == IEEE80211_S_RUN, ("state %d", vap->iv_state)); in hostap_auth_shared()
1007 if ((vap->iv_flags & IEEE80211_F_PRIVACY) == 0) { in hostap_auth_shared()
1008 IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_AUTH, in hostap_auth_shared()
1021 IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_AUTH, in hostap_auth_shared()
1024 vap->iv_stats.is_rx_bad_auth++; /* XXX maybe a unique error? */ in hostap_auth_shared()
1032 IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_AUTH, in hostap_auth_shared()
1036 vap->iv_stats.is_rx_bad_auth++; in hostap_auth_shared()
1048 IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_AUTH, in hostap_auth_shared()
1051 vap->iv_stats.is_rx_bad_auth++; in hostap_auth_shared()
1056 IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_AUTH, in hostap_auth_shared()
1059 vap->iv_stats.is_rx_bad_auth++; in hostap_auth_shared()
1073 if (ni == vap->iv_bss) { in hostap_auth_shared()
1074 ni = ieee80211_dup_bss(vap, wh->i_addr2); in hostap_auth_shared()
1108 IEEE80211_NOTE(vap, IEEE80211_MSG_DEBUG | IEEE80211_MSG_AUTH, in hostap_auth_shared()
1117 if (vap->iv_acl != NULL && in hostap_auth_shared()
1118 vap->iv_acl->iac_getpolicy(vap) == IEEE80211_MACCMD_POLICY_RADIUS) { in hostap_auth_shared()
1119 IEEE80211_NOTE_MAC(vap, in hostap_auth_shared()
1129 if (ni == vap->iv_bss) { in hostap_auth_shared()
1130 IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_AUTH, in hostap_auth_shared()
1137 IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_AUTH, in hostap_auth_shared()
1140 vap->iv_stats.is_rx_bad_auth++; in hostap_auth_shared()
1146 IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_AUTH, in hostap_auth_shared()
1149 vap->iv_stats.is_rx_auth_fail++; in hostap_auth_shared()
1153 IEEE80211_NOTE(vap, IEEE80211_MSG_DEBUG | IEEE80211_MSG_AUTH, in hostap_auth_shared()
1158 IEEE80211_DISCARD_MAC(vap, IEEE80211_MSG_AUTH, in hostap_auth_shared()
1161 vap->iv_stats.is_rx_bad_auth++; in hostap_auth_shared()
1246 ieee80211_parse_wpa(struct ieee80211vap *vap, const uint8_t *frm, in ieee80211_parse_wpa() argument
1258 if ((vap->iv_flags & IEEE80211_F_WPA1) == 0) { in ieee80211_parse_wpa()
1259 IEEE80211_DISCARD_IE(vap, in ieee80211_parse_wpa()
1261 wh, "WPA", "not WPA, flags 0x%x", vap->iv_flags); in ieee80211_parse_wpa()
1265 IEEE80211_DISCARD_IE(vap, in ieee80211_parse_wpa()
1274 IEEE80211_DISCARD_IE(vap, in ieee80211_parse_wpa()
1286 IEEE80211_DISCARD_IE(vap, in ieee80211_parse_wpa()
1298 IEEE80211_DISCARD_IE(vap, in ieee80211_parse_wpa()
1315 IEEE80211_DISCARD_IE(vap, in ieee80211_parse_wpa()
1331 IEEE80211_DISCARD_IE(vap, in ieee80211_parse_wpa()
1426 ieee80211_parse_rsn(struct ieee80211vap *vap, const uint8_t *frm, in ieee80211_parse_rsn() argument
1438 if ((vap->iv_flags & IEEE80211_F_WPA2) == 0) { in ieee80211_parse_rsn()
1439 IEEE80211_DISCARD_IE(vap, in ieee80211_parse_rsn()
1441 wh, "WPA", "not RSN, flags 0x%x", vap->iv_flags); in ieee80211_parse_rsn()
1446 IEEE80211_DISCARD_IE(vap, in ieee80211_parse_rsn()
1454 IEEE80211_DISCARD_IE(vap, in ieee80211_parse_rsn()
1466 IEEE80211_DISCARD_IE(vap, in ieee80211_parse_rsn()
1473 IEEE80211_DISCARD_IE(vap, in ieee80211_parse_rsn()
1485 IEEE80211_DISCARD_IE(vap, in ieee80211_parse_rsn()
1515 IEEE80211_DISCARD_IE(vap, in ieee80211_parse_rsn()
1526 IEEE80211_DISCARD_IE(vap, in ieee80211_parse_rsn()
1563 struct ieee80211vap *vap = ni->ni_vap; in wpa_assocreq() local
1569 if (vap->iv_flags_ext & IEEE80211_FEXT_WPS) { in wpa_assocreq()
1578 if ((vap->iv_flags_ext & IEEE80211_FEXT_TSN) && in wpa_assocreq()
1587 IEEE80211_DISCARD(vap, IEEE80211_MSG_ASSOC | IEEE80211_MSG_WPA, in wpa_assocreq()
1589 vap->iv_stats.is_rx_assoc_badwpaie++; in wpa_assocreq()
1595 switch (vap->iv_flags & IEEE80211_F_WPA) { in wpa_assocreq()
1607 IEEE80211_DISCARD(vap, IEEE80211_MSG_ASSOC | IEEE80211_MSG_WPA, in wpa_assocreq()
1610 vap->iv_stats.is_rx_assoc_badwpaie++; in wpa_assocreq()
1618 reason = ieee80211_parse_wpa(vap, wpa, rsnparms, wh); in wpa_assocreq()
1620 reason = ieee80211_parse_rsn(vap, rsn, rsnparms, wh); in wpa_assocreq()
1624 vap->iv_stats.is_rx_assoc_badwpaie++; in wpa_assocreq()
1627 IEEE80211_NOTE(vap, IEEE80211_MSG_ASSOC | IEEE80211_MSG_WPA, ni, in wpa_assocreq()
1657 struct ieee80211vap *vap = ni->ni_vap; in ieee80211_deliver_l2uf() local
1664 IEEE80211_NOTE(vap, IEEE80211_MSG_ASSOC, ni, in ieee80211_deliver_l2uf()
1666 vap->iv_stats.is_rx_nobuf++; /* XXX not right */ in ieee80211_deliver_l2uf()
1673 ieee80211_vap_get_broadcast_address(vap)); in ieee80211_deliver_l2uf()
1686 hostap_deliver_data(vap, ni, m); in ieee80211_deliver_l2uf()
1704 struct ieee80211vap *vap = ni->ni_vap; in capinfomismatch() local
1706 IEEE80211_NOTE_MAC(vap, IEEE80211_MSG_ANY, wh->i_addr2, in capinfomismatch()
1711 vap->iv_stats.is_rx_assoc_capmismatch++; in capinfomismatch()
1729 struct ieee80211vap *vap = ni->ni_vap; in authalgreject() local
1731 IEEE80211_DISCARD(vap, IEEE80211_MSG_ANY, in authalgreject()
1733 vap->iv_stats.is_rx_auth_unsupported++; in authalgreject()
1791 struct ieee80211vap *vap = ni->ni_vap; in hostap_recv_mgmt() local
1811 vap->iv_stats.is_rx_mgtdiscard++; in hostap_recv_mgmt()
1826 vap->iv_stats.is_rx_beacon++; /* XXX remove */ in hostap_recv_mgmt()
1844 ieee80211_probe_curchan(vap, true); in hostap_recv_mgmt()
1847 ieee80211_add_scan(vap, ic->ic_curchan, &scan, wh, in hostap_recv_mgmt()
1861 vap->iv_lastnonerp = ticks; in hostap_recv_mgmt()
1862 vap->iv_flags_ext |= IEEE80211_FEXT_NONERP_PR; in hostap_recv_mgmt()
1866 if (vap->iv_protmode != IEEE80211_PROT_NONE && in hostap_recv_mgmt()
1867 (vap->iv_flags & IEEE80211_F_USEPROT) == 0) { in hostap_recv_mgmt()
1868 IEEE80211_NOTE_FRAME(vap, in hostap_recv_mgmt()
1875 vap->iv_flags |= IEEE80211_F_USEPROT; in hostap_recv_mgmt()
1876 ieee80211_vap_update_erp_protmode(vap); in hostap_recv_mgmt()
1896 ieee80211_htprot_update(vap, in hostap_recv_mgmt()
1901 ieee80211_htprot_update(vap, in hostap_recv_mgmt()
1910 if (vap->iv_state != IEEE80211_S_RUN) { in hostap_recv_mgmt()
1911 vap->iv_stats.is_rx_mgtdiscard++; in hostap_recv_mgmt()
1917 if (vap->iv_acl != NULL && !vap->iv_acl->iac_check(vap, wh)) { in hostap_recv_mgmt()
1918 IEEE80211_DISCARD(vap, IEEE80211_MSG_ACL, in hostap_recv_mgmt()
1920 vap->iv_stats.is_rx_acl++; in hostap_recv_mgmt()
1950 IEEE80211_VERIFY_SSID(vap->iv_bss, ssid, return); in hostap_recv_mgmt()
1951 if ((vap->iv_flags & IEEE80211_F_HIDESSID) && ssid[1] == 0) { in hostap_recv_mgmt()
1952 IEEE80211_DISCARD(vap, IEEE80211_MSG_INPUT, in hostap_recv_mgmt()
1955 vap->iv_stats.is_rx_ssidmismatch++; /*XXX*/ in hostap_recv_mgmt()
1960 IEEE80211_NOTE_MAC(vap, IEEE80211_MSG_INPUT, wh->i_addr2, in hostap_recv_mgmt()
1968 ieee80211_send_proberesp(vap, wh->i_addr2, in hostap_recv_mgmt()
1975 if (vap->iv_state != IEEE80211_S_RUN) { in hostap_recv_mgmt()
1976 vap->iv_stats.is_rx_mgtdiscard++; in hostap_recv_mgmt()
1979 if (!IEEE80211_ADDR_EQ(wh->i_addr3, vap->iv_bss->ni_bssid)) { in hostap_recv_mgmt()
1980 IEEE80211_DISCARD(vap, IEEE80211_MSG_ANY, in hostap_recv_mgmt()
1982 vap->iv_stats.is_rx_wrongbss++; /*XXX unique stat?*/ in hostap_recv_mgmt()
1996 IEEE80211_NOTE_MAC(vap, IEEE80211_MSG_AUTH, wh->i_addr2, in hostap_recv_mgmt()
2001 if (vap->iv_acl != NULL && !vap->iv_acl->iac_check(vap, wh)) { in hostap_recv_mgmt()
2002 IEEE80211_DISCARD(vap, IEEE80211_MSG_ACL, in hostap_recv_mgmt()
2004 vap->iv_stats.is_rx_acl++; in hostap_recv_mgmt()
2010 if (vap->iv_flags & IEEE80211_F_COUNTERM) { in hostap_recv_mgmt()
2011 IEEE80211_DISCARD(vap, in hostap_recv_mgmt()
2014 vap->iv_stats.is_rx_auth_countermeasures++; in hostap_recv_mgmt()
2051 if (vap->iv_state != IEEE80211_S_RUN) { in hostap_recv_mgmt()
2052 vap->iv_stats.is_rx_mgtdiscard++; in hostap_recv_mgmt()
2055 if (!IEEE80211_ADDR_EQ(wh->i_addr3, vap->iv_bss->ni_bssid)) { in hostap_recv_mgmt()
2056 IEEE80211_DISCARD(vap, IEEE80211_MSG_ANY, in hostap_recv_mgmt()
2058 vap->iv_stats.is_rx_assoc_bss++; in hostap_recv_mgmt()
2068 if (ni == vap->iv_bss) { in hostap_recv_mgmt()
2069 IEEE80211_NOTE_MAC(vap, IEEE80211_MSG_ANY, wh->i_addr2, in hostap_recv_mgmt()
2075 vap->iv_stats.is_rx_assoc_notauth++; in hostap_recv_mgmt()
2132 else if (vap->iv_flags_ht & IEEE80211_FHT_HTCOMPAT) { in hostap_recv_mgmt()
2145 IEEE80211_VERIFY_SSID(vap->iv_bss, ssid, return); in hostap_recv_mgmt()
2166 if ((vap->iv_flags & IEEE80211_F_WPA) && in hostap_recv_mgmt()
2195 vap->iv_stats.is_rx_assoc_norate++; in hostap_recv_mgmt()
2204 if ((vap->iv_flags & IEEE80211_F_PUREG) && rate < 48) { in hostap_recv_mgmt()
2206 vap->iv_stats.is_rx_assoc_norate++; in hostap_recv_mgmt()
2213 ni->ni_chan = vap->iv_bss->ni_chan; in hostap_recv_mgmt()
2231 vap->iv_stats.is_ht_assoc_norate++; in hostap_recv_mgmt()
2258 (((vap->iv_flags & IEEE80211_F_WPA) && in hostap_recv_mgmt()
2260 (vap->iv_flags & (IEEE80211_F_WPA|IEEE80211_F_PRIVACY)) == IEEE80211_F_PRIVACY)) { in hostap_recv_mgmt()
2261 IEEE80211_NOTE(vap, in hostap_recv_mgmt()
2271 vap->iv_stats.is_ht_assoc_downgrade++; in hostap_recv_mgmt()
2276 if ((vap->iv_flags_ht & IEEE80211_FHT_PUREN) && in hostap_recv_mgmt()
2279 vap->iv_stats.is_ht_assoc_nohtcap++; in hostap_recv_mgmt()
2286 ni->ni_fhdwell = vap->iv_bss->ni_fhdwell; in hostap_recv_mgmt()
2287 ni->ni_fhindex = vap->iv_bss->ni_fhindex; in hostap_recv_mgmt()
2345 if (vap->iv_state != IEEE80211_S_RUN || in hostap_recv_mgmt()
2347 !IEEE80211_ADDR_EQ(wh->i_addr1, vap->iv_myaddr)) { in hostap_recv_mgmt()
2348 vap->iv_stats.is_rx_mgtdiscard++; in hostap_recv_mgmt()
2360 vap->iv_stats.is_rx_deauth++; in hostap_recv_mgmt()
2363 vap->iv_stats.is_rx_disassoc++; in hostap_recv_mgmt()
2366 IEEE80211_NOTE(vap, IEEE80211_MSG_AUTH, ni, in hostap_recv_mgmt()
2370 if (ni != vap->iv_bss) in hostap_recv_mgmt()
2377 if (ni == vap->iv_bss) { in hostap_recv_mgmt()
2378 IEEE80211_DISCARD(vap, IEEE80211_MSG_INPUT, in hostap_recv_mgmt()
2380 vap->iv_stats.is_rx_mgtdiscard++; in hostap_recv_mgmt()
2381 } else if (!IEEE80211_ADDR_EQ(vap->iv_myaddr, wh->i_addr1) && in hostap_recv_mgmt()
2383 IEEE80211_DISCARD(vap, IEEE80211_MSG_INPUT, in hostap_recv_mgmt()
2385 vap->iv_stats.is_rx_mgtdiscard++; in hostap_recv_mgmt()
2386 } else if (vap->iv_state != IEEE80211_S_RUN) { in hostap_recv_mgmt()
2387 IEEE80211_DISCARD(vap, IEEE80211_MSG_INPUT, in hostap_recv_mgmt()
2389 ieee80211_state_name[vap->iv_state]); in hostap_recv_mgmt()
2390 vap->iv_stats.is_rx_mgtdiscard++; in hostap_recv_mgmt()
2401 IEEE80211_DISCARD(vap, IEEE80211_MSG_INPUT, in hostap_recv_mgmt()
2403 vap->iv_stats.is_rx_mgtdiscard++; in hostap_recv_mgmt()
2407 IEEE80211_DISCARD(vap, IEEE80211_MSG_ANY, in hostap_recv_mgmt()
2409 vap->iv_stats.is_rx_badsubtype++; in hostap_recv_mgmt()
2433 struct ieee80211vap *vap = ni->ni_vap; in ieee80211_recv_pspoll() local
2434 struct ieee80211com *ic = vap->iv_ic; in ieee80211_recv_pspoll()
2442 IEEE80211_DISCARD(vap, in ieee80211_recv_pspoll()
2446 vap->iv_stats.is_ps_unassoc++; in ieee80211_recv_pspoll()
2454 IEEE80211_DISCARD(vap, in ieee80211_recv_pspoll()
2459 vap->iv_stats.is_ps_badaid++; in ieee80211_recv_pspoll()
2474 IEEE80211_NOTE_MAC(vap, IEEE80211_MSG_POWER, wh->i_addr2, in ieee80211_recv_pspoll()
2477 vap->iv_stats.is_ps_qempty++; /* XXX node stat */ in ieee80211_recv_pspoll()
2478 if (vap->iv_set_tim != NULL) in ieee80211_recv_pspoll()
2479 vap->iv_set_tim(ni, 0); /* just in case */ in ieee80211_recv_pspoll()
2488 IEEE80211_NOTE(vap, IEEE80211_MSG_POWER, ni, in ieee80211_recv_pspoll()
2492 IEEE80211_NOTE(vap, IEEE80211_MSG_POWER, ni, in ieee80211_recv_pspoll()
2494 if (vap->iv_set_tim != NULL) in ieee80211_recv_pspoll()
2495 vap->iv_set_tim(ni, 0); in ieee80211_recv_pspoll()
2507 (void) ieee80211_vap_xmitpkt(vap, m); in ieee80211_recv_pspoll()