Lines Matching refs:p

184 static int pk_get_ecparams( unsigned char **p, const unsigned char *end,  in pk_get_ecparams()  argument
189 if ( end - *p < 1 ) in pk_get_ecparams()
194 params->tag = **p; in pk_get_ecparams()
205 if( ( ret = mbedtls_asn1_get_tag( p, end, &params->len, params->tag ) ) != 0 ) in pk_get_ecparams()
210 params->p = *p; in pk_get_ecparams()
211 *p += params->len; in pk_get_ecparams()
213 if( *p != end ) in pk_get_ecparams()
243 unsigned char *p = params->p; in pk_group_from_specified() local
244 const unsigned char * const end = params->p + params->len; in pk_group_from_specified()
250 if( ( ret = mbedtls_asn1_get_int( &p, end, &ver ) ) != 0 ) in pk_group_from_specified()
262 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, in pk_group_from_specified()
266 end_field = p + len; in pk_group_from_specified()
276 if( ( ret = mbedtls_asn1_get_tag( &p, end_field, &len, MBEDTLS_ASN1_OID ) ) != 0 ) in pk_group_from_specified()
280 memcmp( p, MBEDTLS_OID_ANSI_X9_62_PRIME_FIELD, len ) != 0 ) in pk_group_from_specified()
285 p += len; in pk_group_from_specified()
288 if( ( ret = mbedtls_asn1_get_mpi( &p, end_field, &grp->P ) ) != 0 ) in pk_group_from_specified()
293 if( p != end_field ) in pk_group_from_specified()
306 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, in pk_group_from_specified()
310 end_curve = p + len; in pk_group_from_specified()
316 if( ( ret = mbedtls_asn1_get_tag( &p, end_curve, &len, MBEDTLS_ASN1_OCTET_STRING ) ) != 0 || in pk_group_from_specified()
317 ( ret = mbedtls_mpi_read_binary( &grp->A, p, len ) ) != 0 ) in pk_group_from_specified()
322 p += len; in pk_group_from_specified()
324 if( ( ret = mbedtls_asn1_get_tag( &p, end_curve, &len, MBEDTLS_ASN1_OCTET_STRING ) ) != 0 || in pk_group_from_specified()
325 ( ret = mbedtls_mpi_read_binary( &grp->B, p, len ) ) != 0 ) in pk_group_from_specified()
330 p += len; in pk_group_from_specified()
333 if( ( ret = mbedtls_asn1_get_tag( &p, end_curve, &len, MBEDTLS_ASN1_BIT_STRING ) ) == 0 ) in pk_group_from_specified()
334 p += len; in pk_group_from_specified()
336 if( p != end_curve ) in pk_group_from_specified()
343 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, MBEDTLS_ASN1_OCTET_STRING ) ) != 0 ) in pk_group_from_specified()
347 ( const unsigned char *) p, len ) ) != 0 ) in pk_group_from_specified()
354 ( p[0] != 0x02 && p[0] != 0x03 ) || in pk_group_from_specified()
356 mbedtls_mpi_read_binary( &grp->G.X, p + 1, len - 1 ) != 0 || in pk_group_from_specified()
357 mbedtls_mpi_lset( &grp->G.Y, p[0] - 2 ) != 0 || in pk_group_from_specified()
364 p += len; in pk_group_from_specified()
369 if( ( ret = mbedtls_asn1_get_mpi( &p, end, &grp->N ) ) != 0 ) in pk_group_from_specified()
496 static int pk_get_ecpubkey( unsigned char **p, const unsigned char *end, in pk_get_ecpubkey() argument
502 (const unsigned char *) *p, end - *p ) ) == 0 ) in pk_get_ecpubkey()
510 *p = (unsigned char *) end; in pk_get_ecpubkey()
523 static int pk_get_rsapubkey( unsigned char **p, in pk_get_rsapubkey() argument
530 if( ( ret = mbedtls_asn1_get_tag( p, end, &len, in pk_get_rsapubkey()
534 if( *p + len != end ) in pk_get_rsapubkey()
539 if( ( ret = mbedtls_asn1_get_tag( p, end, &len, MBEDTLS_ASN1_INTEGER ) ) != 0 ) in pk_get_rsapubkey()
542 if( ( ret = mbedtls_rsa_import_raw( rsa, *p, len, NULL, 0, NULL, 0, in pk_get_rsapubkey()
546 *p += len; in pk_get_rsapubkey()
549 if( ( ret = mbedtls_asn1_get_tag( p, end, &len, MBEDTLS_ASN1_INTEGER ) ) != 0 ) in pk_get_rsapubkey()
553 NULL, 0, *p, len ) ) != 0 ) in pk_get_rsapubkey()
556 *p += len; in pk_get_rsapubkey()
564 if( *p != end ) in pk_get_rsapubkey()
578 static int pk_get_pk_alg( unsigned char **p, in pk_get_pk_alg() argument
587 if( ( ret = mbedtls_asn1_get_alg( p, end, &alg_oid, params ) ) != 0 ) in pk_get_pk_alg()
611 int mbedtls_pk_parse_subpubkey( unsigned char **p, const unsigned char *end, in mbedtls_pk_parse_subpubkey() argument
620 PK_VALIDATE_RET( p != NULL ); in mbedtls_pk_parse_subpubkey()
621 PK_VALIDATE_RET( *p != NULL ); in mbedtls_pk_parse_subpubkey()
625 if( ( ret = mbedtls_asn1_get_tag( p, end, &len, in mbedtls_pk_parse_subpubkey()
631 end = *p + len; in mbedtls_pk_parse_subpubkey()
633 if( ( ret = pk_get_pk_alg( p, end, &pk_alg, &alg_params ) ) != 0 ) in mbedtls_pk_parse_subpubkey()
636 if( ( ret = mbedtls_asn1_get_bitstring_null( p, end, &len ) ) != 0 ) in mbedtls_pk_parse_subpubkey()
639 if( *p + len != end ) in mbedtls_pk_parse_subpubkey()
652 ret = pk_get_rsapubkey( p, end, mbedtls_pk_rsa( *pk ) ); in mbedtls_pk_parse_subpubkey()
660 ret = pk_get_ecpubkey( p, end, mbedtls_pk_ec( *pk ) ); in mbedtls_pk_parse_subpubkey()
665 if( ret == 0 && *p != end ) in mbedtls_pk_parse_subpubkey()
686 static int asn1_get_nonzero_mpi( unsigned char **p, in asn1_get_nonzero_mpi() argument
692 ret = mbedtls_asn1_get_mpi( p, end, X ); in asn1_get_nonzero_mpi()
711 unsigned char *p, *end; in pk_parse_key_pkcs1_der() local
716 p = (unsigned char *) key; in pk_parse_key_pkcs1_der()
717 end = p + keylen; in pk_parse_key_pkcs1_der()
735 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, in pk_parse_key_pkcs1_der()
741 end = p + len; in pk_parse_key_pkcs1_der()
743 if( ( ret = mbedtls_asn1_get_int( &p, end, &version ) ) != 0 ) in pk_parse_key_pkcs1_der()
754 if( ( ret = asn1_get_nonzero_mpi( &p, end, &T ) ) != 0 || in pk_parse_key_pkcs1_der()
760 if( ( ret = asn1_get_nonzero_mpi( &p, end, &T ) ) != 0 || in pk_parse_key_pkcs1_der()
766 if( ( ret = asn1_get_nonzero_mpi( &p, end, &T ) ) != 0 || in pk_parse_key_pkcs1_der()
772 if( ( ret = asn1_get_nonzero_mpi( &p, end, &T ) ) != 0 || in pk_parse_key_pkcs1_der()
778 if( ( ret = asn1_get_nonzero_mpi( &p, end, &T ) ) != 0 || in pk_parse_key_pkcs1_der()
796 if( ( ret = asn1_get_nonzero_mpi( &p, end, &T ) ) != 0 || in pk_parse_key_pkcs1_der()
801 if( ( ret = asn1_get_nonzero_mpi( &p, end, &T ) ) != 0 || in pk_parse_key_pkcs1_der()
806 if( ( ret = asn1_get_nonzero_mpi( &p, end, &T ) ) != 0 || in pk_parse_key_pkcs1_der()
812 if( ( 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()
814 ( ret = asn1_get_nonzero_mpi( &p, end, &T ) ) != 0 ) in pk_parse_key_pkcs1_der()
833 if( p != end ) in pk_parse_key_pkcs1_der()
870 unsigned char *p = (unsigned char *) key; in pk_parse_key_sec1_der() local
871 unsigned char *end = p + keylen; in pk_parse_key_sec1_der()
884 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, in pk_parse_key_sec1_der()
890 end = p + len; in pk_parse_key_sec1_der()
892 if( ( ret = mbedtls_asn1_get_int( &p, end, &version ) ) != 0 ) in pk_parse_key_sec1_der()
898 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, MBEDTLS_ASN1_OCTET_STRING ) ) != 0 ) in pk_parse_key_sec1_der()
901 if( ( ret = mbedtls_mpi_read_binary( &eck->d, p, len ) ) != 0 ) in pk_parse_key_sec1_der()
907 p += len; in pk_parse_key_sec1_der()
910 if( p != end ) in pk_parse_key_sec1_der()
915 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, in pk_parse_key_sec1_der()
918 if( ( ret = pk_get_ecparams( &p, p + len, &params) ) != 0 || in pk_parse_key_sec1_der()
932 if( p != end ) in pk_parse_key_sec1_der()
938 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, in pk_parse_key_sec1_der()
941 end2 = p + len; in pk_parse_key_sec1_der()
943 if( ( ret = mbedtls_asn1_get_bitstring_null( &p, end2, &len ) ) != 0 ) in pk_parse_key_sec1_der()
946 if( p + len != end2 ) in pk_parse_key_sec1_der()
950 if( ( ret = pk_get_ecpubkey( &p, end2, eck ) ) == 0 ) in pk_parse_key_sec1_der()
1008 unsigned char *p = (unsigned char *) key; in pk_parse_key_pkcs8_unencrypted_der() local
1009 unsigned char *end = p + keylen; in pk_parse_key_pkcs8_unencrypted_der()
1034 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, in pk_parse_key_pkcs8_unencrypted_der()
1040 end = p + len; in pk_parse_key_pkcs8_unencrypted_der()
1042 if( ( ret = mbedtls_asn1_get_int( &p, end, &version ) ) != 0 ) in pk_parse_key_pkcs8_unencrypted_der()
1048 if( ( ret = pk_get_pk_alg( &p, end, &pk_alg, &params ) ) != 0 ) in pk_parse_key_pkcs8_unencrypted_der()
1053 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, MBEDTLS_ASN1_OCTET_STRING ) ) != 0 ) in pk_parse_key_pkcs8_unencrypted_der()
1069 if( ( ret = pk_parse_key_pkcs1_der( mbedtls_pk_rsa( *pk ), p, len ) ) != 0 ) in pk_parse_key_pkcs8_unencrypted_der()
1080 ( ret = pk_parse_key_sec1_der( mbedtls_pk_ec( *pk ), p, len, f_rng, p_rng ) ) != 0 ) in pk_parse_key_pkcs8_unencrypted_der()
1111 unsigned char *p, *end; in pk_parse_key_pkcs8_encrypted_der() local
1118 p = key; in pk_parse_key_pkcs8_encrypted_der()
1119 end = p + keylen; in pk_parse_key_pkcs8_encrypted_der()
1139 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, in pk_parse_key_pkcs8_encrypted_der()
1145 end = p + len; in pk_parse_key_pkcs8_encrypted_der()
1147 if( ( ret = mbedtls_asn1_get_alg( &p, end, &pbe_alg_oid, &pbe_params ) ) != 0 ) in pk_parse_key_pkcs8_encrypted_der()
1150 if( ( ret = mbedtls_asn1_get_tag( &p, end, &len, MBEDTLS_ASN1_OCTET_STRING ) ) != 0 ) in pk_parse_key_pkcs8_encrypted_der()
1153 buf = p; in pk_parse_key_pkcs8_encrypted_der()
1163 pwd, pwdlen, p, len, buf ) ) != 0 ) in pk_parse_key_pkcs8_encrypted_der()
1179 p, len, buf ) ) != 0 ) in pk_parse_key_pkcs8_encrypted_der()
1426 unsigned char *p; in mbedtls_pk_parse_public_key() local
1454 p = pem.buf; in mbedtls_pk_parse_public_key()
1461 if ( ( ret = pk_get_rsapubkey( &p, p + pem.buflen, mbedtls_pk_rsa( *ctx ) ) ) != 0 ) in mbedtls_pk_parse_public_key()
1488 p = pem.buf; in mbedtls_pk_parse_public_key()
1490 ret = mbedtls_pk_parse_subpubkey( &p, p + pem.buflen, ctx ); in mbedtls_pk_parse_public_key()
1509 p = (unsigned char *)key; in mbedtls_pk_parse_public_key()
1510 ret = pk_get_rsapubkey( &p, p + keylen, mbedtls_pk_rsa( *ctx ) ); in mbedtls_pk_parse_public_key()
1522 p = (unsigned char *) key; in mbedtls_pk_parse_public_key()
1524 ret = mbedtls_pk_parse_subpubkey( &p, p + keylen, ctx ); in mbedtls_pk_parse_public_key()