Lines Matching refs:sta
33 struct sta_info *sta, int success,
36 static void ieee802_1x_send(struct hostapd_data *hapd, struct sta_info *sta, in ieee802_1x_send() argument
59 hostapd_send_eapol(hapd->own_addr, sta->addr, buf, len); in ieee802_1x_send()
66 struct sta_info *sta, struct eap_hdr *eap, in handle_eap_response() argument
70 struct eapol_state_machine *sm = sta->eapol_sm; in handle_eap_response()
92 static void handle_eap(struct hostapd_data *hapd, struct sta_info *sta, in handle_eap() argument
124 handle_eap_response(hapd, sta, eap, eap_len); in handle_eap()
132 ieee802_1x_alloc_eapol_sm(struct hostapd_data *hapd, struct sta_info *sta) in ieee802_1x_alloc_eapol_sm() argument
136 if (sta->wpa_sm) { in ieee802_1x_alloc_eapol_sm()
139 return eapol_auth_alloc(hapd->eapol_auth, sta->addr, flags, in ieee802_1x_alloc_eapol_sm()
140 sta->wps_ie, NULL, sta, in ieee802_1x_alloc_eapol_sm()
141 sta->identity, NULL); in ieee802_1x_alloc_eapol_sm()
157 struct sta_info *sta; in ieee802_1x_receive() local
164 sta = ap_get_sta(hapd, sa); in ieee802_1x_receive()
165 if (!sta) { in ieee802_1x_receive()
185 if (sta->eapol_sm) in ieee802_1x_receive()
186 sta->eapol_sm->dot1xAuthEapLengthErrorFramesRx++; in ieee802_1x_receive()
195 if (sta->eapol_sm) { in ieee802_1x_receive()
196 sta->eapol_sm->dot1xAuthLastEapolFrameVersion = hdr->version; in ieee802_1x_receive()
197 sta->eapol_sm->dot1xAuthEapolFramesRx++; in ieee802_1x_receive()
205 wpa_receive(hapd->wpa_auth, sta->wpa_sm, (u8 *) hdr, in ieee802_1x_receive()
210 if (!sta->eapol_sm) { in ieee802_1x_receive()
211 sta->eapol_sm = ieee802_1x_alloc_eapol_sm(hapd, sta); in ieee802_1x_receive()
212 if (!sta->eapol_sm) in ieee802_1x_receive()
217 u32 wflags = sta->flags & (WLAN_STA_WPS | in ieee802_1x_receive()
231 sta->eapol_sm->flags |= EAPOL_SM_WAIT_START; in ieee802_1x_receive()
236 sta->eapol_sm->eap_if->portEnabled = true; in ieee802_1x_receive()
248 handle_eap(hapd, sta, (u8 *) (hdr + 1), datalen); in ieee802_1x_receive()
252 sta->eapol_sm->flags &= ~EAPOL_SM_WAIT_START; in ieee802_1x_receive()
253 sta->eapol_sm->eapolStart = true; in ieee802_1x_receive()
254 sta->eapol_sm->dot1xAuthEapolStartFramesRx++; in ieee802_1x_receive()
255 eap_server_clear_identity(sta->eapol_sm->eap); in ieee802_1x_receive()
256 wpa_auth_sm_event(sta->wpa_sm, WPA_REAUTH_EAPOL); in ieee802_1x_receive()
274 sta->eapol_sm->dot1xAuthInvalidEapolFramesRx++; in ieee802_1x_receive()
278 eapol_auth_step(sta->eapol_sm); in ieee802_1x_receive()
282 void ieee802_1x_free_station(struct hostapd_data *hapd, struct sta_info *sta) in ieee802_1x_free_station() argument
284 struct eapol_state_machine *sm = sta->eapol_sm; in ieee802_1x_free_station()
289 sta->eapol_sm = NULL; in ieee802_1x_free_station()
298 struct sta_info *sta = sta_ctx; in ieee802_1x_eapol_send() local
300 if ((sta->flags & (WLAN_STA_WPS | WLAN_STA_MAYBE_WPS)) == in ieee802_1x_eapol_send()
304 struct eapol_state_machine *sm = sta->eapol_sm; in ieee802_1x_eapol_send()
316 sta->flags |= WLAN_STA_WPS; in ieee802_1x_eapol_send()
330 struct sta_info *sta = sta_ctx; in ieee802_1x_aaa_send() local
332 ieee802_1x_encapsulate_radius(hapd, sta, data, datalen); in ieee802_1x_aaa_send()
341 struct sta_info *sta = sta_ctx; in _ieee802_1x_finished() local
342 ieee802_1x_finished(hapd, sta, success, remediation); in _ieee802_1x_finished()
389 struct sta_info *sta; in ieee802_1x_sta_entry_alive() local
391 sta = ap_get_sta(hapd, addr); in ieee802_1x_sta_entry_alive()
392 if (!sta || !sta->eapol_sm) in ieee802_1x_sta_entry_alive()
414 struct sta_info *sta = sta_ctx; in ieee802_1x_eapol_event()
418 wpa_auth_sm_notify(sta->wpa_sm); in ieee802_1x_eapol_event()
421 wpa_auth_sm_event(sta->wpa_sm, WPA_REAUTH_EAPOL); in ieee802_1x_eapol_event()
463 struct sta_info *sta, int success, in ieee802_1x_finished() argument
477 ap_sta_delayed_1x_auth_fail_disconnect(hapd, sta); in ieee802_1x_finished()