Lines Matching full:ni

77 	struct ieee80211_node *ni;  in ieee80211_ioctl_getkey()  local
91 ni = ieee80211_find_vap_node(&ic->ic_sta, vap, ik.ik_macaddr); in ieee80211_ioctl_getkey()
92 if (ni == NULL) in ieee80211_ioctl_getkey()
94 wk = &ni->ni_ucastkey; in ieee80211_ioctl_getkey()
100 ni = NULL; in ieee80211_ioctl_getkey()
124 if (ni != NULL) in ieee80211_ioctl_getkey()
125 ieee80211_free_node(ni); in ieee80211_ioctl_getkey()
157 struct ieee80211_node *ni; in ieee80211_ioctl_getwpaie() local
170 ni = ieee80211_find_vap_node(&vap->iv_ic->ic_sta, vap, wpaie->wpa_macaddr); in ieee80211_ioctl_getwpaie()
171 if (ni == NULL) { in ieee80211_ioctl_getwpaie()
175 if (ni->ni_ies.wpa_ie != NULL) { in ieee80211_ioctl_getwpaie()
176 int ielen = ni->ni_ies.wpa_ie[1] + 2; in ieee80211_ioctl_getwpaie()
179 memcpy(wpaie->wpa_ie, ni->ni_ies.wpa_ie, ielen); in ieee80211_ioctl_getwpaie()
182 if (ni->ni_ies.rsn_ie != NULL) { in ieee80211_ioctl_getwpaie()
183 int ielen = ni->ni_ies.rsn_ie[1] + 2; in ieee80211_ioctl_getwpaie()
186 memcpy(wpaie->rsn_ie, ni->ni_ies.rsn_ie, ielen); in ieee80211_ioctl_getwpaie()
193 if (ni->ni_ies.rsn_ie != NULL) { in ieee80211_ioctl_getwpaie()
194 int ielen = ni->ni_ies.rsn_ie[1] + 2; in ieee80211_ioctl_getwpaie()
197 memcpy(wpaie->wpa_ie, ni->ni_ies.rsn_ie, ielen); in ieee80211_ioctl_getwpaie()
202 ieee80211_free_node(ni); in ieee80211_ioctl_getwpaie()
212 struct ieee80211_node *ni; in ieee80211_ioctl_getstastats() local
222 ni = ieee80211_find_vap_node(&vap->iv_ic->ic_sta, vap, macaddr); in ieee80211_ioctl_getstastats()
223 if (ni == NULL) in ieee80211_ioctl_getstastats()
228 error = copyout(&ni->ni_stats, (uint8_t *) ireq->i_data + off, in ieee80211_ioctl_getstastats()
230 ieee80211_free_node(ni); in ieee80211_ioctl_getstastats()
356 sta_space(const struct ieee80211_node *ni, size_t *ielen) in sta_space() argument
358 *ielen = ni->ni_ies.len; in sta_space()
364 get_sta_space(void *arg, struct ieee80211_node *ni) in get_sta_space() argument
369 if (ni->ni_vap->iv_opmode == IEEE80211_M_HOSTAP && in get_sta_space()
370 ni->ni_associd == 0) /* only associated stations */ in get_sta_space()
372 req->space += sta_space(ni, &ielen); in get_sta_space()
376 get_sta_info(void *arg, struct ieee80211_node *ni) in get_sta_info() argument
380 struct ieee80211vap *vap = ni->ni_vap; in get_sta_info()
386 ni->ni_associd == 0) /* only associated stations */ in get_sta_info()
388 if (ni->ni_chan == IEEE80211_CHAN_ANYC) /* XXX bogus entry */ in get_sta_info()
390 len = sta_space(ni, &ielen); in get_sta_info()
397 si->isi_freq = ni->ni_chan->ic_freq; in get_sta_info()
398 si->isi_flags = ni->ni_chan->ic_flags; in get_sta_info()
399 si->isi_state = ni->ni_flags; in get_sta_info()
400 si->isi_authmode = ni->ni_authmode; in get_sta_info()
401 vap->iv_ic->ic_node_getsignal(ni, &si->isi_rssi, &si->isi_noise); in get_sta_info()
402 vap->iv_ic->ic_node_getmimoinfo(ni, &si->isi_mimo); in get_sta_info()
403 si->isi_capinfo = ni->ni_capinfo; in get_sta_info()
404 si->isi_erp = ni->ni_erp; in get_sta_info()
405 IEEE80211_ADDR_COPY(si->isi_macaddr, ni->ni_macaddr); in get_sta_info()
406 si->isi_nrates = ni->ni_rates.rs_nrates; in get_sta_info()
409 memcpy(si->isi_rates, ni->ni_rates.rs_rates, si->isi_nrates); in get_sta_info()
416 ieee80211_node_get_txrate(ni, &tr); in get_sta_info()
419 si->isi_txrate = ieee80211_node_get_txrate_dot11rate(ni); in get_sta_info()
421 si->isi_txmbps = ieee80211_node_get_txrate_kbit(ni) / 500; in get_sta_info()
422 si->isi_associd = ni->ni_associd; in get_sta_info()
423 si->isi_txpower = ni->ni_txpower; in get_sta_info()
424 si->isi_vlan = ni->ni_vlan; in get_sta_info()
425 if (ni->ni_flags & IEEE80211_NODE_QOS) { in get_sta_info()
426 memcpy(si->isi_txseqs, ni->ni_txseqs, sizeof(ni->ni_txseqs)); in get_sta_info()
427 memcpy(si->isi_rxseqs, ni->ni_rxseqs, sizeof(ni->ni_rxseqs)); in get_sta_info()
429 si->isi_txseqs[0] = ni->ni_txseqs[IEEE80211_NONQOS_TID]; in get_sta_info()
430 si->isi_rxseqs[0] = ni->ni_rxseqs[IEEE80211_NONQOS_TID]; in get_sta_info()
433 if (ieee80211_node_is_authorized(ni)) in get_sta_info()
435 else if (ni->ni_associd != 0 || in get_sta_info()
441 si->isi_inact = (si->isi_inact - ni->ni_inact) * IEEE80211_INACT_WAIT; in get_sta_info()
442 si->isi_localid = ni->ni_mllid; in get_sta_info()
443 si->isi_peerid = ni->ni_mlpid; in get_sta_info()
444 si->isi_peerstate = ni->ni_mlstate; in get_sta_info()
448 memcpy(cp, ni->ni_ies.data, ielen); in get_sta_info()
457 struct ieee80211_node *ni, size_t off) in getstainfo_common() argument
467 if (ni == NULL) { in getstainfo_common()
471 get_sta_space(&req, ni); in getstainfo_common()
484 if (ni == NULL) { in getstainfo_common()
488 get_sta_info(&req, ni); in getstainfo_common()
495 if (ni != NULL) in getstainfo_common()
496 ieee80211_free_node(ni); in getstainfo_common()
505 struct ieee80211_node *ni; in ieee80211_ioctl_getstainfo() local
514 ni = NULL; in ieee80211_ioctl_getstainfo()
516 ni = ieee80211_find_vap_node(&vap->iv_ic->ic_sta, vap, macaddr); in ieee80211_ioctl_getstainfo()
517 if (ni == NULL) in ieee80211_ioctl_getstainfo()
520 return getstainfo_common(vap, ireq, ni, off); in ieee80211_ioctl_getstainfo()
526 struct ieee80211_node *ni; in ieee80211_ioctl_getstatxpow() local
535 ni = ieee80211_find_vap_node(&vap->iv_ic->ic_sta, vap, txpow.it_macaddr); in ieee80211_ioctl_getstatxpow()
536 if (ni == NULL) in ieee80211_ioctl_getstatxpow()
538 txpow.it_txpow = ni->ni_txpower; in ieee80211_ioctl_getstatxpow()
540 ieee80211_free_node(ni); in ieee80211_ioctl_getstatxpow()
728 struct ieee80211_node *ni; in ieee80211_ioctl_getstavlan() local
738 ni = ieee80211_find_vap_node(&vap->iv_ic->ic_sta, vap, in ieee80211_ioctl_getstavlan()
740 if (ni == NULL) in ieee80211_ioctl_getstavlan()
743 ni = ieee80211_ref_node(vap->iv_bss); in ieee80211_ioctl_getstavlan()
744 vlan.sv_vlan = ni->ni_vlan; in ieee80211_ioctl_getstavlan()
746 ieee80211_free_node(ni); in ieee80211_ioctl_getstavlan()
1172 struct ieee80211_node *ni; in ieee80211_ioctl_setkey() local
1192 ni = ieee80211_ref_node(vap->iv_bss); in ieee80211_ioctl_setkey()
1193 if (!IEEE80211_ADDR_EQ(ik.ik_macaddr, ni->ni_bssid)) { in ieee80211_ioctl_setkey()
1194 ieee80211_free_node(ni); in ieee80211_ioctl_setkey()
1198 ni = ieee80211_find_vap_node(&vap->iv_ic->ic_sta, vap, in ieee80211_ioctl_setkey()
1200 if (ni == NULL) in ieee80211_ioctl_setkey()
1203 wk = &ni->ni_ucastkey; in ieee80211_ioctl_setkey()
1214 ni = NULL; in ieee80211_ioctl_setkey()
1229 ni != NULL ? ni->ni_macaddr : ik.ik_macaddr); in ieee80211_ioctl_setkey()
1245 if (ni != NULL) in ieee80211_ioctl_setkey()
1246 ieee80211_free_node(ni); in ieee80211_ioctl_setkey()
1264 struct ieee80211_node *ni; in ieee80211_ioctl_delkey() local
1267 ni = ieee80211_ref_node(vap->iv_bss); in ieee80211_ioctl_delkey()
1268 if (!IEEE80211_ADDR_EQ(dk.idk_macaddr, ni->ni_bssid)) { in ieee80211_ioctl_delkey()
1269 ieee80211_free_node(ni); in ieee80211_ioctl_delkey()
1273 ni = ieee80211_find_vap_node(&vap->iv_ic->ic_sta, vap, in ieee80211_ioctl_delkey()
1275 if (ni == NULL) in ieee80211_ioctl_delkey()
1279 ieee80211_node_delucastkey(ni); in ieee80211_ioctl_delkey()
1280 ieee80211_free_node(ni); in ieee80211_ioctl_delkey()
1340 domlme(void *arg, struct ieee80211_node *ni) in domlme() argument
1343 struct ieee80211vap *vap = ni->ni_vap; in domlme()
1352 if (ni->ni_associd == 0) in domlme()
1354 mlmedebug(vap, ni->ni_macaddr, mop->op, mop->reason); in domlme()
1356 IEEE80211_SEND_MGMT(ni, IEEE80211_FC0_SUBTYPE_DEAUTH, in domlme()
1359 IEEE80211_SEND_MGMT(ni, IEEE80211_FC0_SUBTYPE_DISASSOC, in domlme()
1362 ieee80211_node_leave(ni); in domlme()
1370 struct ieee80211_node *ni; in setmlme_dropsta() local
1376 ni = ieee80211_find_node_locked(nt, mac); in setmlme_dropsta()
1383 if (ni != NULL) { in setmlme_dropsta()
1384 domlme(mlmeop, ni); in setmlme_dropsta()
1385 ieee80211_free_node(ni); in setmlme_dropsta()
1400 struct ieee80211_node *ni; in setmlme_common() local
1434 ni = ieee80211_ref_node(vap->iv_bss); in setmlme_common()
1435 IEEE80211_SEND_MGMT(ni, in setmlme_common()
1437 ieee80211_free_node(ni); in setmlme_common()
1441 ni = ieee80211_find_node_locked(nt, mac); in setmlme_common()
1448 if (ni != NULL) { in setmlme_common()
1449 ieee80211_node_leave(ni); in setmlme_common()
1450 ieee80211_free_node(ni); in setmlme_common()
1468 ni = ieee80211_find_vap_node_locked(nt, vap, mac); in setmlme_common()
1475 if (ni != NULL) { in setmlme_common()
1478 ieee80211_node_authorize(ni); in setmlme_common()
1480 ieee80211_node_unauthorize(ni); in setmlme_common()
1481 ieee80211_free_node(ni); in setmlme_common()
1491 ni = ieee80211_find_vap_node_locked(nt, vap, mac); in setmlme_common()
1498 if (ni != NULL) { in setmlme_common()
1501 IEEE80211_SEND_MGMT(ni, in setmlme_common()
1509 if (ni->ni_authmode != IEEE80211_AUTH_8021X && in setmlme_common()
1510 ni->ni_challenge == NULL) in setmlme_common()
1511 ieee80211_node_authorize(ni); in setmlme_common()
1514 ieee80211_send_error(ni, ni->ni_macaddr, in setmlme_common()
1516 ieee80211_node_leave(ni); in setmlme_common()
1518 ieee80211_free_node(ni); in setmlme_common()
1756 struct ieee80211_node *ni; in ieee80211_ioctl_setstastats() local
1770 ni = ieee80211_find_vap_node(&vap->iv_ic->ic_sta, vap, macaddr); in ieee80211_ioctl_setstastats()
1771 if (ni == NULL) in ieee80211_ioctl_setstastats()
1774 memset(&ni->ni_stats, 0, sizeof(ni->ni_stats)); in ieee80211_ioctl_setstastats()
1775 ieee80211_free_node(ni); in ieee80211_ioctl_setstastats()
1782 struct ieee80211_node *ni; in ieee80211_ioctl_setstatxpow() local
1791 ni = ieee80211_find_vap_node(&vap->iv_ic->ic_sta, vap, txpow.it_macaddr); in ieee80211_ioctl_setstatxpow()
1792 if (ni == NULL) in ieee80211_ioctl_setstatxpow()
1794 ni->ni_txpower = txpow.it_txpow; in ieee80211_ioctl_setstatxpow()
1795 ieee80211_free_node(ni); in ieee80211_ioctl_setstatxpow()
2676 struct ieee80211_node *ni; in ieee80211_ioctl_setstavlan() local
2686 ni = ieee80211_find_vap_node(&vap->iv_ic->ic_sta, vap, in ieee80211_ioctl_setstavlan()
2688 if (ni == NULL) in ieee80211_ioctl_setstavlan()
2691 ni = ieee80211_ref_node(vap->iv_bss); in ieee80211_ioctl_setstavlan()
2692 ni->ni_vlan = vlan.sv_vlan; in ieee80211_ioctl_setstavlan()
2693 ieee80211_free_node(ni); in ieee80211_ioctl_setstavlan()