diff --git a/tests/scripts/components-configuration-tls.sh b/tests/scripts/components-configuration-tls.sh index 55135062ce..380334cb7e 100644 --- a/tests/scripts/components-configuration-tls.sh +++ b/tests/scripts/components-configuration-tls.sh @@ -270,6 +270,72 @@ component_test_tls1_2_ccm_psk_psa () { tests/compat.sh -m tls12 -f '^TLS_PSK_WITH_AES_..._CCM_8' } +component_test_tls1_2_ccm_psk_dtls_legacy () { + msg "build: configs/config-ccm-psk-dtls1_2.h" + cp configs/config-ccm-psk-dtls1_2.h "$CONFIG_H" + # test-ref-configs works by overwriting mbedtls_config.h; this makes cmake + # want to re-generate generated files that depend on it, quite correctly. + # However this doesn't work as the generation script expects a specific + # format for mbedtls_config.h, which the other files don't follow. Also, + # cmake can't know this, but re-generation is actually not necessary as + # the generated files only depend on the list of available options, not + # whether they're on or off. So, disable cmake's (over-sensitive here) + # dependency resolution for generated files and just rely on them being + # present (thanks to pre_generate_files) by turning GEN_FILES off. + CC=$ASAN_CC cmake -D GEN_FILES=Off -D CMAKE_BUILD_TYPE:String=Asan . + make + + msg "test: configs/config-ccm-psk-dtls1_2.h - unit tests" + make test + + msg "test: configs/config-ccm-psk-dtls1_2.h - compat.sh" + tests/compat.sh -m dtls12 -f '^TLS_PSK_WITH_AES_..._CCM_8' + + msg "build: configs/config-ccm-psk-dtls1_2.h + DEBUG" + MBEDTLS_TEST_CONFIGURATION="$MBEDTLS_TEST_CONFIGURATION+DEBUG" + make clean + scripts/config.py set MBEDTLS_DEBUG_C + scripts/config.py set MBEDTLS_ERROR_C + make ssl-opt + + msg "test: configs/config-ccm-psk-dtls1_2.h + DEBUG - ssl-opt.sh" + tests/ssl-opt.sh +} + +component_test_tls1_2_ccm_psk_dtls_psa () { + msg "build: configs/config-ccm-psk-dtls1_2.h + USE_PSA_CRYPTO" + cp configs/config-ccm-psk-dtls1_2.h "$CONFIG_H" + scripts/config.py set MBEDTLS_PSA_CRYPTO_C + scripts/config.py set MBEDTLS_USE_PSA_CRYPTO + # test-ref-configs works by overwriting mbedtls_config.h; this makes cmake + # want to re-generate generated files that depend on it, quite correctly. + # However this doesn't work as the generation script expects a specific + # format for mbedtls_config.h, which the other files don't follow. Also, + # cmake can't know this, but re-generation is actually not necessary as + # the generated files only depend on the list of available options, not + # whether they're on or off. So, disable cmake's (over-sensitive here) + # dependency resolution for generated files and just rely on them being + # present (thanks to pre_generate_files) by turning GEN_FILES off. + CC=$ASAN_CC cmake -D GEN_FILES=Off -D CMAKE_BUILD_TYPE:String=Asan . + make + + msg "test: configs/config-ccm-psk-dtls1_2.h + USE_PSA_CRYPTO - unit tests" + make test + + msg "test: configs/config-ccm-psk-dtls1_2.h + USE_PSA_CRYPTO - compat.sh" + tests/compat.sh -m dtls12 -f '^TLS_PSK_WITH_AES_..._CCM_8' + + msg "build: configs/config-ccm-psk-dtls1_2.h + USE_PSA_CRYPTO + DEBUG" + MBEDTLS_TEST_CONFIGURATION="$MBEDTLS_TEST_CONFIGURATION+DEBUG" + make clean + scripts/config.py set MBEDTLS_DEBUG_C + scripts/config.py set MBEDTLS_ERROR_C + make ssl-opt + + msg "test: configs/config-ccm-psk-dtls1_2.h + USE_PSA_CRYPTO + DEBUG - ssl-opt.sh" + tests/ssl-opt.sh +} + component_test_small_ssl_out_content_len () { msg "build: small SSL_OUT_CONTENT_LEN (ASan build)" scripts/config.py set MBEDTLS_SSL_IN_CONTENT_LEN 16384 diff --git a/tests/scripts/test-ref-configs.pl b/tests/scripts/test-ref-configs.pl index 92197d7c5e..27620b2c58 100755 --- a/tests/scripts/test-ref-configs.pl +++ b/tests/scripts/test-ref-configs.pl @@ -16,11 +16,6 @@ use warnings; use strict; my %configs = ( - 'config-ccm-psk-dtls1_2.h' => { - 'compat' => '-m dtls12 -f \'^TLS_PSK_WITH_AES_..._CCM_8\'', - 'opt' => ' ', - 'opt_needs_debug' => 1, - }, 'config-suite-b.h' => { 'compat' => "-m tls12 -f 'ECDHE_ECDSA.*AES.*GCM' -p mbedTLS", 'opt' => ' ',