1
0
mirror of https://github.com/Mbed-TLS/mbedtls.git synced 2025-08-05 19:35:48 +03:00

Fix new bignum tests

These tests weren't working, because they use CMake and can't pass
options with CFLAGS directly. This could be mitigated by adding a CMake
option, but using config.py is less invasive and it is what we normally
use for setting build options anyway.

Signed-off-by: Janos Follath <janos.follath@arm.com>
This commit is contained in:
Janos Follath
2023-07-27 12:25:05 +01:00
parent 43cef57e51
commit 82823b2fe8
2 changed files with 16 additions and 9 deletions

View File

@@ -31,6 +31,14 @@
#include "bignum_mod.h" #include "bignum_mod.h"
#include "mbedtls/ecp.h" #include "mbedtls/ecp.h"
/*
* Turning this option on enables using the new bignum code in the ECC modules.
*
* WARNING: ECC implementation using the new bignum code is a work in progress,
* this option serves only development and testing purposes.
*/
//#define MBEDTLS_ECP_WITH_MPI_UINT
/* /*
* Curve modulus types * Curve modulus types
*/ */
@@ -40,11 +48,6 @@ typedef enum {
MBEDTLS_ECP_MOD_SCALAR MBEDTLS_ECP_MOD_SCALAR
} mbedtls_ecp_modulus_type; } mbedtls_ecp_modulus_type;
/* Provide a commented-out definition so that `check_names.py` knows that
* it's not a typo.
*/
//#define MBEDTLS_ECP_WITH_MPI_UINT
typedef enum { typedef enum {
MBEDTLS_ECP_VARIANT_NONE = 0, MBEDTLS_ECP_VARIANT_NONE = 0,
MBEDTLS_ECP_VARIANT_WITH_MPI_STRUCT, MBEDTLS_ECP_VARIANT_WITH_MPI_STRUCT,

View File

@@ -134,13 +134,14 @@ pre_initialize_variables () {
CONFIG_H='include/mbedtls/mbedtls_config.h' CONFIG_H='include/mbedtls/mbedtls_config.h'
CRYPTO_CONFIG_H='include/psa/crypto_config.h' CRYPTO_CONFIG_H='include/psa/crypto_config.h'
CONFIG_TEST_DRIVER_H='tests/include/test/drivers/config_test_driver.h' CONFIG_TEST_DRIVER_H='tests/include/test/drivers/config_test_driver.h'
CONFIG_NEW_BIGNUM_H='library/ecp_invasive.h'
# Files that are clobbered by some jobs will be backed up. Use a different # Files that are clobbered by some jobs will be backed up. Use a different
# suffix from auxiliary scripts so that all.sh and auxiliary scripts can # suffix from auxiliary scripts so that all.sh and auxiliary scripts can
# independently decide when to remove the backup file. # independently decide when to remove the backup file.
backup_suffix='.all.bak' backup_suffix='.all.bak'
# Files clobbered by config.py # Files clobbered by config.py
files_to_back_up="$CONFIG_H $CRYPTO_CONFIG_H $CONFIG_TEST_DRIVER_H" files_to_back_up="$CONFIG_H $CRYPTO_CONFIG_H $CONFIG_TEST_DRIVER_H $CONFIG_NEW_BIGNUM_H"
# Files clobbered by in-tree cmake # Files clobbered by in-tree cmake
files_to_back_up="$files_to_back_up Makefile library/Makefile programs/Makefile tests/Makefile programs/fuzz/Makefile" files_to_back_up="$files_to_back_up Makefile library/Makefile programs/Makefile tests/Makefile programs/fuzz/Makefile"
@@ -1028,8 +1029,9 @@ component_test_default_cmake_gcc_asan () {
component_test_default_cmake_gcc_asan_new_bignum () { component_test_default_cmake_gcc_asan_new_bignum () {
msg "build: cmake, gcc, ASan" # ~ 1 min 50s msg "build: cmake, gcc, ASan" # ~ 1 min 50s
scripts/config.py -f "$CONFIG_NEW_BIGNUM_H" set MBEDTLS_ECP_WITH_MPI_UINT
CC=gcc cmake -D CMAKE_BUILD_TYPE:String=Asan . CC=gcc cmake -D CMAKE_BUILD_TYPE:String=Asan .
make CFLAGS="-D MBEDTLS_ECP_WITH_MPI_UINT" make
msg "test: main suites (inc. selftests) (ASan build)" # ~ 50s msg "test: main suites (inc. selftests) (ASan build)" # ~ 50s
make test make test
@@ -1086,8 +1088,9 @@ component_test_full_cmake_gcc_asan () {
component_test_full_cmake_gcc_asan_new_bignum () { component_test_full_cmake_gcc_asan_new_bignum () {
msg "build: full config, cmake, gcc, ASan" msg "build: full config, cmake, gcc, ASan"
scripts/config.py full scripts/config.py full
scripts/config.py -f "$CONFIG_NEW_BIGNUM_H" set MBEDTLS_ECP_WITH_MPI_UINT
CC=gcc cmake -D CMAKE_BUILD_TYPE:String=Asan . CC=gcc cmake -D CMAKE_BUILD_TYPE:String=Asan .
make CFLAGS="-D MBEDTLS_ECP_WITH_MPI_UINT" make
msg "test: main suites (inc. selftests) (full config, ASan build)" msg "test: main suites (inc. selftests) (full config, ASan build)"
make test make test
@@ -1122,8 +1125,9 @@ component_test_full_cmake_gcc_asan_new_bignum_test_hooks () {
msg "build: full config, cmake, gcc, ASan" msg "build: full config, cmake, gcc, ASan"
scripts/config.py full scripts/config.py full
scripts/config.py set MBEDTLS_TEST_HOOKS scripts/config.py set MBEDTLS_TEST_HOOKS
scripts/config.py -f "$CONFIG_NEW_BIGNUM_H" set MBEDTLS_ECP_WITH_MPI_UINT
CC=gcc cmake -D CMAKE_BUILD_TYPE:String=Asan . CC=gcc cmake -D CMAKE_BUILD_TYPE:String=Asan .
make CFLAGS="-DMBEDTLS_ECP_WITH_MPI_UINT" make
msg "test: main suites (inc. selftests) (full config, ASan build)" msg "test: main suites (inc. selftests) (full config, ASan build)"
make test make test