Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion tests/include/test/arguments.h
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
#ifndef TEST_ARGUMENTS_H
#define TEST_ARGUMENTS_H

#include "test_common.h"
#include "build_info.h"
#include <stdint.h>
#include <stdlib.h>

Expand Down
2 changes: 1 addition & 1 deletion tests/include/test/asn1_helpers.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
#ifndef ASN1_HELPERS_H
#define ASN1_HELPERS_H

#include "test_common.h"
#include "build_info.h"
#include "test/helpers.h"

/** Skip past an INTEGER in an ASN.1 buffer.
Expand Down
2 changes: 1 addition & 1 deletion tests/include/test/bignum_codepath_check.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
#ifndef BIGNUM_CODEPATH_CHECK_H
#define BIGNUM_CODEPATH_CHECK_H

#include "test_common.h"
#include "build_info.h"

#include "bignum_core.h"

Expand Down
2 changes: 1 addition & 1 deletion tests/include/test/bignum_helpers.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
#ifndef TEST_BIGNUM_HELPERS_H
#define TEST_BIGNUM_HELPERS_H

#include "test_common.h"
#include "build_info.h"

#if defined(MBEDTLS_BIGNUM_C)

Expand Down
24 changes: 24 additions & 0 deletions tests/include/test/build_info.h
Comment thread
bjwtaylor marked this conversation as resolved.
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
/**
* \file test/build_info.h
*
* \brief Common things for all Mbed TLS and TF-PSA-Crypto test headers.
*
* Include this header first in all headers in `include/test/`.
*/

/*
* Copyright The Mbed TLS Contributors
* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
*/

#ifndef TEST_BUILD_INFO_H
#define TEST_BUILD_INFO_H

#include <mbedtls/build_info.h>

/* Most fields of publicly available structs are private and are wrapped with
* MBEDTLS_PRIVATE macro. This define allows tests to access the private fields
* directly (without using the MBEDTLS_PRIVATE wrapper). */
#define MBEDTLS_ALLOW_PRIVATE_ACCESS

#endif /* TEST_BUILD_INFO_H */
2 changes: 1 addition & 1 deletion tests/include/test/constant_flow.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
#ifndef TEST_CONSTANT_FLOW_H
#define TEST_CONSTANT_FLOW_H

#include "test_common.h"
#include "build_info.h"

/*
* This file defines the two macros
Expand Down
2 changes: 1 addition & 1 deletion tests/include/test/fake_external_rng_for_test.h
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
#ifndef FAKE_EXTERNAL_RNG_FOR_TEST_H
#define FAKE_EXTERNAL_RNG_FOR_TEST_H

#include "test_common.h"
#include "build_info.h"

#if defined(MBEDTLS_PSA_CRYPTO_EXTERNAL_RNG)
/** Enable the insecure implementation of mbedtls_psa_external_get_random().
Expand Down
2 changes: 1 addition & 1 deletion tests/include/test/helpers.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
#ifndef TEST_HELPERS_H
#define TEST_HELPERS_H

#include "test_common.h"
#include "build_info.h"

#if defined(__SANITIZE_ADDRESS__) /* gcc -fsanitize=address */
# define MBEDTLS_TEST_HAVE_ASAN
Expand Down
2 changes: 1 addition & 1 deletion tests/include/test/macros.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
#ifndef TEST_MACROS_H
#define TEST_MACROS_H

#include "test_common.h"
#include "build_info.h"

#include <stdlib.h>

Expand Down
2 changes: 1 addition & 1 deletion tests/include/test/memory.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
#ifndef TEST_MEMORY_H
#define TEST_MEMORY_H

#include "test_common.h"
#include "build_info.h"

#include "mbedtls/platform.h"
#include "test/helpers.h"
Expand Down
2 changes: 1 addition & 1 deletion tests/include/test/pk_helpers.h
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
#ifndef PK_HELPERS_H
#define PK_HELPERS_H

#include "test_common.h"
#include "build_info.h"

#if defined(MBEDTLS_PK_C)

Expand Down
2 changes: 1 addition & 1 deletion tests/include/test/psa_crypto_helpers.h
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#ifndef PSA_CRYPTO_HELPERS_H
#define PSA_CRYPTO_HELPERS_H

#include "test_common.h"
#include "build_info.h"
#include "test/helpers.h"

#if (MBEDTLS_VERSION_MAJOR < 4 && defined(MBEDTLS_PSA_CRYPTO_C)) || \
Expand Down
2 changes: 1 addition & 1 deletion tests/include/test/psa_exercise_key.h
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#ifndef PSA_EXERCISE_KEY_H
#define PSA_EXERCISE_KEY_H

#include "test_common.h"
#include "build_info.h"
#include "test/helpers.h"
#include "test/psa_crypto_helpers.h"

Expand Down
2 changes: 1 addition & 1 deletion tests/include/test/psa_helpers.h
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
#ifndef PSA_HELPERS_H
#define PSA_HELPERS_H

#include "test_common.h"
#include "build_info.h"

#if defined(MBEDTLS_PSA_CRYPTO_SPM)
#include "spm/psa_defs.h"
Expand Down
2 changes: 1 addition & 1 deletion tests/include/test/psa_memory_poisoning_wrappers.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
#ifndef PSA_MEMORY_POISONING_WRAPPERS_H
#define PSA_MEMORY_POISONING_WRAPPERS_H

#include "test_common.h"
#include "build_info.h"

#include "psa/crypto.h"

Expand Down
2 changes: 1 addition & 1 deletion tests/include/test/random.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
#ifndef TEST_RANDOM_H
#define TEST_RANDOM_H

#include "test_common.h"
#include "build_info.h"

#include <stddef.h>
#include <stdint.h>
Expand Down
2 changes: 1 addition & 1 deletion tests/include/test/threading_helpers.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
#ifndef THREADING_HELPERS_H
#define THREADING_HELPERS_H

#include "test_common.h"
#include "build_info.h"

#if defined MBEDTLS_THREADING_C

Expand Down
1 change: 1 addition & 0 deletions tests/src/asn1_helpers.c
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
*/

#include "test_common.h"
#include <test/helpers.h>
#include <test/macros.h>

Expand Down
1 change: 1 addition & 0 deletions tests/src/bignum_codepath_check.c
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
*/

#include "test_common.h"
#include "test/bignum_codepath_check.h"
#include "bignum_core_invasive.h"

Expand Down
3 changes: 2 additions & 1 deletion tests/src/bignum_helpers.c
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,8 @@
* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
*/

#define MBEDTLS_ALLOW_PRIVATE_ACCESS
#include "test_common.h"

#include <test/bignum_helpers.h>

#if defined(MBEDTLS_BIGNUM_C)
Expand Down
2 changes: 2 additions & 0 deletions tests/src/fake_external_rng_for_test.c
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@
* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
*/

#include "test_common.h"

#include <test/fake_external_rng_for_test.h>

#if defined(MBEDTLS_PSA_DRIVER_GET_ENTROPY)
Expand Down
2 changes: 2 additions & 0 deletions tests/src/helpers.c
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
*/

#include "test_common.h"

#include <test/constant_flow.h>
#include <test/helpers.h>
#include <test/macros.h>
Expand Down
1 change: 1 addition & 0 deletions tests/src/pk_helpers.c
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
*/

#include "test_common.h"
#include <test/macros.h>
#include <test/helpers.h>
#include <test/pk_helpers.h>
Expand Down
1 change: 1 addition & 0 deletions tests/src/psa_crypto_helpers.c
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
*/

#include "test_common.h"
#include <test/helpers.h>
#include <test/macros.h>
#include <psa_crypto_slot_management.h>
Expand Down
1 change: 1 addition & 0 deletions tests/src/psa_crypto_stubs.c
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
*/

#include "test_common.h"
#include <psa/crypto.h>

#if defined(MBEDTLS_PSA_CRYPTO_CLIENT) && !defined(MBEDTLS_PSA_CRYPTO_C)
Expand Down
10 changes: 10 additions & 0 deletions tests/src/psa_exercise_key.c
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
*/

#include "test_common.h"
#include <test/helpers.h>
#include <test/macros.h>
#include <test/psa_exercise_key.h>
Expand Down Expand Up @@ -37,6 +38,15 @@
#include <rsa_internal.h>
#endif

#if defined(__IAR_SYSTEMS_ICC__)
/* Suppress a very overeager warning from IAR: it dislikes a forward goto
* that bypasses the initialization of a variable, even if that variable
* is not used after the jump. (This is perfectly valid C; it would only
* be invalid C if jumping into a block from outside that block.)
*/
#pragma diag_suppress=Pe546 // transfer of control bypasses initialization
Comment thread
bjwtaylor marked this conversation as resolved.
#endif

#if defined(MBEDTLS_PSA_CRYPTO_SE_C)
static int lifetime_is_dynamic_secure_element(psa_key_lifetime_t lifetime)
{
Expand Down
2 changes: 2 additions & 0 deletions tests/src/psa_memory_poisoning_wrappers.c
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@
* Copyright The Mbed TLS Contributors
* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
*/
#include "test_common.h"

#include <test/memory.h>
#include <test/psa_memory_poisoning_wrappers.h>

Expand Down
1 change: 1 addition & 0 deletions tests/src/random.c
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
#define _BSD_SOURCE 1
#endif

#include "test_common.h"
#include <test/macros.h>
#include <test/random.h>
#include <string.h>
Expand Down
16 changes: 9 additions & 7 deletions tests/include/test/test_common.h → tests/src/test_common.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,7 @@
*
* \brief Common things for all Mbed TLS and TF-PSA-Crypto test code.
*
* Include this header first in all headers in `include/test/`.
* Include this or another header from `include/test/` in all test C files.
* Include this header first in all test C files.
*/

/*
Expand All @@ -24,11 +23,14 @@
#define __USE_MINGW_ANSI_STDIO 1
#endif

#include <mbedtls/build_info.h>
#if defined(__IAR_SYSTEMS_ICC__)
/* With IAR, enable support for ::FILE functions in stdio.h.
*/
#define _DLIB_FILE_DESCRIPTOR 1
#endif

/* Most fields of publicly available structs are private and are wrapped with
* MBEDTLS_PRIVATE macro. This define allows tests to access the private fields
* directly (without using the MBEDTLS_PRIVATE wrapper). */
#define MBEDTLS_ALLOW_PRIVATE_ACCESS
/* Make sure we have the library configuration, and anything else that
* is deemed necessary in test headers. */
#include <test/build_info.h>

#endif /* TEST_TEST_COMMON_H */
1 change: 1 addition & 0 deletions tests/src/test_memory.c
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
*/

#include "test_common.h"
#include <test/helpers.h>
#include <test/macros.h>
#include <test/memory.h>
Expand Down
1 change: 1 addition & 0 deletions tests/src/threading_helpers.c
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
* SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
*/

#include "test_common.h"
#include <test/helpers.h>
#include <test/threading_helpers.h>
#include <test/macros.h>
Expand Down
Loading