From ef2adc3e464d9b774794b23bbd0d591ba32e998c Mon Sep 17 00:00:00 2001 From: Moritz Warning Date: Wed, 29 May 2024 09:16:08 +0200 Subject: [PATCH] mbedtls: fix compilation with 3.0.0 Signed-off-by: Moritz Warning --- gatling.h | 5 +++++ pssl.c | 23 +++++++++++++++++++---- 2 files changed, 24 insertions(+), 4 deletions(-) --- a/gatling.h +++ b/gatling.h @@ -112,7 +112,12 @@ extern int init_serverside_tls(SSL** ssl #ifdef USE_POLARSSL /* in pssl.c */ +#include "mbedtls/version.h" +#if (MBEDTLS_VERSION_NUMBER >= 0x03000000) +#include +#else #include +#endif #include #include #include --- a/pssl.c +++ b/pssl.c @@ -6,12 +6,18 @@ #include #include #include +#include +#if (MBEDTLS_VERSION_NUMBER >= 0x03000000) +#include +#include +#else #include +#include +#endif #include #include #include #include -#include #include #include #include @@ -56,7 +62,9 @@ int ciphersuites[] = MBEDTLS_TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA, MBEDTLS_TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA256, MBEDTLS_TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA, +#if (MBEDTLS_VERSION_NUMBER < 0x03000000) MBEDTLS_TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA, +#endif MBEDTLS_TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, MBEDTLS_TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, MBEDTLS_TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, @@ -73,7 +81,9 @@ int ciphersuites[] = MBEDTLS_TLS_RSA_WITH_AES_128_CBC_SHA, MBEDTLS_TLS_RSA_WITH_CAMELLIA_128_CBC_SHA256, MBEDTLS_TLS_RSA_WITH_CAMELLIA_128_CBC_SHA, +#if (MBEDTLS_VERSION_NUMBER < 0x03000000) MBEDTLS_TLS_RSA_WITH_3DES_EDE_CBC_SHA, +#endif // TLS_RSA_WITH_RC4_128_SHA, // TLS_RSA_WITH_RC4_128_MD5, 0 @@ -85,7 +95,12 @@ static int parse_cert( const char* filen mbedtls_pk_init(key); if ((r=mbedtls_x509_crt_parse_file(srvcert,filename)) || - (r=mbedtls_pk_parse_keyfile(key,filename,NULL))) +#if (MBEDTLS_VERSION_NUMBER >= 0x03000000) + (r=mbedtls_pk_parse_keyfile(key,filename,NULL,mbedtls_psa_get_random,NULL)) +#else + (r=mbedtls_pk_parse_keyfile(key,filename,NULL)) +#endif + ) return r; return 0; } @@ -179,7 +194,7 @@ int init_serverside_tls(struct ssl_data* mbedtls_ssl_conf_dh_param_ctx(&d->conf, &d->dhm); // debug_set_threshold(65535); - mbedtls_ssl_conf_min_version(&d->conf, MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1); /* demand at least TLS 1.0 */ + mbedtls_ssl_conf_min_version(&d->conf, MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3); /* demand at least TLS 1.2 */ // ssl_set_dh_param( ssl, "CD95C1B9959B0A135B9D306D53A87518E8ED3EA8CBE6E3A338D9DD3167889FC809FE1AD59B38C98D1A8FCE47E46DF5FB56B8EA3B03B2132C249A99209F62A1AD63511BD08A60655B0463B6F1BB79BEC9D17C71BD269C6B50CF0EDDAAB83290B4C697A7F641FBD21EE0E7B57C698AFEED8DA3AB800525E6887215A61CA62DC437", "04" ); if ((r=mbedtls_ssl_setup(&d->ssl,&d->conf))) @@ -210,7 +225,7 @@ int init_clientside_tls(struct ssl_data* mbedtls_ssl_conf_ca_chain( &d->conf, d->crt.next, NULL ); mbedtls_ssl_conf_rng( &d->conf, mbedtls_ctr_drbg_random, &ctr_drbg ); mbedtls_ssl_conf_dbg( &d->conf, my_debug, NULL ); - mbedtls_ssl_conf_min_version(&d->conf, MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_1); /* demand at least TLS 1.0 */ + mbedtls_ssl_conf_min_version(&d->conf, MBEDTLS_SSL_MAJOR_VERSION_3, MBEDTLS_SSL_MINOR_VERSION_3); /* demand at least TLS 1.2 */ if ((r=mbedtls_ssl_setup(&d->ssl,&d->conf))) return r; if ((r=mbedtls_ssl_set_hostname(&d->ssl, hostname)))