Skip to content

Commit 50f5d77

Browse files
committed
Define mbedtls_ecc_group_to_psa inline for NS world
1 parent 7ba7f88 commit 50f5d77

File tree

2 files changed

+48
-51
lines changed

2 files changed

+48
-51
lines changed

features/mbedtls/inc/psa/crypto_extra.h

Lines changed: 48 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -578,8 +578,54 @@ psa_status_t psa_get_key_domain_parameters(
578578
* (`PSA_ECC_CURVE_xxx`).
579579
* \return \c 0 on failure (\p grpid is not recognized).
580580
*/
581-
psa_ecc_curve_t mbedtls_ecc_group_to_psa( mbedtls_ecp_group_id grpid,
582-
size_t *bits );
581+
static inline psa_ecc_curve_t mbedtls_ecc_group_to_psa( mbedtls_ecp_group_id grpid,
582+
size_t *bits )
583+
{
584+
switch( grpid )
585+
{
586+
case MBEDTLS_ECP_DP_SECP192R1:
587+
*bits = 192;
588+
return( PSA_ECC_CURVE_SECP_R1 );
589+
case MBEDTLS_ECP_DP_SECP224R1:
590+
*bits = 224;
591+
return( PSA_ECC_CURVE_SECP_R1 );
592+
case MBEDTLS_ECP_DP_SECP256R1:
593+
*bits = 256;
594+
return( PSA_ECC_CURVE_SECP_R1 );
595+
case MBEDTLS_ECP_DP_SECP384R1:
596+
*bits = 384;
597+
return( PSA_ECC_CURVE_SECP_R1 );
598+
case MBEDTLS_ECP_DP_SECP521R1:
599+
*bits = 521;
600+
return( PSA_ECC_CURVE_SECP_R1 );
601+
case MBEDTLS_ECP_DP_BP256R1:
602+
*bits = 256;
603+
return( PSA_ECC_CURVE_BRAINPOOL_P_R1 );
604+
case MBEDTLS_ECP_DP_BP384R1:
605+
*bits = 384;
606+
return( PSA_ECC_CURVE_BRAINPOOL_P_R1 );
607+
case MBEDTLS_ECP_DP_BP512R1:
608+
*bits = 512;
609+
return( PSA_ECC_CURVE_BRAINPOOL_P_R1 );
610+
case MBEDTLS_ECP_DP_CURVE25519:
611+
*bits = 255;
612+
return( PSA_ECC_CURVE_MONTGOMERY );
613+
case MBEDTLS_ECP_DP_SECP192K1:
614+
*bits = 192;
615+
return( PSA_ECC_CURVE_SECP_K1 );
616+
case MBEDTLS_ECP_DP_SECP224K1:
617+
*bits = 224;
618+
return( PSA_ECC_CURVE_SECP_K1 );
619+
case MBEDTLS_ECP_DP_SECP256K1:
620+
*bits = 256;
621+
return( PSA_ECC_CURVE_SECP_K1 );
622+
case MBEDTLS_ECP_DP_CURVE448:
623+
*bits = 448;
624+
return( PSA_ECC_CURVE_MONTGOMERY );
625+
default:
626+
return( 0 );
627+
}
628+
}
583629

584630
/** Convert an ECC curve identifier from the PSA encoding to Mbed TLS.
585631
*

features/mbedtls/platform/COMPONENT_PSA_SRV_IMPL/psa_crypto.c

Lines changed: 0 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -375,55 +375,6 @@ static inline int psa_key_slot_is_external( const psa_key_slot_t *slot )
375375
#endif /* MBEDTLS_PSA_CRYPTO_SE_C */
376376

377377
#if defined(MBEDTLS_ECP_C)
378-
psa_ecc_curve_t mbedtls_ecc_group_to_psa( mbedtls_ecp_group_id grpid,
379-
size_t *bits )
380-
{
381-
switch( grpid )
382-
{
383-
case MBEDTLS_ECP_DP_SECP192R1:
384-
*bits = 192;
385-
return( PSA_ECC_CURVE_SECP_R1 );
386-
case MBEDTLS_ECP_DP_SECP224R1:
387-
*bits = 224;
388-
return( PSA_ECC_CURVE_SECP_R1 );
389-
case MBEDTLS_ECP_DP_SECP256R1:
390-
*bits = 256;
391-
return( PSA_ECC_CURVE_SECP_R1 );
392-
case MBEDTLS_ECP_DP_SECP384R1:
393-
*bits = 384;
394-
return( PSA_ECC_CURVE_SECP_R1 );
395-
case MBEDTLS_ECP_DP_SECP521R1:
396-
*bits = 521;
397-
return( PSA_ECC_CURVE_SECP_R1 );
398-
case MBEDTLS_ECP_DP_BP256R1:
399-
*bits = 256;
400-
return( PSA_ECC_CURVE_BRAINPOOL_P_R1 );
401-
case MBEDTLS_ECP_DP_BP384R1:
402-
*bits = 384;
403-
return( PSA_ECC_CURVE_BRAINPOOL_P_R1 );
404-
case MBEDTLS_ECP_DP_BP512R1:
405-
*bits = 512;
406-
return( PSA_ECC_CURVE_BRAINPOOL_P_R1 );
407-
case MBEDTLS_ECP_DP_CURVE25519:
408-
*bits = 255;
409-
return( PSA_ECC_CURVE_MONTGOMERY );
410-
case MBEDTLS_ECP_DP_SECP192K1:
411-
*bits = 192;
412-
return( PSA_ECC_CURVE_SECP_K1 );
413-
case MBEDTLS_ECP_DP_SECP224K1:
414-
*bits = 224;
415-
return( PSA_ECC_CURVE_SECP_K1 );
416-
case MBEDTLS_ECP_DP_SECP256K1:
417-
*bits = 256;
418-
return( PSA_ECC_CURVE_SECP_K1 );
419-
case MBEDTLS_ECP_DP_CURVE448:
420-
*bits = 448;
421-
return( PSA_ECC_CURVE_MONTGOMERY );
422-
default:
423-
return( 0 );
424-
}
425-
}
426-
427378
mbedtls_ecp_group_id mbedtls_ecc_group_of_psa( psa_ecc_curve_t curve,
428379
size_t byte_length )
429380
{

0 commit comments

Comments
 (0)