• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-12-stable/contrib/wpa/src/eap_peer/

Lines Matching defs:erp

527 	struct eap_erp_key *erp;
529 dl_list_for_each(erp, &sm->erp_keys, struct eap_erp_key, list) {
532 pos = os_strchr(erp->keyname_nai, '@');
537 return erp;
547 struct eap_erp_key *erp;
549 dl_list_for_each(erp, &sm->erp_keys, struct eap_erp_key, list) {
550 if (os_strcmp(erp->keyname_nai, nai) == 0)
551 return erp;
558 static void eap_peer_erp_free_key(struct eap_erp_key *erp)
560 dl_list_del(&erp->list);
561 bin_clear_free(erp, sizeof(*erp));
567 struct eap_erp_key *erp;
569 while ((erp = eap_erp_get_key(sm, realm)) != NULL) {
571 erp->keyname_nai);
572 eap_peer_erp_free_key(erp);
579 struct eap_erp_key *erp;
588 erp = eap_erp_get_key(sm, home_realm);
589 if (!erp) {
597 if ((u32) next_seq_num < erp->next_seq) {
601 eap_peer_erp_free_key(erp);
603 erp->next_seq = (u32) next_seq_num;
617 struct eap_erp_key *erp;
630 erp = eap_erp_get_key(sm, home_realm);
632 if (!erp)
635 if (erp->next_seq >= 65536)
638 pos = os_strchr(erp->keyname_nai, '@');
641 *username_len = pos - erp->keyname_nai;
642 *username = (u8 *) erp->keyname_nai;
648 *erp_next_seq_num = (u16) erp->next_seq;
650 *rrk_len = erp->rRK_len;
651 *rrk = erp->rRK;
665 struct eap_erp_key *erp, *tmp;
667 dl_list_for_each_safe(erp, tmp, &sm->erp_keys, struct eap_erp_key, list)
668 eap_peer_erp_free_key(erp);
689 struct eap_erp_key *erp = NULL;
710 erp = os_zalloc(sizeof(*erp) + nai_buf_len);
711 if (erp == NULL)
751 pos = wpa_snprintf_hex(erp->keyname_nai, nai_buf_len,
753 erp->keyname_nai[pos] = '@';
754 os_memcpy(&erp->keyname_nai[pos + 1], realm, realm_len);
759 len, sizeof(len), erp->rRK, emsk_len) < 0) {
763 erp->rRK_len = emsk_len;
764 wpa_hexdump_key(MSG_DEBUG, "EAP: ERP rRK", erp->rRK, erp->rRK_len);
767 WPA_PUT_BE16(&ctx[1], erp->rRK_len);
768 if (hmac_sha256_kdf(erp->rRK, erp->rRK_len,
770 ctx, sizeof(ctx), erp->rIK, erp->rRK_len) < 0) {
774 erp->rIK_len = erp->rRK_len;
775 wpa_hexdump_key(MSG_DEBUG, "EAP: ERP rIK", erp->rIK, erp->rIK_len);
777 wpa_printf(MSG_DEBUG, "EAP: Stored ERP keys %s", erp->keyname_nai);
778 dl_list_add(&sm->erp_keys, &erp->list);
779 erp = NULL;
786 bin_clear_free(erp, sizeof(*erp));
796 struct eap_erp_key *erp;
804 erp = eap_erp_get_key(sm, realm);
807 if (!erp)
810 if (erp->next_seq >= 65536)
816 erp->keyname_nai, erp->next_seq);
819 1 + 2 + 2 + os_strlen(erp->keyname_nai) + 1 + 16,
825 wpabuf_put_be16(msg, erp->next_seq);
828 wpabuf_put_u8(msg, os_strlen(erp->keyname_nai));
829 wpabuf_put_str(msg, erp->keyname_nai);
833 if (hmac_sha256(erp->rIK, erp->rIK_len,
840 sm->erp_seq = erp->next_seq;
841 erp->next_seq++;
1061 if (config->erp && sm->m->get_emsk && sm->eapSessionId &&
1796 struct eap_erp_key *erp;
1856 erp = eap_erp_get_key_nai(sm, nai);
1857 if (!erp) {
1881 if (hmac_sha256(erp->rIK, erp->rIK_len, (const u8 *) hdr,
1913 eap_peer_erp_free_key(erp);
1919 sm->eapKeyData = os_malloc(erp->rRK_len);
1922 sm->eapKeyDataLen = erp->rRK_len;
1925 WPA_PUT_BE16(&seed[2], erp->rRK_len);
1926 if (hmac_sha256_kdf(erp->rRK, erp->rRK_len,
1929 sm->eapKeyData, erp->rRK_len) < 0) {