Lines Matching defs:PTK
45 static int wpa_verify_key_mic(int akmp, size_t pmk_len, struct wpa_ptk *PTK,
606 "rekeying PTK");
615 wpa_printf(MSG_DEBUG, "WPA: Start PTK rekeying timer for "
1295 struct wpa_ptk PTK;
1305 os_memset(&PTK, 0, sizeof(PTK));
1325 if (wpa_derive_ptk(sm, sm->alt_SNonce, pmk, pmk_len, &PTK, 0,
1330 if (wpa_verify_key_mic(sm->wpa_key_mgmt, pmk_len, &PTK,
1368 os_memcpy(&sm->PTK, &PTK, sizeof(PTK));
1369 forced_memzero(&PTK, sizeof(PTK));
1635 if (aes_unwrap(sm->PTK.kek, sm->PTK.kek_len,
1772 wpa_verify_key_mic(sm->wpa_key_mgmt, sm->pmk_len, &sm->PTK,
1788 wpa_aead_decrypt(sm, &sm->PTK, data, data_len,
2080 sm->PTK.kek, sm->PTK.kek_len);
2085 if (aes_siv_encrypt(sm->PTK.kek, sm->PTK.kek_len, kde, kde_len,
2114 sm->PTK.kek, sm->PTK.kek_len);
2115 if (aes_wrap(sm->PTK.kek, sm->PTK.kek_len,
2126 } else if (sm->PTK.kek_len == 16) {
2135 os_memcpy(ek + 16, sm->PTK.kek, sm->PTK.kek_len);
2152 "PTK not valid when sending EAPOL-Key frame");
2157 if (wpa_eapol_key_mic(sm->PTK.kck, sm->PTK.kck_len,
2250 static int wpa_verify_key_mic(int akmp, size_t pmk_len, struct wpa_ptk *PTK,
2269 if (wpa_eapol_key_mic(PTK->kck, PTK->kck_len, akmp,
2282 os_memset(&sm->PTK, 0, sizeof(sm->PTK));
2289 "RSN: PTK removal from the driver failed");
2294 "RSN: PTK Key ID 1 removal from the driver failed");
2391 "FT: Retry PTK configuration after association");
2430 os_memset(&sm->PTK, 0, sizeof(sm->PTK));
2502 os_memset(&sm->PTK, 0, sizeof(sm->PTK));
2895 wpa_printf(MSG_ERROR, "FT: PTK derivation failed");
2931 "WPA: PTK derivation failed");
2972 &sm->PTK, ick, &ick_len,
2981 res = wpa_ltf_keyseed(&sm->PTK, sm->wpa_key_mgmt, sm->pairwise);
3266 if (aes_siv_decrypt(sm->PTK.kek, sm->PTK.kek_len, crypt, end - crypt,
3343 if (aes_siv_encrypt(sm->PTK.kek, sm->PTK.kek_len,
3477 wpa_printf(MSG_DEBUG, "FILS: No valid PTK available to set TK");
3490 sm->PTK.tk, klen, KEY_FLAG_PAIRWISE_RX_TX)) {
3499 sm->PTK.ltf_keyseed,
3500 sm->PTK.ltf_keyseed_len)) {
3511 dot11RSNAConfigPMKLifetime, &sm->PTK);
3629 struct wpa_ptk PTK;
3652 os_memset(&PTK, 0, sizeof(PTK));
3690 if (wpa_derive_ptk(sm, sm->SNonce, pmk, pmk_len, &PTK,
3696 wpa_verify_key_mic(sm->wpa_key_mgmt, pmk_len, &PTK,
3709 wpa_aead_decrypt(sm, &PTK, sm->last_rx_eapol_key,
3720 "OWE: Try PTK derivation workaround with SHA256");
3728 * during PTK generation. Try to work around this by checking if
3729 * a PTK derived without KDK would result in a matching MIC. */
3733 "Try new PTK derivation without KDK as a workaround");
3745 * completed with the PTK that was derived without the KDK. */
3747 "PTK without KDK worked - misbehaving STA "
3808 if (aes_unwrap(PTK.kek, PTK.kek_len, key_data_length / 8,
3992 os_memcpy(&sm->PTK, &PTK, sizeof(PTK));
3993 forced_memzero(&PTK, sizeof(PTK));
4578 /* Send EAPOL(1, 1, 1, Pair, P, RSC, ANonce, MIC(PTK), RSNIE, [MDIE],
4623 sm->keyidx_active, sm->PTK.tk,
4636 sm->PTK.ltf_keyseed,
4637 sm->PTK.ltf_keyseed_len)) {
4941 0, sm->PTK.tk, klen,
4954 sm->PTK.ltf_keyseed,
4955 sm->PTK.ltf_keyseed_len)) {
4969 dot11RSNAConfigPMKLifetime, &sm->PTK);
5193 /* Send EAPOL(1, 1, 1, !Pair, G, RSC, GNonce, MIC(PTK), GTK[GN]) */
6240 sm->PTK.kck, sm->PTK.kck_len,
6658 * deriving the PTK. This results in unsuccessful 4-way
6792 os_memcpy(fils_kek, sm->PTK.kek, WPA_KEK_MAX_LEN);
6793 *fils_kek_len = sm->PTK.kek_len;
6879 /* Send EAPOL(1, 1, 1, Pair, P, RSC, ANonce, MIC(PTK), RSNIE, [MDIE],
7059 /* Send EAPOL(1, 1, 1, !Pair, G, RSC, GNonce, MIC(PTK), GTK[GN]) */
7130 wpa_auth_logger(wpa_auth, sm->addr, LOGGER_DEBUG, "rekeying PTK");