mirror of
https://github.com/Mbed-TLS/mbedtls.git
synced 2024-12-27 12:16:07 +00:00
2016d66741
Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
100 lines
3.0 KiB
Bash
100 lines
3.0 KiB
Bash
# components-psasim.sh
|
|
#
|
|
# Copyright The Mbed TLS Contributors
|
|
# SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
|
|
|
|
# This file contains test components that are executed by all.sh
|
|
|
|
################################################################
|
|
#### Remote Procedure Call PSA Testing
|
|
################################################################
|
|
|
|
# Helper function for controlling (start & stop) the psasim server.
|
|
helper_psasim_server() {
|
|
OPERATION=$1
|
|
if [ "$OPERATION" == "start" ]; then
|
|
msg "start server in tests"
|
|
(
|
|
cd tests
|
|
../$PSASIM_PATH/test/start_server.sh
|
|
)
|
|
msg "start server in tf-psa-crypto/tests"
|
|
(
|
|
cd tf-psa-crypto/tests
|
|
../../$PSASIM_PATH/test/start_server.sh
|
|
)
|
|
else
|
|
msg "terminate server in tests"
|
|
(
|
|
# This will kill both servers and clean up all the message queues,
|
|
# and clear temporary files in tests
|
|
cd tests
|
|
../$PSASIM_PATH/test/kill_servers.sh
|
|
)
|
|
msg "terminate server in tf-psa-crypto/tests"
|
|
(
|
|
# This just clears temporary files in tf-psa-crypto/tests
|
|
cd tf-psa-crypto/tests
|
|
../../$PSASIM_PATH/test/kill_servers.sh
|
|
)
|
|
fi
|
|
}
|
|
|
|
component_test_psasim() {
|
|
msg "build server library and application"
|
|
scripts/config.py crypto
|
|
helper_psasim_config server
|
|
helper_psasim_build server
|
|
|
|
helper_psasim_cleanup_before_client
|
|
|
|
msg "build library for client"
|
|
helper_psasim_config client
|
|
helper_psasim_build client
|
|
|
|
msg "build basic psasim client"
|
|
make -C $PSASIM_PATH CFLAGS="$ASAN_CFLAGS" LDFLAGS="$ASAN_CFLAGS" test/psa_client_base
|
|
msg "test basic psasim client"
|
|
$PSASIM_PATH/test/run_test.sh psa_client_base
|
|
|
|
msg "build full psasim client"
|
|
make -C $PSASIM_PATH CFLAGS="$ASAN_CFLAGS" LDFLAGS="$ASAN_CFLAGS" test/psa_client_full
|
|
msg "test full psasim client"
|
|
$PSASIM_PATH/test/run_test.sh psa_client_full
|
|
|
|
helper_psasim_server kill
|
|
make -C $PSASIM_PATH clean
|
|
}
|
|
|
|
component_test_suite_with_psasim()
|
|
{
|
|
msg "build server library and application"
|
|
helper_psasim_config server
|
|
# Modify server's library configuration here (if needed)
|
|
helper_psasim_build server
|
|
|
|
helper_psasim_cleanup_before_client
|
|
|
|
msg "build client library"
|
|
helper_psasim_config client
|
|
# PAKE functions are still unsupported from PSASIM
|
|
scripts/config.py -f $CRYPTO_CONFIG_H unset PSA_WANT_ALG_JPAKE
|
|
scripts/config.py unset MBEDTLS_KEY_EXCHANGE_ECJPAKE_ENABLED
|
|
helper_psasim_build client
|
|
|
|
msg "build test suites"
|
|
make PSASIM=1 CFLAGS="$ASAN_CFLAGS" LDFLAGS="$ASAN_CFLAGS" tests
|
|
|
|
helper_psasim_server start
|
|
|
|
# psasim takes an extremely long execution time on some test suites so we
|
|
# exclude them from the list.
|
|
SKIP_TEST_SUITES="constant_time_hmac,lmots,lms"
|
|
export SKIP_TEST_SUITES
|
|
|
|
msg "run test suites"
|
|
make PSASIM=1 test
|
|
|
|
helper_psasim_server kill
|
|
}
|