Lines Matching refs:sta
50 struct sta_info *sta) in hostapd_notify_assoc_fils_finish() argument
59 __func__, MAC2STR(sta->addr)); in hostapd_notify_assoc_fils_finish()
60 eloop_cancel_timeout(fils_hlp_timeout, hapd, sta); in hostapd_notify_assoc_fils_finish()
61 if (!sta->fils_pending_assoc_req) in hostapd_notify_assoc_fils_finish()
64 if (ieee802_11_parse_elems(sta->fils_pending_assoc_req, in hostapd_notify_assoc_fils_finish()
65 sta->fils_pending_assoc_req_len, &elems, in hostapd_notify_assoc_fils_finish()
73 p = hostapd_eid_assoc_fils_session(sta->wpa_sm, p, in hostapd_notify_assoc_fils_finish()
75 sta->fils_hlp_resp); in hostapd_notify_assoc_fils_finish()
77 reply_res = hostapd_sta_assoc(hapd, sta->addr, in hostapd_notify_assoc_fils_finish()
78 sta->fils_pending_assoc_is_reassoc, in hostapd_notify_assoc_fils_finish()
81 updated = ap_sta_set_authorized_flag(hapd, sta, 1); in hostapd_notify_assoc_fils_finish()
82 new_assoc = (sta->flags & WLAN_STA_ASSOC) == 0; in hostapd_notify_assoc_fils_finish()
83 sta->flags |= WLAN_STA_AUTH | WLAN_STA_ASSOC; in hostapd_notify_assoc_fils_finish()
84 sta->flags &= ~WLAN_STA_WNM_SLEEP_MODE; in hostapd_notify_assoc_fils_finish()
85 hostapd_set_sta_flags(hapd, sta); in hostapd_notify_assoc_fils_finish()
87 ap_sta_set_authorized_event(hapd, sta, 1); in hostapd_notify_assoc_fils_finish()
88 wpa_auth_sm_event(sta->wpa_sm, WPA_ASSOC_FILS); in hostapd_notify_assoc_fils_finish()
89 ieee802_1x_notify_port_enabled(sta->eapol_sm, 1); in hostapd_notify_assoc_fils_finish()
90 hostapd_new_assoc_sta(hapd, sta, !new_assoc); in hostapd_notify_assoc_fils_finish()
91 os_free(sta->fils_pending_assoc_req); in hostapd_notify_assoc_fils_finish()
92 sta->fils_pending_assoc_req = NULL; in hostapd_notify_assoc_fils_finish()
93 sta->fils_pending_assoc_req_len = 0; in hostapd_notify_assoc_fils_finish()
94 wpabuf_free(sta->fils_hlp_resp); in hostapd_notify_assoc_fils_finish()
95 sta->fils_hlp_resp = NULL; in hostapd_notify_assoc_fils_finish()
96 wpabuf_free(sta->hlp_dhcp_discover); in hostapd_notify_assoc_fils_finish()
97 sta->hlp_dhcp_discover = NULL; in hostapd_notify_assoc_fils_finish()
105 if (reply_res != WLAN_STATUS_SUCCESS || sta->added_unassoc) { in hostapd_notify_assoc_fils_finish()
106 hostapd_drv_sta_remove(hapd, sta->addr); in hostapd_notify_assoc_fils_finish()
107 sta->added_unassoc = 0; in hostapd_notify_assoc_fils_finish()
113 static bool check_sa_query_need(struct hostapd_data *hapd, struct sta_info *sta) in check_sa_query_need() argument
115 if ((sta->flags & in check_sa_query_need()
120 if (!sta->sa_query_timed_out && sta->sa_query_count > 0) in check_sa_query_need()
121 ap_check_sa_query_timeout(hapd, sta); in check_sa_query_need()
123 if (!sta->sa_query_timed_out && (sta->auth_alg != WLAN_AUTH_FT)) { in check_sa_query_need()
129 if (sta->sa_query_count == 0) in check_sa_query_need()
130 ap_sta_start_sa_query(hapd, sta); in check_sa_query_need()
141 struct sta_info *sta, in hostapd_update_sta_links_status() argument
145 struct mld_info *info = &sta->mld_info; in hostapd_update_sta_links_status()
256 struct sta_info *sta; in hostapd_notif_assoc() local
333 sta = ap_get_sta(hapd, addr); in hostapd_notif_assoc()
334 if (sta) { in hostapd_notif_assoc()
335 ap_sta_no_session_timeout(hapd, sta); in hostapd_notif_assoc()
336 accounting_sta_stop(hapd, sta); in hostapd_notif_assoc()
342 sta->timeout_next = STA_NULLFUNC; in hostapd_notif_assoc()
344 sta = ap_sta_add(hapd, addr); in hostapd_notif_assoc()
345 if (sta == NULL) { in hostapd_notif_assoc()
352 if (hapd->conf->wpa && check_sa_query_need(hapd, sta)) { in hostapd_notif_assoc()
354 p = hostapd_eid_assoc_comeback_time(hapd, sta, p); in hostapd_notif_assoc()
362 struct mld_info *info = &sta->mld_info; in hostapd_notif_assoc()
366 ap_sta_set_mld(sta, true); in hostapd_notif_assoc()
367 sta->mld_assoc_link_id = link_id; in hostapd_notif_assoc()
375 hostapd_process_ml_assoc_req(hapd, &elems, sta) != in hostapd_notif_assoc()
388 hostapd_update_sta_links_status(hapd, sta, resp_ies, in hostapd_notif_assoc()
398 sta->flags &= ~(WLAN_STA_WPS | WLAN_STA_MAYBE_WPS | WLAN_STA_WPS2); in hostapd_notif_assoc()
417 wpabuf_free(sta->p2p_ie); in hostapd_notif_assoc()
418 sta->p2p_ie = ieee802_11_vendor_ie_concat(req_ies, req_ies_len, in hostapd_notif_assoc()
420 if (sta->p2p_ie) in hostapd_notif_assoc()
421 p2p_dev_addr = p2p_get_go_dev_addr(sta->p2p_ie); in hostapd_notif_assoc()
435 ht40_intolerant_add(hapd->iface, sta); in hostapd_notif_assoc()
439 check_ext_capab(hapd, sta, elems.ext_capab, elems.ext_capab_len); in hostapd_notif_assoc()
442 wpabuf_free(sta->hs20_ie); in hostapd_notif_assoc()
444 sta->hs20_ie = wpabuf_alloc_copy(elems.hs20 + 4, in hostapd_notif_assoc()
447 sta->hs20_ie = NULL; in hostapd_notif_assoc()
449 wpabuf_free(sta->roaming_consortium); in hostapd_notif_assoc()
451 sta->roaming_consortium = wpabuf_alloc_copy( in hostapd_notif_assoc()
455 sta->roaming_consortium = NULL; in hostapd_notif_assoc()
459 wpabuf_free(sta->mb_ies); in hostapd_notif_assoc()
461 sta->mb_ies = mb_ies_by_info(&elems.mb_ies); in hostapd_notif_assoc()
463 sta->mb_ies = NULL; in hostapd_notif_assoc()
466 mbo_ap_check_sta_assoc(hapd, sta, &elems); in hostapd_notif_assoc()
468 ap_copy_sta_supp_op_classes(sta, elems.supp_op_classes, in hostapd_notif_assoc()
477 sta->flags |= WLAN_STA_MAYBE_WPS; in hostapd_notif_assoc()
492 sta->flags |= WLAN_STA_WPS; in hostapd_notif_assoc()
499 sta->flags |= WLAN_STA_WPS2; in hostapd_notif_assoc()
507 if (sta->wpa_sm == NULL) in hostapd_notif_assoc()
508 sta->wpa_sm = wpa_auth_sta_init(hapd->wpa_auth, in hostapd_notif_assoc()
509 sta->addr, in hostapd_notif_assoc()
511 if (sta->wpa_sm == NULL) { in hostapd_notif_assoc()
517 if (ap_sta_is_mld(hapd, sta)) { in hostapd_notif_assoc()
520 wpa_auth_set_ml_info(sta->wpa_sm, in hostapd_notif_assoc()
521 sta->mld_assoc_link_id, in hostapd_notif_assoc()
522 &sta->mld_info); in hostapd_notif_assoc()
525 res = wpa_validate_wpa_ie(hapd->wpa_auth, sta->wpa_sm, in hostapd_notif_assoc()
596 if (wpa_auth_uses_mfp(sta->wpa_sm)) in hostapd_notif_assoc()
597 sta->flags |= WLAN_STA_MFP; in hostapd_notif_assoc()
599 sta->flags &= ~WLAN_STA_MFP; in hostapd_notif_assoc()
602 if (sta->auth_alg == WLAN_AUTH_FT) { in hostapd_notif_assoc()
603 status = wpa_ft_validate_reassoc(sta->wpa_sm, req_ies, in hostapd_notif_assoc()
618 sta->auth_alg == WLAN_AUTH_SAE && in hostapd_notif_assoc()
619 sta->sae && !sta->sae->h2e && in hostapd_notif_assoc()
624 MAC2STR(sta->addr)); in hostapd_notif_assoc()
648 sta->flags |= WLAN_STA_WPS; in hostapd_notif_assoc()
652 sta->flags |= WLAN_STA_WPS2; in hostapd_notif_assoc()
655 sta->flags |= WLAN_STA_MAYBE_WPS; in hostapd_notif_assoc()
662 hapd, sta->addr, HOSTAPD_MODULE_IEEE80211, in hostapd_notif_assoc()
669 if (sta->wpa_sm == NULL) in hostapd_notif_assoc()
670 sta->wpa_sm = wpa_auth_sta_init(hapd->wpa_auth, in hostapd_notif_assoc()
671 sta->addr, NULL); in hostapd_notif_assoc()
672 if (sta->wpa_sm == NULL) { in hostapd_notif_assoc()
677 if (wpa_validate_osen(hapd->wpa_auth, sta->wpa_sm, in hostapd_notif_assoc()
688 elems.mbo && sta->cell_capa && !(sta->flags & WLAN_STA_MFP) && in hostapd_notif_assoc()
697 p = wpa_sm_write_assoc_resp_ies(sta->wpa_sm, buf, sizeof(buf), in hostapd_notif_assoc()
698 sta->auth_alg, req_ies, req_ies_len, in hostapd_notif_assoc()
707 if (sta->auth_alg == WLAN_AUTH_FILS_SK || in hostapd_notif_assoc()
708 sta->auth_alg == WLAN_AUTH_FILS_SK_PFS || in hostapd_notif_assoc()
709 sta->auth_alg == WLAN_AUTH_FILS_PK) { in hostapd_notif_assoc()
715 if (!wpa_fils_validate_fils_session(sta->wpa_sm, req_ies, in hostapd_notif_assoc()
717 sta->fils_session)) { in hostapd_notif_assoc()
723 res = wpa_fils_validate_key_confirm(sta->wpa_sm, req_ies, in hostapd_notif_assoc()
731 if (fils_process_hlp(hapd, sta, req_ies, req_ies_len) > 0) { in hostapd_notif_assoc()
740 if (sta) { in hostapd_notif_assoc()
742 eloop_cancel_timeout(fils_hlp_timeout, hapd, sta); in hostapd_notif_assoc()
743 os_free(sta->fils_pending_assoc_req); in hostapd_notif_assoc()
744 sta->fils_pending_assoc_req = NULL; in hostapd_notif_assoc()
745 sta->fils_pending_assoc_req_len = 0; in hostapd_notif_assoc()
746 wpabuf_free(sta->fils_hlp_resp); in hostapd_notif_assoc()
747 sta->fils_hlp_resp = NULL; in hostapd_notif_assoc()
748 sta->fils_drv_assoc_finish = 0; in hostapd_notif_assoc()
751 if (sta && delay_assoc && status == WLAN_STATUS_SUCCESS) { in hostapd_notif_assoc()
761 sta->fils_pending_assoc_req = req_tmp; in hostapd_notif_assoc()
762 sta->fils_pending_assoc_req_len = req_ies_len; in hostapd_notif_assoc()
763 sta->fils_pending_assoc_is_reassoc = reassoc; in hostapd_notif_assoc()
764 sta->fils_drv_assoc_finish = 1; in hostapd_notif_assoc()
767 MACSTR, MAC2STR(sta->addr)); in hostapd_notif_assoc()
770 fils_hlp_timeout, hapd, sta); in hostapd_notif_assoc()
773 p = hostapd_eid_assoc_fils_session(sta->wpa_sm, p, in hostapd_notif_assoc()
775 sta->fils_hlp_resp); in hostapd_notif_assoc()
784 wpa_auth_sta_key_mgmt(sta->wpa_sm) == WPA_KEY_MGMT_OWE && in hostapd_notif_assoc()
789 npos = owe_assoc_req_process(hapd, sta, in hostapd_notif_assoc()
810 dpp_pfs_free(sta->dpp_pfs); in hostapd_notif_assoc()
811 sta->dpp_pfs = NULL; in hostapd_notif_assoc()
814 hapd->conf->dpp_netaccesskey && sta->wpa_sm && in hostapd_notif_assoc()
815 wpa_auth_sta_key_mgmt(sta->wpa_sm) == WPA_KEY_MGMT_DPP && in hostapd_notif_assoc()
817 sta->dpp_pfs = dpp_pfs_init( in hostapd_notif_assoc()
820 if (!sta->dpp_pfs) { in hostapd_notif_assoc()
827 if (dpp_pfs_process(sta->dpp_pfs, elems.owe_dh, in hostapd_notif_assoc()
829 dpp_pfs_free(sta->dpp_pfs); in hostapd_notif_assoc()
830 sta->dpp_pfs = NULL; in hostapd_notif_assoc()
836 wpa_auth_set_dpp_z(sta->wpa_sm, sta->dpp_pfs ? in hostapd_notif_assoc()
837 sta->dpp_pfs->secret : NULL); in hostapd_notif_assoc()
842 elems.rrm_enabled_len >= sizeof(sta->rrm_enabled_capa)) in hostapd_notif_assoc()
843 os_memcpy(sta->rrm_enabled_capa, elems.rrm_enabled, in hostapd_notif_assoc()
844 sizeof(sta->rrm_enabled_capa)); in hostapd_notif_assoc()
849 if (sta->auth_alg == WLAN_AUTH_FT || in hostapd_notif_assoc()
850 sta->auth_alg == WLAN_AUTH_FILS_SK || in hostapd_notif_assoc()
851 sta->auth_alg == WLAN_AUTH_FILS_SK_PFS || in hostapd_notif_assoc()
852 sta->auth_alg == WLAN_AUTH_FILS_PK) in hostapd_notif_assoc()
853 updated = ap_sta_set_authorized_flag(hapd, sta, 1); in hostapd_notif_assoc()
861 if (hostapd_process_assoc_ml_info(hapd, sta, req_ies, req_ies_len, in hostapd_notif_assoc()
870 new_assoc = (sta->flags & WLAN_STA_ASSOC) == 0; in hostapd_notif_assoc()
871 sta->flags |= WLAN_STA_AUTH | WLAN_STA_ASSOC; in hostapd_notif_assoc()
872 sta->flags &= ~WLAN_STA_WNM_SLEEP_MODE; in hostapd_notif_assoc()
874 hostapd_set_sta_flags(hapd, sta); in hostapd_notif_assoc()
876 ap_sta_set_authorized_event(hapd, sta, 1); in hostapd_notif_assoc()
878 if (reassoc && (sta->auth_alg == WLAN_AUTH_FT)) in hostapd_notif_assoc()
879 wpa_auth_sm_event(sta->wpa_sm, WPA_ASSOC_FT); in hostapd_notif_assoc()
881 else if (sta->auth_alg == WLAN_AUTH_FILS_SK || in hostapd_notif_assoc()
882 sta->auth_alg == WLAN_AUTH_FILS_SK_PFS || in hostapd_notif_assoc()
883 sta->auth_alg == WLAN_AUTH_FILS_PK) in hostapd_notif_assoc()
884 wpa_auth_sm_event(sta->wpa_sm, WPA_ASSOC_FILS); in hostapd_notif_assoc()
887 wpa_auth_sm_event(sta->wpa_sm, WPA_ASSOC); in hostapd_notif_assoc()
889 hostapd_new_assoc_sta(hapd, sta, !new_assoc); in hostapd_notif_assoc()
891 ieee802_1x_notify_port_enabled(sta->eapol_sm, 1); in hostapd_notif_assoc()
895 p2p_group_notif_assoc(hapd->p2p_group, sta->addr, in hostapd_notif_assoc()
907 hostapd_drv_sta_disassoc(hapd, sta->addr, reason); in hostapd_notif_assoc()
908 ap_free_sta(hapd, sta); in hostapd_notif_assoc()
913 static void hostapd_remove_sta(struct hostapd_data *hapd, struct sta_info *sta) in hostapd_remove_sta() argument
915 ap_sta_set_authorized(hapd, sta, 0); in hostapd_remove_sta()
916 sta->flags &= ~(WLAN_STA_AUTH | WLAN_STA_ASSOC); in hostapd_remove_sta()
917 hostapd_set_sta_flags(hapd, sta); in hostapd_remove_sta()
918 wpa_auth_sm_event(sta->wpa_sm, WPA_DISASSOC); in hostapd_remove_sta()
919 sta->acct_terminate_cause = RADIUS_ACCT_TERMINATE_CAUSE_USER_REQUEST; in hostapd_remove_sta()
920 ieee802_1x_notify_port_enabled(sta->eapol_sm, 0); in hostapd_remove_sta()
921 ap_free_sta(hapd, sta); in hostapd_remove_sta()
927 struct sta_info *sta, in hostapd_notif_disassoc_mld() argument
936 if (!sta->mld_info.links[link_id].valid) in hostapd_notif_disassoc_mld()
956 hostapd_remove_sta(assoc_hapd, sta); in hostapd_notif_disassoc_mld()
963 struct sta_info *sta; in hostapd_notif_disassoc() local
981 sta = ap_get_sta(hapd, addr); in hostapd_notif_disassoc()
987 if (!sta) { in hostapd_notif_disassoc()
1000 sta = ap_get_sta(h_hapd, addr); in hostapd_notif_disassoc()
1001 if (sta) { in hostapd_notif_disassoc()
1002 if (!sta->mld_info.mld_sta) { in hostapd_notif_disassoc()
1009 } else if (!sta->mld_info.mld_sta) { in hostapd_notif_disassoc()
1012 if (!sta) { in hostapd_notif_disassoc()
1018 sta = hostapd_ml_get_assoc_sta(hapd, sta, &assoc_hapd); in hostapd_notif_disassoc()
1019 if (sta) in hostapd_notif_disassoc()
1020 hostapd_notif_disassoc_mld(assoc_hapd, sta, addr); in hostapd_notif_disassoc()
1026 if (sta == NULL) { in hostapd_notif_disassoc()
1033 hostapd_remove_sta(hapd, sta); in hostapd_notif_disassoc()
1039 struct sta_info *sta = ap_get_sta(hapd, addr); in hostapd_event_sta_low_ack() local
1041 if (!sta || !hapd->conf->disassoc_low_ack || sta->agreed_to_steer) in hostapd_event_sta_low_ack()
1048 ap_sta_disassociate(hapd, sta, WLAN_REASON_DISASSOC_LOW_ACK); in hostapd_event_sta_low_ack()
1056 struct sta_info *sta = ap_get_sta(hapd, addr); in hostapd_event_sta_opmode_changed() local
1059 if (!sta) in hostapd_event_sta_opmode_changed()
1330 struct sta_info *sta; in hostapd_event_ch_switch() local
1333 for (sta = hapd->sta_list; sta; sta = sta->next) { in hostapd_event_ch_switch()
1334 if (wpa_auth_uses_ocv(sta->wpa_sm) && in hostapd_event_ch_switch()
1335 !(sta->flags & WLAN_STA_WNM_SLEEP_MODE)) { in hostapd_event_ch_switch()
1336 sta->post_csa_sa_query = 1; in hostapd_event_ch_switch()
1544 struct sta_info *sta; in hostapd_notify_auth_ft_finish() local
1546 sta = ap_get_sta(hapd, dst); in hostapd_notify_auth_ft_finish()
1547 if (sta == NULL) in hostapd_notify_auth_ft_finish()
1552 sta->flags |= WLAN_STA_AUTH; in hostapd_notify_auth_ft_finish()
1561 struct sta_info *sta, u16 resp, in hostapd_notify_auth_fils_finish() argument
1565 hostapd_logger(hapd, sta->addr, HOSTAPD_MODULE_IEEE80211, in hostapd_notify_auth_fils_finish()
1567 sta->flags |= WLAN_STA_AUTH; in hostapd_notify_auth_fils_finish()
1568 wpa_auth_sm_event(sta->wpa_sm, WPA_AUTH); in hostapd_notify_auth_fils_finish()
1569 sta->auth_alg = WLAN_AUTH_FILS_SK; in hostapd_notify_auth_fils_finish()
1570 mlme_authenticate_indication(hapd, sta); in hostapd_notify_auth_fils_finish()
1572 hostapd_logger(hapd, sta->addr, HOSTAPD_MODULE_IEEE80211, in hostapd_notify_auth_fils_finish()
1577 hostapd_sta_auth(hapd, sta->addr, 2, resp, in hostapd_notify_auth_fils_finish()
1588 struct sta_info *sta; in hostapd_notif_auth() local
1593 sta = ap_get_sta(hapd, rx_auth->peer); in hostapd_notif_auth()
1594 if (!sta) { in hostapd_notif_auth()
1595 sta = ap_sta_add(hapd, rx_auth->peer); in hostapd_notif_auth()
1596 if (sta == NULL) { in hostapd_notif_auth()
1601 sta->flags &= ~WLAN_STA_PREAUTH; in hostapd_notif_auth()
1602 ieee802_1x_notify_pre_auth(sta->eapol_sm, 0); in hostapd_notif_auth()
1605 sta->auth_alg = WLAN_AUTH_FT; in hostapd_notif_auth()
1606 if (sta->wpa_sm == NULL) in hostapd_notif_auth()
1607 sta->wpa_sm = wpa_auth_sta_init(hapd->wpa_auth, in hostapd_notif_auth()
1608 sta->addr, NULL); in hostapd_notif_auth()
1609 if (sta->wpa_sm == NULL) { in hostapd_notif_auth()
1615 wpa_ft_process_auth(sta->wpa_sm, in hostapd_notif_auth()
1625 sta->auth_alg = WLAN_AUTH_FILS_SK; in hostapd_notif_auth()
1626 handle_auth_fils(hapd, sta, rx_auth->ies, rx_auth->ies_len, in hostapd_notif_auth()
1645 struct sta_info *sta; in hostapd_action_rx() local
1666 sta = ap_get_sta(hapd, mgmt->sa); in hostapd_action_rx()
1667 if (sta == NULL) { in hostapd_action_rx()
1673 wpa_ft_action_rx(sta->wpa_sm, (u8 *) &mgmt->u.action, plen); in hostapd_action_rx()
1962 struct sta_info *sta = ap_get_sta(hapd, addr); in hostapd_event_new_sta() local
1964 if (sta) in hostapd_event_new_sta()
1969 sta = ap_sta_add(hapd, addr); in hostapd_event_new_sta()
1970 if (sta) { in hostapd_event_new_sta()
1971 hostapd_new_assoc_sta(hapd, sta, 0); in hostapd_event_new_sta()
1987 struct sta_info *sta; in hostapd_find_by_sta() local
1995 sta = ap_get_sta(hapd, src); in hostapd_find_by_sta()
1996 if (sta && (sta->flags & WLAN_STA_ASSOC) && in hostapd_find_by_sta()
1997 (!rsn || sta->wpa_sm)) { in hostapd_find_by_sta()
1999 *sta_ret = sta; in hostapd_find_by_sta()
2010 sta = ap_get_sta(p_hapd, src); in hostapd_find_by_sta()
2011 if (sta && (sta->flags & WLAN_STA_ASSOC) && in hostapd_find_by_sta()
2012 (!rsn || sta->wpa_sm)) { in hostapd_find_by_sta()
2014 *sta_ret = sta; in hostapd_find_by_sta()
2264 struct sta_info *sta = ap_get_sta(hapd, addr); in hostapd_event_wds_sta_interface_status() local
2266 if (sta) { in hostapd_event_wds_sta_interface_status()
2267 os_free(sta->ifname_wds); in hostapd_event_wds_sta_interface_status()
2269 sta->ifname_wds = os_strdup(ifname); in hostapd_event_wds_sta_interface_status()
2271 sta->ifname_wds = NULL; in hostapd_event_wds_sta_interface_status()
2287 struct sta_info *sta; in hostapd_notif_update_dh_ie() local
2315 sta = ap_get_sta(hapd, peer); in hostapd_notif_update_dh_ie()
2316 if (sta) { in hostapd_notif_update_dh_ie()
2317 ap_sta_no_session_timeout(hapd, sta); in hostapd_notif_update_dh_ie()
2318 accounting_sta_stop(hapd, sta); in hostapd_notif_update_dh_ie()
2324 sta->timeout_next = STA_NULLFUNC; in hostapd_notif_update_dh_ie()
2326 sta = ap_sta_add(hapd, peer); in hostapd_notif_update_dh_ie()
2327 if (!sta) { in hostapd_notif_update_dh_ie()
2332 sta->flags &= ~(WLAN_STA_WPS | WLAN_STA_MAYBE_WPS | WLAN_STA_WPS2); in hostapd_notif_update_dh_ie()
2336 struct mld_info *info = &sta->mld_info; in hostapd_notif_update_dh_ie()
2339 ap_sta_set_mld(sta, true); in hostapd_notif_update_dh_ie()
2340 sta->mld_assoc_link_id = link_id; in hostapd_notif_update_dh_ie()
2349 status = owe_process_rsn_ie(hapd, sta, elems.rsn_ie, in hostapd_notif_update_dh_ie()
2353 ap_free_sta(hapd, sta); in hostapd_notif_update_dh_ie()
2369 struct sta_info *sta; in hostapd_eapol_tx_status() local
2372 hapd = hostapd_find_by_sta(hapd->iface, dst, false, &sta); in hostapd_eapol_tx_status()
2374 if (!sta) { in hostapd_eapol_tx_status()
2381 ieee802_1x_eapol_tx_status(hapd, sta, data, len, ack); in hostapd_eapol_tx_status()
2416 struct sta_info *sta; in wpa_supplicant_event() local
2559 sta = ap_get_sta(hapd, data->port_authorized.sta_addr); in wpa_supplicant_event()
2560 if (sta) in wpa_supplicant_event()
2561 ap_sta_set_authorized(hapd, sta, 1); in wpa_supplicant_event()