Lines Matching refs:auth_data
3312 else if (ifmgd->auth_data) in ieee80211_ap_probereq_get()
3313 cbss = ifmgd->auth_data->bss; in ieee80211_ap_probereq_get()
3501 struct ieee80211_mgd_auth_data *auth_data = sdata->u.mgd.auth_data; in ieee80211_destroy_auth_data() local
3512 sta_info_destroy_addr(sdata, auth_data->ap_addr); in ieee80211_destroy_auth_data()
3527 cfg80211_put_bss(sdata->local->hw.wiphy, auth_data->bss); in ieee80211_destroy_auth_data()
3528 kfree(auth_data); in ieee80211_destroy_auth_data()
3529 sdata->u.mgd.auth_data = NULL; in ieee80211_destroy_auth_data()
3594 struct ieee80211_mgd_auth_data *auth_data = sdata->u.mgd.auth_data; in ieee80211_auth_challenge() local
3607 auth_data->expected_transaction = 4; in ieee80211_auth_challenge()
3612 ieee80211_send_auth(sdata, 3, auth_data->algorithm, 0, in ieee80211_auth_challenge()
3615 auth_data->ap_addr, auth_data->ap_addr, in ieee80211_auth_challenge()
3616 auth_data->key, auth_data->key_len, in ieee80211_auth_challenge()
3617 auth_data->key_idx, tx_flags); in ieee80211_auth_challenge()
3623 const u8 *ap_addr = ifmgd->auth_data->ap_addr; in ieee80211_mark_sta_auth()
3628 ifmgd->auth_data->done = true; in ieee80211_mark_sta_auth()
3629 ifmgd->auth_data->timeout = jiffies + IEEE80211_AUTH_WAIT_ASSOC; in ieee80211_mark_sta_auth()
3630 ifmgd->auth_data->timeout_started = true; in ieee80211_mark_sta_auth()
3631 run_again(sdata, ifmgd->auth_data->timeout); in ieee80211_mark_sta_auth()
3670 if (!ifmgd->auth_data || ifmgd->auth_data->done) in ieee80211_rx_mgmt_auth()
3673 if (!ether_addr_equal(ifmgd->auth_data->ap_addr, mgmt->bssid)) in ieee80211_rx_mgmt_auth()
3680 if (auth_alg != ifmgd->auth_data->algorithm || in ieee80211_rx_mgmt_auth()
3682 auth_transaction != ifmgd->auth_data->expected_transaction) || in ieee80211_rx_mgmt_auth()
3684 (auth_transaction < ifmgd->auth_data->expected_transaction || in ieee80211_rx_mgmt_auth()
3687 mgmt->sa, auth_alg, ifmgd->auth_data->algorithm, in ieee80211_rx_mgmt_auth()
3689 ifmgd->auth_data->expected_transaction); in ieee80211_rx_mgmt_auth()
3702 ifmgd->auth_data->waiting = true; in ieee80211_rx_mgmt_auth()
3703 ifmgd->auth_data->timeout = in ieee80211_rx_mgmt_auth()
3705 ifmgd->auth_data->timeout_started = true; in ieee80211_rx_mgmt_auth()
3706 run_again(sdata, ifmgd->auth_data->timeout); in ieee80211_rx_mgmt_auth()
3719 switch (ifmgd->auth_data->algorithm) { in ieee80211_rx_mgmt_auth()
3729 if (ifmgd->auth_data->expected_transaction != 4) { in ieee80211_rx_mgmt_auth()
3737 ifmgd->auth_data->algorithm); in ieee80211_rx_mgmt_auth()
3744 if (ifmgd->auth_data->algorithm != WLAN_AUTH_SAE || in ieee80211_rx_mgmt_auth()
3746 ifmgd->auth_data->expected_transaction == 2)) { in ieee80211_rx_mgmt_auth()
3749 } else if (ifmgd->auth_data->algorithm == WLAN_AUTH_SAE && in ieee80211_rx_mgmt_auth()
3752 ifmgd->auth_data->peer_confirmed = true; in ieee80211_rx_mgmt_auth()
6387 struct ieee80211_mgd_auth_data *auth_data = ifmgd->auth_data; in ieee80211_auth() local
6397 if (WARN_ON_ONCE(!auth_data)) in ieee80211_auth()
6400 auth_data->tries++; in ieee80211_auth()
6402 if (auth_data->tries > IEEE80211_AUTH_MAX_TRIES) { in ieee80211_auth()
6404 auth_data->ap_addr); in ieee80211_auth()
6410 cfg80211_unlink_bss(local->hw.wiphy, auth_data->bss); in ieee80211_auth()
6415 if (auth_data->algorithm == WLAN_AUTH_SAE) in ieee80211_auth()
6421 auth_data->ap_addr, auth_data->tries, in ieee80211_auth()
6424 auth_data->expected_transaction = 2; in ieee80211_auth()
6426 if (auth_data->algorithm == WLAN_AUTH_SAE) { in ieee80211_auth()
6427 trans = auth_data->sae_trans; in ieee80211_auth()
6428 status = auth_data->sae_status; in ieee80211_auth()
6429 auth_data->expected_transaction = trans; in ieee80211_auth()
6436 ieee80211_send_auth(sdata, trans, auth_data->algorithm, status, in ieee80211_auth()
6437 auth_data->data, auth_data->data_len, in ieee80211_auth()
6438 auth_data->ap_addr, auth_data->ap_addr, in ieee80211_auth()
6442 if (auth_data->algorithm == WLAN_AUTH_SAE) in ieee80211_auth()
6443 auth_data->timeout = jiffies + in ieee80211_auth()
6446 auth_data->timeout = jiffies + IEEE80211_AUTH_TIMEOUT; in ieee80211_auth()
6448 auth_data->timeout = in ieee80211_auth()
6452 auth_data->timeout_started = true; in ieee80211_auth()
6453 run_again(sdata, auth_data->timeout); in ieee80211_auth()
6527 if (ifmgd->auth_data && ieee80211_is_auth(fc)) { in ieee80211_sta_work()
6529 if (ifmgd->auth_data->algorithm == in ieee80211_sta_work()
6531 ifmgd->auth_data->timeout = in ieee80211_sta_work()
6535 ifmgd->auth_data->timeout = in ieee80211_sta_work()
6538 run_again(sdata, ifmgd->auth_data->timeout); in ieee80211_sta_work()
6540 ifmgd->auth_data->timeout = jiffies - 1; in ieee80211_sta_work()
6542 ifmgd->auth_data->timeout_started = true; in ieee80211_sta_work()
6557 if (ifmgd->auth_data && ifmgd->auth_data->timeout_started && in ieee80211_sta_work()
6558 time_after(jiffies, ifmgd->auth_data->timeout)) { in ieee80211_sta_work()
6559 if (ifmgd->auth_data->done || ifmgd->auth_data->waiting) { in ieee80211_sta_work()
6573 memcpy(ap_addr, ifmgd->auth_data->ap_addr, ETH_ALEN); in ieee80211_sta_work()
6580 } else if (ifmgd->auth_data && ifmgd->auth_data->timeout_started) in ieee80211_sta_work()
6581 run_again(sdata, ifmgd->auth_data->timeout); in ieee80211_sta_work()
6744 if (ifmgd->auth_data || ifmgd->assoc_data) { in ieee80211_mgd_quiesce()
6745 const u8 *ap_addr = ifmgd->auth_data ? in ieee80211_mgd_quiesce()
6746 ifmgd->auth_data->ap_addr : in ieee80211_mgd_quiesce()
6760 if (ifmgd->auth_data) in ieee80211_mgd_quiesce()
6953 if (WARN_ON(!ifmgd->auth_data && !ifmgd->assoc_data)) { in ieee80211_prep_connection()
7101 struct ieee80211_mgd_auth_data *auth_data; in ieee80211_mgd_auth() local
7142 auth_data = kzalloc(sizeof(*auth_data) + req->auth_data_len + in ieee80211_mgd_auth()
7144 if (!auth_data) in ieee80211_mgd_auth()
7147 memcpy(auth_data->ap_addr, in ieee80211_mgd_auth()
7150 auth_data->bss = req->bss; in ieee80211_mgd_auth()
7151 auth_data->link_id = req->link_id; in ieee80211_mgd_auth()
7155 __le16 *pos = (__le16 *) req->auth_data; in ieee80211_mgd_auth()
7157 auth_data->sae_trans = le16_to_cpu(pos[0]); in ieee80211_mgd_auth()
7158 auth_data->sae_status = le16_to_cpu(pos[1]); in ieee80211_mgd_auth()
7160 memcpy(auth_data->data, req->auth_data + 4, in ieee80211_mgd_auth()
7162 auth_data->data_len += req->auth_data_len - 4; in ieee80211_mgd_auth()
7170 cont_auth = ifmgd->auth_data && req->bss == ifmgd->auth_data->bss && in ieee80211_mgd_auth()
7171 ifmgd->auth_data->link_id == req->link_id; in ieee80211_mgd_auth()
7174 memcpy(&auth_data->data[auth_data->data_len], in ieee80211_mgd_auth()
7176 auth_data->data_len += req->ie_len; in ieee80211_mgd_auth()
7180 auth_data->key_len = req->key_len; in ieee80211_mgd_auth()
7181 auth_data->key_idx = req->key_idx; in ieee80211_mgd_auth()
7182 memcpy(auth_data->key, req->key, req->key_len); in ieee80211_mgd_auth()
7185 auth_data->algorithm = auth_alg; in ieee80211_mgd_auth()
7189 if (ifmgd->auth_data) { in ieee80211_mgd_auth()
7191 auth_data->peer_confirmed = in ieee80211_mgd_auth()
7192 ifmgd->auth_data->peer_confirmed; in ieee80211_mgd_auth()
7198 ifmgd->auth_data = auth_data; in ieee80211_mgd_auth()
7206 auth_data->peer_confirmed && auth_data->sae_trans == 2) in ieee80211_mgd_auth()
7214 sdata->vif.cfg.ap_addr, auth_data->ap_addr); in ieee80211_mgd_auth()
7225 sdata_info(sdata, "authenticate with %pM\n", auth_data->ap_addr); in ieee80211_mgd_auth()
7228 memcpy(sdata->vif.cfg.ap_addr, auth_data->ap_addr, ETH_ALEN); in ieee80211_mgd_auth()
7237 sta_info_destroy_addr(sdata, auth_data->ap_addr); in ieee80211_mgd_auth()
7242 cfg80211_ref_bss(local->hw.wiphy, auth_data->bss); in ieee80211_mgd_auth()
7254 ifmgd->auth_data = NULL; in ieee80211_mgd_auth()
7255 kfree(auth_data); in ieee80211_mgd_auth()
7508 if (ifmgd->auth_data && !ifmgd->auth_data->done) { in ieee80211_mgd_assoc()
7518 if (ifmgd->auth_data) { in ieee80211_mgd_assoc()
7522 match = ether_addr_equal(ifmgd->auth_data->ap_addr, in ieee80211_mgd_assoc()
7524 ifmgd->auth_data->link_id == req->link_id; in ieee80211_mgd_assoc()
7766 if (ifmgd->auth_data && in ieee80211_mgd_deauth()
7767 ether_addr_equal(ifmgd->auth_data->ap_addr, req->bssid)) { in ieee80211_mgd_deauth()
7877 if (ifmgd->auth_data) in ieee80211_mgd_stop()