From 0d8287c062ff092b03daa25a4848f595eb977f1c Mon Sep 17 00:00:00 2001 From: David Horstmann Date: Fri, 26 Jul 2024 18:01:04 +0100 Subject: [PATCH] Align tests/src and include/src with 3.6 version Allow tests/src and include/src to be Mbed TLS version-agnostic by: * Sometimes accepting both an MBEDTLS_ and a PSA_ config option * Sometimes using the version number to gate alternatives Signed-off-by: David Horstmann --- tests/include/test/psa_crypto_helpers.h | 7 +++++-- tests/src/drivers/hash.c | 4 ++++ tests/src/drivers/test_driver_aead.c | 4 ++++ tests/src/drivers/test_driver_asymmetric_encryption.c | 4 ++++ tests/src/drivers/test_driver_cipher.c | 4 ++++ tests/src/drivers/test_driver_key_agreement.c | 6 ++++++ tests/src/drivers/test_driver_key_management.c | 6 ++++++ tests/src/drivers/test_driver_mac.c | 4 ++++ tests/src/drivers/test_driver_pake.c | 4 ++++ tests/src/drivers/test_driver_signature.c | 6 ++++++ tests/src/psa_exercise_key.c | 6 ++++-- 11 files changed, 51 insertions(+), 4 deletions(-) diff --git a/tests/include/test/psa_crypto_helpers.h b/tests/include/test/psa_crypto_helpers.h index 30f2e0f535..233dbe6ad3 100644 --- a/tests/include/test/psa_crypto_helpers.h +++ b/tests/include/test/psa_crypto_helpers.h @@ -253,7 +253,9 @@ uint64_t mbedtls_test_parse_binary_string(data_t *bin_string); * \param key_type Key type * \param key_bits Key length in number of bits. */ -#if defined(MBEDTLS_PSA_ACCEL_KEY_TYPE_AES) +#if defined(MBEDTLS_AES_ALT) || \ + defined(MBEDTLS_AES_SETKEY_ENC_ALT) || \ + defined(MBEDTLS_PSA_ACCEL_KEY_TYPE_AES) #define MBEDTLS_TEST_HAVE_ALT_AES 1 #else #define MBEDTLS_TEST_HAVE_ALT_AES 0 @@ -295,7 +297,8 @@ uint64_t mbedtls_test_parse_binary_string(data_t *bin_string); * \param nonce_length The nonce length in number of bytes. */ -#if defined(MBEDTLS_PSA_ACCEL_ALG_GCM) +#if defined(MBEDTLS_GCM_ALT) || \ + defined(MBEDTLS_PSA_ACCEL_ALG_GCM) #define MBEDTLS_TEST_HAVE_ACCEL_GCM 1 #else #define MBEDTLS_TEST_HAVE_ACCEL_GCM 0 diff --git a/tests/src/drivers/hash.c b/tests/src/drivers/hash.c index 5d938ea579..54aec93225 100644 --- a/tests/src/drivers/hash.c +++ b/tests/src/drivers/hash.c @@ -13,8 +13,12 @@ #include "test/drivers/hash.h" #if defined(MBEDTLS_TEST_LIBTESTDRIVER1) +#if MBEDTLS_VERSION_MAJOR < 4 +#include "libtestdriver1/library/psa_crypto_hash.h" +#else #include "libtestdriver1/tf-psa-crypto/drivers/builtin/src/psa_crypto_hash.h" #endif +#endif mbedtls_test_driver_hash_hooks_t mbedtls_test_driver_hash_hooks = MBEDTLS_TEST_DRIVER_HASH_INIT; diff --git a/tests/src/drivers/test_driver_aead.c b/tests/src/drivers/test_driver_aead.c index 9c0677a7eb..6992a066d2 100644 --- a/tests/src/drivers/test_driver_aead.c +++ b/tests/src/drivers/test_driver_aead.c @@ -16,8 +16,12 @@ #include "mbedtls/constant_time.h" #if defined(MBEDTLS_TEST_LIBTESTDRIVER1) +#if MBEDTLS_VERSION_MAJOR < 4 +#include "libtestdriver1/library/psa_crypto_aead.h" +#else #include "libtestdriver1/tf-psa-crypto/drivers/builtin/src/psa_crypto_aead.h" #endif +#endif mbedtls_test_driver_aead_hooks_t mbedtls_test_driver_aead_hooks = MBEDTLS_TEST_DRIVER_AEAD_INIT; diff --git a/tests/src/drivers/test_driver_asymmetric_encryption.c b/tests/src/drivers/test_driver_asymmetric_encryption.c index 32644009e0..6fdbe43aee 100644 --- a/tests/src/drivers/test_driver_asymmetric_encryption.c +++ b/tests/src/drivers/test_driver_asymmetric_encryption.c @@ -16,8 +16,12 @@ #include "test/drivers/key_management.h" #if defined(MBEDTLS_TEST_LIBTESTDRIVER1) +#if MBEDTLS_VERSION_MAJOR < 4 +#include "libtestdriver1/library/psa_crypto_rsa.h" +#else #include "libtestdriver1/tf-psa-crypto/drivers/builtin/src/psa_crypto_rsa.h" #endif +#endif #define PSA_RSA_KEY_PAIR_MAX_SIZE \ PSA_KEY_EXPORT_RSA_KEY_PAIR_MAX_SIZE(PSA_VENDOR_RSA_MAX_KEY_BITS) diff --git a/tests/src/drivers/test_driver_cipher.c b/tests/src/drivers/test_driver_cipher.c index 136610b36b..90256fc4ea 100644 --- a/tests/src/drivers/test_driver_cipher.c +++ b/tests/src/drivers/test_driver_cipher.c @@ -19,8 +19,12 @@ #include "test/random.h" #if defined(MBEDTLS_TEST_LIBTESTDRIVER1) +#if MBEDTLS_VERSION_MAJOR < 4 +#include "libtestdriver1/library/psa_crypto_cipher.h" +#else #include "libtestdriver1/tf-psa-crypto/drivers/builtin/src/psa_crypto_cipher.h" #endif +#endif #include diff --git a/tests/src/drivers/test_driver_key_agreement.c b/tests/src/drivers/test_driver_key_agreement.c index b99d7cdba0..8a7a9ea525 100644 --- a/tests/src/drivers/test_driver_key_agreement.c +++ b/tests/src/drivers/test_driver_key_agreement.c @@ -20,10 +20,16 @@ #include #if defined(MBEDTLS_TEST_LIBTESTDRIVER1) +#if MBEDTLS_VERSION_MAJOR < 4 +#include "libtestdriver1/include/psa/crypto.h" +#include "libtestdriver1/library/psa_crypto_ecp.h" +#include "libtestdriver1/library/psa_crypto_ffdh.h" +#else #include "libtestdriver1/tf-psa-crypto/include/psa/crypto.h" #include "libtestdriver1/tf-psa-crypto/drivers/builtin/src/psa_crypto_ecp.h" #include "libtestdriver1/tf-psa-crypto/drivers/builtin/src/psa_crypto_ffdh.h" #endif +#endif mbedtls_test_driver_key_agreement_hooks_t mbedtls_test_driver_key_agreement_hooks = MBEDTLS_TEST_DRIVER_KEY_AGREEMENT_INIT; diff --git a/tests/src/drivers/test_driver_key_management.c b/tests/src/drivers/test_driver_key_management.c index 337c254738..d2ca157b8b 100644 --- a/tests/src/drivers/test_driver_key_management.c +++ b/tests/src/drivers/test_driver_key_management.c @@ -23,10 +23,16 @@ #include "test/random.h" #if defined(MBEDTLS_TEST_LIBTESTDRIVER1) +#if MBEDTLS_VERSION_MAJOR < 4 +#include "libtestdriver1/library/psa_crypto_ecp.h" +#include "libtestdriver1/library/psa_crypto_rsa.h" +#include "libtestdriver1/library/psa_crypto_ffdh.h" +#else #include "libtestdriver1/tf-psa-crypto/drivers/builtin/src/psa_crypto_ecp.h" #include "libtestdriver1/tf-psa-crypto/drivers/builtin/src/psa_crypto_rsa.h" #include "libtestdriver1/tf-psa-crypto/drivers/builtin/src/psa_crypto_ffdh.h" #endif +#endif #include diff --git a/tests/src/drivers/test_driver_mac.c b/tests/src/drivers/test_driver_mac.c index 9b671b8676..f1cf504303 100644 --- a/tests/src/drivers/test_driver_mac.c +++ b/tests/src/drivers/test_driver_mac.c @@ -13,8 +13,12 @@ #include "test/drivers/mac.h" #if defined(MBEDTLS_TEST_LIBTESTDRIVER1) +#if MBEDTLS_VERSION_MAJOR < 4 +#include "libtestdriver1/library/psa_crypto_mac.h" +#else #include "libtestdriver1/tf-psa-crypto/drivers/builtin/src/psa_crypto_mac.h" #endif +#endif mbedtls_test_driver_mac_hooks_t mbedtls_test_driver_mac_hooks = MBEDTLS_TEST_DRIVER_MAC_INIT; diff --git a/tests/src/drivers/test_driver_pake.c b/tests/src/drivers/test_driver_pake.c index bcef6b5f47..c3ce326fe2 100644 --- a/tests/src/drivers/test_driver_pake.c +++ b/tests/src/drivers/test_driver_pake.c @@ -14,8 +14,12 @@ #include "string.h" #if defined(MBEDTLS_TEST_LIBTESTDRIVER1) +#if MBEDTLS_VERSION_MAJOR < 4 +#include "libtestdriver1/library/psa_crypto_pake.h" +#else #include "libtestdriver1/tf-psa-crypto/drivers/builtin/src/psa_crypto_pake.h" #endif +#endif mbedtls_test_driver_pake_hooks_t mbedtls_test_driver_pake_hooks = MBEDTLS_TEST_DRIVER_PAKE_INIT; diff --git a/tests/src/drivers/test_driver_signature.c b/tests/src/drivers/test_driver_signature.c index 92ec93becd..a6eef573b2 100644 --- a/tests/src/drivers/test_driver_signature.c +++ b/tests/src/drivers/test_driver_signature.c @@ -26,10 +26,16 @@ #include "test/random.h" #if defined(MBEDTLS_TEST_LIBTESTDRIVER1) +#if MBEDTLS_VERSION_MAJOR < 4 +#include "libtestdriver1/library/psa_crypto_ecp.h" +#include "libtestdriver1/library/psa_crypto_hash.h" +#include "libtestdriver1/library/psa_crypto_rsa.h" +#else #include "libtestdriver1/tf-psa-crypto/drivers/builtin/src/psa_crypto_ecp.h" #include "libtestdriver1/tf-psa-crypto/drivers/builtin/src/psa_crypto_hash.h" #include "libtestdriver1/tf-psa-crypto/drivers/builtin/src/psa_crypto_rsa.h" #endif +#endif #include diff --git a/tests/src/psa_exercise_key.c b/tests/src/psa_exercise_key.c index ee8399722c..a496de0212 100644 --- a/tests/src/psa_exercise_key.c +++ b/tests/src/psa_exercise_key.c @@ -11,7 +11,9 @@ #include #include -#if defined(MBEDTLS_PSA_CRYPTO_CLIENT) +#if ((MBEDTLS_VERSION_MAJOR < 4) \ + && defined(MBEDTLS_PSA_CRYPTO_C)) \ + || defined(MBEDTLS_PSA_CRYPTO_CLIENT) #include #include @@ -1332,4 +1334,4 @@ exit: } #endif /* MBEDTLS_PK_C */ -#endif /* MBEDTLS_PSA_CRYPTO_CLIENT */ +#endif /* MBEDTLS_PSA_CRYPTO_C || MBEDTLS_PSA_CRYPTO_CLIENT */