Lines Matching refs:ret

128     int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED;  in mbedtls_pk_parse_keyfile()  local
135 if( ( ret = mbedtls_pk_load_file( path, &buf, &n ) ) != 0 ) in mbedtls_pk_parse_keyfile()
136 return( ret ); in mbedtls_pk_parse_keyfile()
139 ret = mbedtls_pk_parse_key( ctx, buf, n, NULL, 0 ); in mbedtls_pk_parse_keyfile()
141 ret = mbedtls_pk_parse_key( ctx, buf, n, in mbedtls_pk_parse_keyfile()
147 return( ret ); in mbedtls_pk_parse_keyfile()
155 int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED; in mbedtls_pk_parse_public_keyfile() local
162 if( ( ret = mbedtls_pk_load_file( path, &buf, &n ) ) != 0 ) in mbedtls_pk_parse_public_keyfile()
163 return( ret ); in mbedtls_pk_parse_public_keyfile()
165 ret = mbedtls_pk_parse_public_key( ctx, buf, n ); in mbedtls_pk_parse_public_keyfile()
170 return( ret ); in mbedtls_pk_parse_public_keyfile()
186 int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED; in pk_get_ecparams() local
204 if( ( ret = mbedtls_asn1_get_tag( p, end, &params->len, params->tag ) ) != 0 ) in pk_get_ecparams()
206 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_get_ecparams()
241 int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED; in pk_group_from_specified() local
249 if( ( ret = mbedtls_asn1_get_int( &p, end, &ver ) ) != 0 ) in pk_group_from_specified()
250 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_group_from_specified()
261 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, in pk_group_from_specified()
263 return( ret ); in pk_group_from_specified()
275 if( ( ret = mbedtls_asn1_get_tag( &p, end_field, &len, MBEDTLS_ASN1_OID ) ) != 0 ) in pk_group_from_specified()
276 return( ret ); in pk_group_from_specified()
287 if( ( ret = mbedtls_asn1_get_mpi( &p, end_field, &grp->P ) ) != 0 ) in pk_group_from_specified()
288 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_group_from_specified()
305 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, in pk_group_from_specified()
307 return( ret ); in pk_group_from_specified()
315 if( ( ret = mbedtls_asn1_get_tag( &p, end_curve, &len, MBEDTLS_ASN1_OCTET_STRING ) ) != 0 || in pk_group_from_specified()
316 ( ret = mbedtls_mpi_read_binary( &grp->A, p, len ) ) != 0 ) in pk_group_from_specified()
318 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_group_from_specified()
323 if( ( ret = mbedtls_asn1_get_tag( &p, end_curve, &len, MBEDTLS_ASN1_OCTET_STRING ) ) != 0 || in pk_group_from_specified()
324 ( ret = mbedtls_mpi_read_binary( &grp->B, p, len ) ) != 0 ) in pk_group_from_specified()
326 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_group_from_specified()
332 if( ( ret = mbedtls_asn1_get_tag( &p, end_curve, &len, MBEDTLS_ASN1_BIT_STRING ) ) == 0 ) in pk_group_from_specified()
342 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, MBEDTLS_ASN1_OCTET_STRING ) ) != 0 ) in pk_group_from_specified()
343 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_group_from_specified()
345 if( ( ret = mbedtls_ecp_point_read_binary( grp, &grp->G, in pk_group_from_specified()
352 if( ret != MBEDTLS_ERR_ECP_FEATURE_UNAVAILABLE || in pk_group_from_specified()
368 if( ( ret = mbedtls_asn1_get_mpi( &p, end, &grp->N ) ) != 0 ) in pk_group_from_specified()
369 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_group_from_specified()
386 int ret = 0; in pk_group_id_from_group() local
419 if( ret == 0 && *id == MBEDTLS_ECP_DP_NONE ) in pk_group_id_from_group()
420 ret = MBEDTLS_ERR_ECP_FEATURE_UNAVAILABLE; in pk_group_id_from_group()
422 return( ret ); in pk_group_id_from_group()
431 int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED; in pk_group_id_from_specified() local
436 if( ( ret = pk_group_from_specified( params, &grp ) ) != 0 ) in pk_group_id_from_specified()
439 ret = pk_group_id_from_group( &grp, grp_id ); in pk_group_id_from_specified()
444 return( ret ); in pk_group_id_from_specified()
458 int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED; in pk_use_ecparams() local
469 if( ( ret = pk_group_id_from_specified( params, &grp_id ) ) != 0 ) in pk_use_ecparams()
470 return( ret ); in pk_use_ecparams()
482 if( ( ret = mbedtls_ecp_group_load( grp, grp_id ) ) != 0 ) in pk_use_ecparams()
483 return( ret ); in pk_use_ecparams()
498 int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED; in pk_get_ecpubkey() local
500 if( ( ret = mbedtls_ecp_point_read_binary( &key->grp, &key->Q, in pk_get_ecpubkey()
503 ret = mbedtls_ecp_check_pubkey( &key->grp, &key->Q ); in pk_get_ecpubkey()
511 return( ret ); in pk_get_ecpubkey()
526 int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED; in pk_get_rsapubkey() local
529 if( ( ret = mbedtls_asn1_get_tag( p, end, &len, in pk_get_rsapubkey()
531 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_INVALID_PUBKEY, ret ) ); in pk_get_rsapubkey()
538 if( ( ret = mbedtls_asn1_get_tag( p, end, &len, MBEDTLS_ASN1_INTEGER ) ) != 0 ) in pk_get_rsapubkey()
539 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_INVALID_PUBKEY, ret ) ); in pk_get_rsapubkey()
541 if( ( ret = mbedtls_rsa_import_raw( rsa, *p, len, NULL, 0, NULL, 0, in pk_get_rsapubkey()
548 if( ( ret = mbedtls_asn1_get_tag( p, end, &len, MBEDTLS_ASN1_INTEGER ) ) != 0 ) in pk_get_rsapubkey()
549 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_INVALID_PUBKEY, ret ) ); in pk_get_rsapubkey()
551 if( ( ret = mbedtls_rsa_import_raw( rsa, NULL, 0, NULL, 0, NULL, 0, in pk_get_rsapubkey()
581 int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED; in pk_get_pk_alg() local
586 if( ( ret = mbedtls_asn1_get_alg( p, end, &alg_oid, params ) ) != 0 ) in pk_get_pk_alg()
587 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_INVALID_ALG, ret ) ); in pk_get_pk_alg()
613 int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED; in mbedtls_pk_parse_subpubkey() local
624 if( ( ret = mbedtls_asn1_get_tag( p, end, &len, in mbedtls_pk_parse_subpubkey()
627 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in mbedtls_pk_parse_subpubkey()
632 if( ( ret = pk_get_pk_alg( p, end, &pk_alg, &alg_params ) ) != 0 ) in mbedtls_pk_parse_subpubkey()
633 return( ret ); in mbedtls_pk_parse_subpubkey()
635 if( ( ret = mbedtls_asn1_get_bitstring_null( p, end, &len ) ) != 0 ) in mbedtls_pk_parse_subpubkey()
636 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_INVALID_PUBKEY, ret ) ); in mbedtls_pk_parse_subpubkey()
645 if( ( ret = mbedtls_pk_setup( pk, pk_info ) ) != 0 ) in mbedtls_pk_parse_subpubkey()
646 return( ret ); in mbedtls_pk_parse_subpubkey()
651 ret = pk_get_rsapubkey( p, end, mbedtls_pk_rsa( *pk ) ); in mbedtls_pk_parse_subpubkey()
657 ret = pk_use_ecparams( &alg_params, &mbedtls_pk_ec( *pk )->grp ); in mbedtls_pk_parse_subpubkey()
658 if( ret == 0 ) in mbedtls_pk_parse_subpubkey()
659 ret = pk_get_ecpubkey( p, end, mbedtls_pk_ec( *pk ) ); in mbedtls_pk_parse_subpubkey()
662 ret = MBEDTLS_ERR_PK_UNKNOWN_PK_ALG; in mbedtls_pk_parse_subpubkey()
664 if( ret == 0 && *p != end ) in mbedtls_pk_parse_subpubkey()
665 ret = MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_INVALID_PUBKEY, in mbedtls_pk_parse_subpubkey()
668 if( ret != 0 ) in mbedtls_pk_parse_subpubkey()
671 return( ret ); in mbedtls_pk_parse_subpubkey()
689 int ret; in asn1_get_nonzero_mpi() local
691 ret = mbedtls_asn1_get_mpi( p, end, X ); in asn1_get_nonzero_mpi()
692 if( ret != 0 ) in asn1_get_nonzero_mpi()
693 return( ret ); in asn1_get_nonzero_mpi()
708 int ret, version; in pk_parse_key_pkcs1_der() local
734 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, in pk_parse_key_pkcs1_der()
737 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_parse_key_pkcs1_der()
742 if( ( ret = mbedtls_asn1_get_int( &p, end, &version ) ) != 0 ) in pk_parse_key_pkcs1_der()
744 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_parse_key_pkcs1_der()
753 if( ( ret = asn1_get_nonzero_mpi( &p, end, &T ) ) != 0 || in pk_parse_key_pkcs1_der()
754 ( ret = mbedtls_rsa_import( rsa, &T, NULL, NULL, in pk_parse_key_pkcs1_der()
759 if( ( ret = asn1_get_nonzero_mpi( &p, end, &T ) ) != 0 || in pk_parse_key_pkcs1_der()
760 ( ret = mbedtls_rsa_import( rsa, NULL, NULL, NULL, in pk_parse_key_pkcs1_der()
765 if( ( ret = asn1_get_nonzero_mpi( &p, end, &T ) ) != 0 || in pk_parse_key_pkcs1_der()
766 ( ret = mbedtls_rsa_import( rsa, NULL, NULL, NULL, in pk_parse_key_pkcs1_der()
771 if( ( ret = asn1_get_nonzero_mpi( &p, end, &T ) ) != 0 || in pk_parse_key_pkcs1_der()
772 ( ret = mbedtls_rsa_import( rsa, NULL, &T, NULL, in pk_parse_key_pkcs1_der()
777 if( ( ret = asn1_get_nonzero_mpi( &p, end, &T ) ) != 0 || in pk_parse_key_pkcs1_der()
778 ( ret = mbedtls_rsa_import( rsa, NULL, NULL, &T, in pk_parse_key_pkcs1_der()
795 if( ( ret = asn1_get_nonzero_mpi( &p, end, &T ) ) != 0 || in pk_parse_key_pkcs1_der()
796 ( ret = mbedtls_mpi_copy( &rsa->DP, &T ) ) != 0 ) in pk_parse_key_pkcs1_der()
800 if( ( ret = asn1_get_nonzero_mpi( &p, end, &T ) ) != 0 || in pk_parse_key_pkcs1_der()
801 ( ret = mbedtls_mpi_copy( &rsa->DQ, &T ) ) != 0 ) in pk_parse_key_pkcs1_der()
805 if( ( ret = asn1_get_nonzero_mpi( &p, end, &T ) ) != 0 || in pk_parse_key_pkcs1_der()
806 ( ret = mbedtls_mpi_copy( &rsa->QP, &T ) ) != 0 ) in pk_parse_key_pkcs1_der()
811 if( ( ret = asn1_get_nonzero_mpi( &p, end, &T ) ) != 0 || in pk_parse_key_pkcs1_der()
812 ( ret = asn1_get_nonzero_mpi( &p, end, &T ) ) != 0 || in pk_parse_key_pkcs1_der()
813 ( ret = asn1_get_nonzero_mpi( &p, end, &T ) ) != 0 ) in pk_parse_key_pkcs1_der()
826 if( ( ret = mbedtls_rsa_complete( rsa ) ) != 0 || in pk_parse_key_pkcs1_der()
827 ( ret = mbedtls_rsa_check_pubkey( rsa ) ) != 0 ) in pk_parse_key_pkcs1_der()
834 ret = MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, in pk_parse_key_pkcs1_der()
842 if( ret != 0 ) in pk_parse_key_pkcs1_der()
845 if( ( ret & 0xff80 ) == 0 ) in pk_parse_key_pkcs1_der()
846 ret = MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ); in pk_parse_key_pkcs1_der()
848 ret = MBEDTLS_ERR_PK_KEY_INVALID_FORMAT; in pk_parse_key_pkcs1_der()
853 return( ret ); in pk_parse_key_pkcs1_der()
865 int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED; in pk_parse_key_sec1_der() local
883 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, in pk_parse_key_sec1_der()
886 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_parse_key_sec1_der()
891 if( ( ret = mbedtls_asn1_get_int( &p, end, &version ) ) != 0 ) in pk_parse_key_sec1_der()
892 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_parse_key_sec1_der()
897 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, MBEDTLS_ASN1_OCTET_STRING ) ) != 0 ) in pk_parse_key_sec1_der()
898 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_parse_key_sec1_der()
900 if( ( ret = mbedtls_mpi_read_binary( &eck->d, p, len ) ) != 0 ) in pk_parse_key_sec1_der()
903 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_parse_key_sec1_der()
914 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, in pk_parse_key_sec1_der()
917 if( ( ret = pk_get_ecparams( &p, p + len, &params) ) != 0 || in pk_parse_key_sec1_der()
918 ( ret = pk_use_ecparams( &params, &eck->grp ) ) != 0 ) in pk_parse_key_sec1_der()
921 return( ret ); in pk_parse_key_sec1_der()
924 else if( ret != MBEDTLS_ERR_ASN1_UNEXPECTED_TAG ) in pk_parse_key_sec1_der()
927 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_parse_key_sec1_der()
937 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, in pk_parse_key_sec1_der()
942 if( ( ret = mbedtls_asn1_get_bitstring_null( &p, end2, &len ) ) != 0 ) in pk_parse_key_sec1_der()
943 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_parse_key_sec1_der()
949 if( ( ret = pk_get_ecpubkey( &p, end2, eck ) ) == 0 ) in pk_parse_key_sec1_der()
957 if( ret != MBEDTLS_ERR_ECP_FEATURE_UNAVAILABLE ) in pk_parse_key_sec1_der()
961 else if( ret != MBEDTLS_ERR_ASN1_UNEXPECTED_TAG ) in pk_parse_key_sec1_der()
964 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_parse_key_sec1_der()
969 ( ret = mbedtls_ecp_mul( &eck->grp, &eck->Q, &eck->d, &eck->grp.G, in pk_parse_key_sec1_der()
973 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_parse_key_sec1_der()
976 if( ( ret = mbedtls_ecp_check_privkey( &eck->grp, &eck->d ) ) != 0 ) in pk_parse_key_sec1_der()
979 return( ret ); in pk_parse_key_sec1_der()
1004 int ret, version; in pk_parse_key_pkcs8_unencrypted_der() local
1028 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, in pk_parse_key_pkcs8_unencrypted_der()
1031 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_parse_key_pkcs8_unencrypted_der()
1036 if( ( ret = mbedtls_asn1_get_int( &p, end, &version ) ) != 0 ) in pk_parse_key_pkcs8_unencrypted_der()
1037 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_parse_key_pkcs8_unencrypted_der()
1040 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_VERSION, ret ) ); in pk_parse_key_pkcs8_unencrypted_der()
1042 if( ( ret = pk_get_pk_alg( &p, end, &pk_alg, &params ) ) != 0 ) in pk_parse_key_pkcs8_unencrypted_der()
1044 return( ret ); in pk_parse_key_pkcs8_unencrypted_der()
1047 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, MBEDTLS_ASN1_OCTET_STRING ) ) != 0 ) in pk_parse_key_pkcs8_unencrypted_der()
1048 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_parse_key_pkcs8_unencrypted_der()
1057 if( ( ret = mbedtls_pk_setup( pk, pk_info ) ) != 0 ) in pk_parse_key_pkcs8_unencrypted_der()
1058 return( ret ); in pk_parse_key_pkcs8_unencrypted_der()
1063 if( ( ret = pk_parse_key_pkcs1_der( mbedtls_pk_rsa( *pk ), p, len ) ) != 0 ) in pk_parse_key_pkcs8_unencrypted_der()
1066 return( ret ); in pk_parse_key_pkcs8_unencrypted_der()
1073 if( ( ret = pk_use_ecparams( &params, &mbedtls_pk_ec( *pk )->grp ) ) != 0 || in pk_parse_key_pkcs8_unencrypted_der()
1074 ( ret = pk_parse_key_sec1_der( mbedtls_pk_ec( *pk ), p, len ) ) != 0 ) in pk_parse_key_pkcs8_unencrypted_der()
1077 return( ret ); in pk_parse_key_pkcs8_unencrypted_der()
1101 int ret, decrypted = 0; in pk_parse_key_pkcs8_encrypted_der() local
1132 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, in pk_parse_key_pkcs8_encrypted_der()
1135 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_parse_key_pkcs8_encrypted_der()
1140 if( ( ret = mbedtls_asn1_get_alg( &p, end, &pbe_alg_oid, &pbe_params ) ) != 0 ) in pk_parse_key_pkcs8_encrypted_der()
1141 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_parse_key_pkcs8_encrypted_der()
1143 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, MBEDTLS_ASN1_OCTET_STRING ) ) != 0 ) in pk_parse_key_pkcs8_encrypted_der()
1144 return( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_KEY_INVALID_FORMAT, ret ) ); in pk_parse_key_pkcs8_encrypted_der()
1154 if( ( ret = mbedtls_pkcs12_pbe( &pbe_params, MBEDTLS_PKCS12_PBE_DECRYPT, in pk_parse_key_pkcs8_encrypted_der()
1158 if( ret == MBEDTLS_ERR_PKCS12_PASSWORD_MISMATCH ) in pk_parse_key_pkcs8_encrypted_der()
1161 return( ret ); in pk_parse_key_pkcs8_encrypted_der()
1168 if( ( ret = mbedtls_pkcs12_pbe_sha1_rc4_128( &pbe_params, in pk_parse_key_pkcs8_encrypted_der()
1173 return( ret ); in pk_parse_key_pkcs8_encrypted_der()
1189 if( ( ret = mbedtls_pkcs5_pbes2( &pbe_params, MBEDTLS_PKCS5_DECRYPT, pwd, pwdlen, in pk_parse_key_pkcs8_encrypted_der()
1192 if( ret == MBEDTLS_ERR_PKCS5_PASSWORD_MISMATCH ) in pk_parse_key_pkcs8_encrypted_der()
1195 return( ret ); in pk_parse_key_pkcs8_encrypted_der()
1220 int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED; in mbedtls_pk_parse_key() local
1238 ret = MBEDTLS_ERR_PEM_NO_HEADER_FOOTER_PRESENT; in mbedtls_pk_parse_key()
1240 ret = mbedtls_pem_read_buffer( &pem, in mbedtls_pk_parse_key()
1245 if( ret == 0 ) in mbedtls_pk_parse_key()
1248 if( ( ret = mbedtls_pk_setup( pk, pk_info ) ) != 0 || in mbedtls_pk_parse_key()
1249 ( ret = pk_parse_key_pkcs1_der( mbedtls_pk_rsa( *pk ), in mbedtls_pk_parse_key()
1256 return( ret ); in mbedtls_pk_parse_key()
1258 else if( ret == MBEDTLS_ERR_PEM_PASSWORD_MISMATCH ) in mbedtls_pk_parse_key()
1260 else if( ret == MBEDTLS_ERR_PEM_PASSWORD_REQUIRED ) in mbedtls_pk_parse_key()
1262 else if( ret != MBEDTLS_ERR_PEM_NO_HEADER_FOOTER_PRESENT ) in mbedtls_pk_parse_key()
1263 return( ret ); in mbedtls_pk_parse_key()
1269 ret = MBEDTLS_ERR_PEM_NO_HEADER_FOOTER_PRESENT; in mbedtls_pk_parse_key()
1271 ret = mbedtls_pem_read_buffer( &pem, in mbedtls_pk_parse_key()
1275 if( ret == 0 ) in mbedtls_pk_parse_key()
1279 if( ( ret = mbedtls_pk_setup( pk, pk_info ) ) != 0 || in mbedtls_pk_parse_key()
1280 ( ret = pk_parse_key_sec1_der( mbedtls_pk_ec( *pk ), in mbedtls_pk_parse_key()
1287 return( ret ); in mbedtls_pk_parse_key()
1289 else if( ret == MBEDTLS_ERR_PEM_PASSWORD_MISMATCH ) in mbedtls_pk_parse_key()
1291 else if( ret == MBEDTLS_ERR_PEM_PASSWORD_REQUIRED ) in mbedtls_pk_parse_key()
1293 else if( ret != MBEDTLS_ERR_PEM_NO_HEADER_FOOTER_PRESENT ) in mbedtls_pk_parse_key()
1294 return( ret ); in mbedtls_pk_parse_key()
1299 ret = MBEDTLS_ERR_PEM_NO_HEADER_FOOTER_PRESENT; in mbedtls_pk_parse_key()
1301 ret = mbedtls_pem_read_buffer( &pem, in mbedtls_pk_parse_key()
1305 if( ret == 0 ) in mbedtls_pk_parse_key()
1307 if( ( ret = pk_parse_key_pkcs8_unencrypted_der( pk, in mbedtls_pk_parse_key()
1314 return( ret ); in mbedtls_pk_parse_key()
1316 else if( ret != MBEDTLS_ERR_PEM_NO_HEADER_FOOTER_PRESENT ) in mbedtls_pk_parse_key()
1317 return( ret ); in mbedtls_pk_parse_key()
1322 ret = MBEDTLS_ERR_PEM_NO_HEADER_FOOTER_PRESENT; in mbedtls_pk_parse_key()
1324 ret = mbedtls_pem_read_buffer( &pem, in mbedtls_pk_parse_key()
1328 if( ret == 0 ) in mbedtls_pk_parse_key()
1330 if( ( ret = pk_parse_key_pkcs8_encrypted_der( pk, in mbedtls_pk_parse_key()
1338 return( ret ); in mbedtls_pk_parse_key()
1340 else if( ret != MBEDTLS_ERR_PEM_NO_HEADER_FOOTER_PRESENT ) in mbedtls_pk_parse_key()
1341 return( ret ); in mbedtls_pk_parse_key()
1364 ret = pk_parse_key_pkcs8_encrypted_der( pk, key_copy, keylen, in mbedtls_pk_parse_key()
1371 if( ret == 0 ) in mbedtls_pk_parse_key()
1377 if( ret == MBEDTLS_ERR_PK_PASSWORD_MISMATCH ) in mbedtls_pk_parse_key()
1379 return( ret ); in mbedtls_pk_parse_key()
1383 if( ( ret = pk_parse_key_pkcs8_unencrypted_der( pk, key, keylen ) ) == 0 ) in mbedtls_pk_parse_key()
1432 int ret = MBEDTLS_ERR_ERROR_CORRUPTION_DETECTED; in mbedtls_pk_parse_public_key() local
1452 ret = MBEDTLS_ERR_PEM_NO_HEADER_FOOTER_PRESENT; in mbedtls_pk_parse_public_key()
1454 ret = mbedtls_pem_read_buffer( &pem, in mbedtls_pk_parse_public_key()
1459 if( ret == 0 ) in mbedtls_pk_parse_public_key()
1465 if( ( ret = mbedtls_pk_setup( ctx, pk_info ) ) != 0 ) in mbedtls_pk_parse_public_key()
1466 return( ret ); in mbedtls_pk_parse_public_key()
1468 if ( ( ret = pk_get_rsapubkey( &p, p + pem.buflen, mbedtls_pk_rsa( *ctx ) ) ) != 0 ) in mbedtls_pk_parse_public_key()
1472 return( ret ); in mbedtls_pk_parse_public_key()
1474 else if( ret != MBEDTLS_ERR_PEM_NO_HEADER_FOOTER_PRESENT ) in mbedtls_pk_parse_public_key()
1477 return( ret ); in mbedtls_pk_parse_public_key()
1483 ret = MBEDTLS_ERR_PEM_NO_HEADER_FOOTER_PRESENT; in mbedtls_pk_parse_public_key()
1485 ret = mbedtls_pem_read_buffer( &pem, in mbedtls_pk_parse_public_key()
1490 if( ret == 0 ) in mbedtls_pk_parse_public_key()
1497 ret = mbedtls_pk_parse_subpubkey( &p, p + pem.buflen, ctx ); in mbedtls_pk_parse_public_key()
1499 return( ret ); in mbedtls_pk_parse_public_key()
1501 else if( ret != MBEDTLS_ERR_PEM_NO_HEADER_FOOTER_PRESENT ) in mbedtls_pk_parse_public_key()
1504 return( ret ); in mbedtls_pk_parse_public_key()
1513 if( ( ret = mbedtls_pk_setup( ctx, pk_info ) ) != 0 ) in mbedtls_pk_parse_public_key()
1514 return( ret ); in mbedtls_pk_parse_public_key()
1517 ret = pk_get_rsapubkey( &p, p + keylen, mbedtls_pk_rsa( *ctx ) ); in mbedtls_pk_parse_public_key()
1518 if( ret == 0 ) in mbedtls_pk_parse_public_key()
1520 return( ret ); in mbedtls_pk_parse_public_key()
1523 if( ret != ( MBEDTLS_ERROR_ADD( MBEDTLS_ERR_PK_INVALID_PUBKEY, in mbedtls_pk_parse_public_key()
1526 return( ret ); in mbedtls_pk_parse_public_key()
1531 ret = mbedtls_pk_parse_subpubkey( &p, p + keylen, ctx ); in mbedtls_pk_parse_public_key()
1533 return( ret ); in mbedtls_pk_parse_public_key()