Make use of copy-less CRT parsing API in ssl_client2/ssl_server2
diff --git a/programs/ssl/ssl_client2.c b/programs/ssl/ssl_client2.c
index 3f77b1a..eb62fb2 100644
--- a/programs/ssl/ssl_client2.c
+++ b/programs/ssl/ssl_client2.c
@@ -1789,7 +1789,7 @@
#endif /* MBEDTLS_PEM_PARSE_C */
for( i = 0; mbedtls_test_cas_der[i] != NULL; i++ )
{
- ret = mbedtls_x509_crt_parse_der( cacert,
+ ret = mbedtls_x509_crt_parse_der_nocopy( cacert,
(const unsigned char *) mbedtls_test_cas_der[i],
mbedtls_test_cas_der_len[i] );
if( ret != 0 )
@@ -1828,10 +1828,16 @@
else
#endif
#if defined(MBEDTLS_CERTS_C)
- ret = mbedtls_x509_crt_parse( &clicert,
+#if defined(MBEDTLS_PEM_PARSE_C)
+ ret = mbedtls_x509_crt_parse( clicert,
(const unsigned char *) mbedtls_test_cli_crt,
mbedtls_test_cli_crt_len );
#else
+ ret = mbedtls_x509_crt_parse_der_nocopy( clicert,
+ (const unsigned char *) mbedtls_test_cli_crt,
+ mbedtls_test_cli_crt_len );
+#endif
+#else
{
ret = 1;
mbedtls_printf( "MBEDTLS_CERTS_C not defined." );
diff --git a/programs/ssl/ssl_server2.c b/programs/ssl/ssl_server2.c
index 64d889d..aaec434 100644
--- a/programs/ssl/ssl_server2.c
+++ b/programs/ssl/ssl_server2.c
@@ -2545,7 +2545,7 @@
#endif /* MBEDTLS_PEM_PARSE_C */
for( i = 0; mbedtls_test_cas_der[i] != NULL; i++ )
{
- ret = mbedtls_x509_crt_parse_der( cacert,
+ ret = mbedtls_x509_crt_parse_der_nocopy( cacert,
(const unsigned char *) mbedtls_test_cas_der[i],
mbedtls_test_cas_der_len[i] );
if( ret != 0 )