Lines Matching refs:ic

55 ieee80211_send_setup(ieee80211com_t *ic, ieee80211_node_t *in,  in ieee80211_send_setup()  argument
61 switch (ic->ic_opmode) { in ieee80211_send_setup()
77 "Invalid mode %u\n", ic->ic_opmode); in ieee80211_send_setup()
104 ieee80211_mgmt_output(ieee80211com_t *ic, ieee80211_node_t *in, mblk_t *mp, in ieee80211_mgmt_output() argument
107 ieee80211_impl_t *im = ic->ic_private; in ieee80211_mgmt_output()
113 ieee80211_send_setup(ic, in, wh, IEEE80211_FC0_TYPE_MGT | type, in ieee80211_mgmt_output()
114 ic->ic_macaddr, in->in_macaddr, in->in_bssid); in ieee80211_mgmt_output()
123 ieee80211_start_watchdog(ic, 1); in ieee80211_mgmt_output()
125 return ((*ic->ic_xmit)(ic, mp, IEEE80211_FC0_TYPE_MGT)); in ieee80211_mgmt_output()
138 ieee80211com_t *ic = in->in_ic; in ieee80211_send_nulldata() local
145 ic->ic_stats.is_tx_nobuf++; in ieee80211_send_nulldata()
150 ieee80211_send_setup(ic, in, wh, in ieee80211_send_nulldata()
152 ic->ic_macaddr, in->in_macaddr, in->in_bssid); in ieee80211_send_nulldata()
155 ic->ic_opmode != IEEE80211_M_HOSTAP) in ieee80211_send_nulldata()
162 ieee80211_chan2ieee(ic, ic->ic_curchan), in ieee80211_send_nulldata()
165 (void) (*ic->ic_xmit)(ic, m, IEEE80211_FC0_TYPE_MGT); in ieee80211_send_nulldata()
176 ieee80211_encap(ieee80211com_t *ic, mblk_t *mp, ieee80211_node_t *in) in ieee80211_encap() argument
197 ac = ieee80211_classify(ic, mp, in); in ieee80211_encap()
214 (ic->ic_flags_ext & IEEE80211_FEXT_AMPDU_TX)) { in ieee80211_encap()
230 if (ic->ic_wme.wme_wmeChanParams.cap_wmeParams[ac]. in ieee80211_encap()
245 if (ic->ic_flags & IEEE80211_F_PRIVACY) in ieee80211_encap()
246 key = ieee80211_crypto_getkey(ic); in ieee80211_encap()
254 if (key != NULL && (ic->ic_flags & IEEE80211_F_WPA)) { in ieee80211_encap()
379 ieee80211_add_erp(uint8_t *frm, ieee80211com_t *ic) in ieee80211_add_erp() argument
386 if (ic->ic_flags & IEEE80211_F_USEPROT) in ieee80211_add_erp()
388 if (ic->ic_flags & IEEE80211_F_USEBARKER) in ieee80211_add_erp()
398 ieee80211_get_capinfo(ieee80211com_t *ic) in ieee80211_get_capinfo() argument
402 if (ic->ic_opmode == IEEE80211_M_IBSS) in ieee80211_get_capinfo()
406 if (ic->ic_flags & IEEE80211_F_PRIVACY) in ieee80211_get_capinfo()
408 if ((ic->ic_flags & IEEE80211_F_SHPREAMBLE) && in ieee80211_get_capinfo()
409 IEEE80211_IS_CHAN_2GHZ(ic->ic_curchan)) { in ieee80211_get_capinfo()
412 if (ic->ic_flags & IEEE80211_F_SHSLOT) in ieee80211_get_capinfo()
428 ieee80211com_t *ic = in->in_ic; in ieee80211_send_probereq() local
449 mode = ieee80211_chan2mode(ic, ic->ic_curchan); in ieee80211_send_probereq()
450 frm = ieee80211_add_rates(frm, &ic->ic_sup_rates[mode]); in ieee80211_send_probereq()
451 frm = ieee80211_add_xrates(frm, &ic->ic_sup_rates[mode]); in ieee80211_send_probereq()
459 ieee80211_send_setup(ic, in, wh, in ieee80211_send_probereq()
466 ieee80211_chan2ieee(ic, ic->ic_curchan)); in ieee80211_send_probereq()
468 (void) (*ic->ic_xmit)(ic, mp, IEEE80211_FC0_TYPE_MGT); in ieee80211_send_probereq()
478 ieee80211_send_mgmt(ieee80211com_t *ic, ieee80211_node_t *in, int type, int arg) in ieee80211_send_mgmt() argument
523 + (ic->ic_flags & IEEE80211_F_WPA ? in ieee80211_send_mgmt()
526 + (ic->ic_flags & IEEE80211_F_WME ? in ieee80211_send_mgmt()
538 *(uint16_t *)frm = LE_16(ic->ic_bss->in_intval); in ieee80211_send_mgmt()
540 capinfo = ieee80211_get_capinfo(ic); in ieee80211_send_mgmt()
545 frm = ieee80211_add_ssid(frm, ic->ic_bss->in_essid, in ieee80211_send_mgmt()
546 ic->ic_bss->in_esslen); in ieee80211_send_mgmt()
550 if (IEEE80211_IS_CHAN_FHSS(ic->ic_curchan)) { in ieee80211_send_mgmt()
556 ieee80211_chan2ieee(ic, ic->ic_curchan)); in ieee80211_send_mgmt()
558 ieee80211_chan2ieee(ic, ic->ic_curchan)); in ieee80211_send_mgmt()
563 *frm++ = ieee80211_chan2ieee(ic, ic->ic_curchan); in ieee80211_send_mgmt()
566 if (ic->ic_opmode == IEEE80211_M_IBSS) { in ieee80211_send_mgmt()
571 if (IEEE80211_IS_CHAN_ANYG(ic->ic_curchan)) in ieee80211_send_mgmt()
572 frm = ieee80211_add_erp(frm, ic); in ieee80211_send_mgmt()
580 if (IEEE80211_IS_CHAN_HT(ic->ic_curchan) && in ieee80211_send_mgmt()
585 if (ic->ic_flags & IEEE80211_F_WME) in ieee80211_send_mgmt()
586 frm = ieee80211_add_wme_param(frm, &ic->ic_wme); in ieee80211_send_mgmt()
587 if (IEEE80211_IS_CHAN_HT(ic->ic_curchan) && in ieee80211_send_mgmt()
588 (ic->ic_flags_ext & IEEE80211_FEXT_HTCOMPAT) && in ieee80211_send_mgmt()
614 ic->ic_bss->in_authmode == IEEE80211_AUTH_SHARED); in ieee80211_send_mgmt()
617 key = ieee80211_crypto_getkey(ic); in ieee80211_send_mgmt()
647 if (ic->ic_opmode == IEEE80211_M_STA) in ieee80211_send_mgmt()
684 + ic->ic_opt_ie_len); in ieee80211_send_mgmt()
688 capinfo = ieee80211_get_capinfo(ic); in ieee80211_send_mgmt()
690 !(ic->ic_caps & IEEE80211_C_SHSLOT)) { in ieee80211_send_mgmt()
696 !(ic->ic_caps & IEEE80211_C_SHPREAMBLE)) { in ieee80211_send_mgmt()
704 *(uint16_t *)frm = LE_16(ic->ic_lintval); in ieee80211_send_mgmt()
708 IEEE80211_ADDR_COPY(frm, ic->ic_bss->in_bssid); in ieee80211_send_mgmt()
715 if ((ic->ic_flags_ext & IEEE80211_FEXT_HT) && in ieee80211_send_mgmt()
719 if ((ic->ic_flags & IEEE80211_F_WME) && in->in_wme_ie != NULL) in ieee80211_send_mgmt()
720 frm = ieee80211_add_wme_info(frm, &ic->ic_wme); in ieee80211_send_mgmt()
721 if ((ic->ic_flags_ext & IEEE80211_FEXT_HT) && in ieee80211_send_mgmt()
725 if (ic->ic_opt_ie != NULL) { in ieee80211_send_mgmt()
726 bcopy(ic->ic_opt_ie, frm, ic->ic_opt_ie_len); in ieee80211_send_mgmt()
727 frm += ic->ic_opt_ie_len; in ieee80211_send_mgmt()
754 capinfo = ieee80211_get_capinfo(ic); in ieee80211_send_mgmt()
785 ret = ieee80211_mgmt_output(ic, in, mp, type, timer); in ieee80211_send_mgmt()
793 ieee80211_beacon_alloc(ieee80211com_t *ic, ieee80211_node_t *in, in ieee80211_beacon_alloc() argument
803 IEEE80211_LOCK(ic); in ieee80211_beacon_alloc()
831 + 2 + 4 + ic->ic_tim_len /* DTIM/IBSSPARMS */ in ieee80211_beacon_alloc()
834 + (ic->ic_caps & IEEE80211_C_WME ? /* WME */ in ieee80211_beacon_alloc()
844 IEEE80211_UNLOCK(ic); in ieee80211_beacon_alloc()
853 capinfo = ieee80211_get_capinfo(ic); in ieee80211_beacon_alloc()
858 if (!(ic->ic_flags & IEEE80211_F_HIDESSID)) { in ieee80211_beacon_alloc()
866 if (ic->ic_curmode != IEEE80211_MODE_FH) { in ieee80211_beacon_alloc()
869 *frm++ = ieee80211_chan2ieee(ic, in->in_chan); in ieee80211_beacon_alloc()
872 if (ic->ic_opmode == IEEE80211_M_IBSS) { in ieee80211_beacon_alloc()
892 if (ic->ic_curmode == IEEE80211_MODE_11G) { in ieee80211_beacon_alloc()
894 frm = ieee80211_add_erp(frm, ic); in ieee80211_beacon_alloc()
897 if (IEEE80211_IS_CHAN_HT(ic->ic_curchan)) { in ieee80211_beacon_alloc()
902 if (ic->ic_flags & IEEE80211_F_WME) { in ieee80211_beacon_alloc()
904 frm = ieee80211_add_wme_param(frm, &ic->ic_wme); in ieee80211_beacon_alloc()
906 if (IEEE80211_IS_CHAN_HT(ic->ic_curchan) && in ieee80211_beacon_alloc()
907 (ic->ic_flags_ext & IEEE80211_FEXT_HTCOMPAT)) { in ieee80211_beacon_alloc()
920 IEEE80211_ADDR_COPY(wh->i_addr2, ic->ic_macaddr); in ieee80211_beacon_alloc()
924 IEEE80211_UNLOCK(ic); in ieee80211_beacon_alloc()
933 ieee80211_beacon_update(ieee80211com_t *ic, ieee80211_node_t *in, in ieee80211_beacon_update() argument
938 IEEE80211_LOCK(ic); in ieee80211_beacon_update()
940 capinfo = ieee80211_get_capinfo(ic); in ieee80211_beacon_update()
943 IEEE80211_UNLOCK(ic); in ieee80211_beacon_update()
955 ieee80211_classify(struct ieee80211com *ic, mblk_t *m, in ieee80211_classify() argument
971 if (ic->ic_opmode == IEEE80211_M_STA) { in ieee80211_classify()
979 ic->ic_wme.wme_wmeBssChanParams.cap_wmeParams[ac]. in ieee80211_classify()