Lines Matching defs:ic

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