Commit Graph

796 Commits

Author SHA1 Message Date
Ronald Cron
ae82217476 programs: metatest: Add tf-psa-crypto/platform as include dir
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2026-03-09 08:28:51 +01:00
Ronald Cron
1ef64a73e4 programs: metatest: Remove include path duplication
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2026-03-09 08:28:51 +01:00
Gilles Peskine
64ff7fc1dc Stop using MBEDTLS_PRINTF_SIZET
Since Mbed TLS 3.6.0, all officially supported versions of Visual Studio
a printf function family that is sufficiently compliant to C99 for our
purposes, in particular supporting `%zu` for `size_t`. The only platform
without `%zu` that we semi-officially support is older versions of MinGW,
still used in our CI. MinGW provides either a Windows legacy printf or a
standards-compliant printf depending on the value of
`__USE_MINGW_ANSI_STDIO` when compiling each C file. Force the use of the
compliant version. Don't rely on `MBEDTLS_PRINTF_SIZET`, which is defined in
`<mbedtls/debug.h>` and no longer considers the Windows legacy version in
Mbed TLS >= 4.1.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2026-02-26 19:56:23 +00:00
Gilles Peskine
5890b22b82 Fix a build error with MSVC
Also fixes a minor bug on Windows with timers running over ~49 days.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2026-02-19 16:53:52 +01:00
Ben Taylor
fe3f378eec Restore mbedtls_memory_buffer_alloc_free_and_self_test, as it is still required
Signed-off-by: Ben Taylor <ben.taylor@linaro.org>
2026-01-15 08:38:06 +00:00
Ben Taylor
4569547e59 Add fixes for defines in selftest
Signed-off-by: Ben Taylor <ben.taylor@linaro.org>
2026-01-15 07:56:29 +00:00
Ben Taylor
842d2d948c Re-add mbedtls_entropy_self_test_wrapper
Signed-off-by: Ben Taylor <ben.taylor@linaro.org>
2026-01-14 13:18:33 +00:00
Ben Taylor
552f31410c Re-add the HMAC_DRBG and CTR_DRBG are cryptographic modules as they are still required
Signed-off-by: Ben Taylor <ben.taylor@linaro.org>
2026-01-14 13:01:22 +00:00
Ben Taylor
fe978ac1f3 Remove Deprecated Items From Sample Programs
Remove the drbg module and entropy functions from the sample programs as these are
now handled by their PSA equivalents

Signed-off-by: Ben Taylor <ben.taylor@linaro.org>
2026-01-14 13:01:22 +00:00
Gilles Peskine
d0f6b5476d Don't call SHA3 selftest when SHA3 is accelerated
`mbedtls_sha3_self_test` only exists in the built-in implementation.

The SHA3 self-test won't run until the tf-psa-crypto submodule moves past
https://github.com/Mbed-TLS/TF-PSA-Crypto/pull/618

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2026-01-06 17:05:58 +01:00
Ben Taylor
7e8e438fce Replace cases of time_t with mbedtls_time_t
Signed-off-by: Ben Taylor <ben.taylor@linaro.org>
2025-09-29 14:24:47 +01:00
David Horstmann
ee1991a387 Merge pull request #10408 from ronald-cron-arm/historical-libmbedcryto
Restore historical libmbedcrypto.* libraries
2025-09-29 08:41:06 +00:00
Manuel Pégourié-Gonnard
355b00e8e0 Fix includes in udp_proxy.c
The program uses atoi() unconditionally, so it should include stdlib.h
unconditionally. Previously this happened to be indirectly included by
some other header (via pk.h via ssl.h) but we should not rely on that.

Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
2025-09-26 12:11:03 +02:00
Ronald Cron
35d59c6cb6 cmake: Install libmbedcrypto.* libraries
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2025-09-22 15:08:39 +02:00
Ronald Cron
a33b371f36 programs/tests/dlopen.c: Prioritize libtfpsacrypto.so
Prioritize libtfpsacrypto.so over libmbedcrypto.so
as the crypto library to load to be sure we test
the loading of libtfpsacrypto.so.

Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2025-09-22 14:34:56 +02:00
Ronald Cron
eb16a9d9ea Prepare for the removal of MBEDTLS_PLATFORM_GET_ENTROPY_ALT
We cannot remove it completely yet.
It must remain in config.py so that it is not
included in the full configuration.
A temporary exception is required for it in
analyze_outcomes.py.

Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2025-09-10 15:23:32 +02:00
Gilles Peskine
f0b8364cff Allow metatest.c to use crypto internal headers
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2025-09-06 18:39:39 +02:00
Anton Matkin
bc48725b64 Include fixups (headers moves to private directory)
Signed-off-by: Anton Matkin <anton.matkin@arm.com>
2025-08-29 07:05:37 +02:00
David Horstmann
6ff9c89648 Merge pull request #10361 from bensze01/runtime-version-interface
Simplify runtime version info string methods
2025-08-27 14:59:15 +00:00
David Horstmann
40573bade8 Merge pull request #10239 from ronald-cron-arm/mbedtls-build-info-last
Improve detection of CMake library installation problems
2025-08-27 10:22:53 +00:00
Bence Szépkúti
783d8adb15 Update CMake linkage tests to new call signature
Signed-off-by: Bence Szépkúti <bence.szepkuti@arm.com>
2025-08-18 14:31:34 +02:00
Gilles Peskine
d6f881e8ca Merge pull request #10319 from gilles-peskine-arm/move-check-config-to-library
check_config.h: move to library and test
2025-07-29 14:07:33 +00:00
Gilles Peskine
1819a915bc Include limits.h where needed
This will be needed when TF-PSA-Crypto's `build_info.h` stops including
`limits.h`, which it currently does by accident because it includes
`check_config.h` which wants `limits.h` to check `CHAR_BIT`.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2025-07-28 15:45:12 +02:00
Gilles Peskine
8b006ce95f Invoke generate_query_config.pl from the root
Otherwise it can't find headers to include.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2025-07-25 19:51:17 +02:00
Ronald Cron
2fc0475dc9 cmake_package_install: Fail in case of warnings with GNU GCC
Fail the cmake package install demonstration in
case of warnings when building the
cmake_package_install executable.

This would have caught the library installation
issue reported in #10022.

Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2025-07-21 11:57:55 +02:00
Ari Weiler-Ofek
c3d54b619e Fix comment in dlopen.c to remove reference to deprecated API
Signed-off-by: Ari Weiler-Ofek <ari.weiler-ofek@arm.com>
2025-07-15 15:08:07 +01:00
Ari Weiler-Ofek
abcfd4c160 Modified dlopen.c and tfpsacrypto_dlopen.c so that they use PSA API-only dynamic loading
- Replaced soon-deprecated mbedtls_md_list() in dlopen.c with psa_hash_compute()
- Added tfpsacrypto_dlopen.c as a PSA-only shared-library loading test
- Enabled -fPIC for tf-psa-crypto builtins to support shared linking
- Confirmed clean builds and successful dlopen() test execution.

Signed-off-by: Ari Weiler-Ofek <ari.weiler-ofek@arm.com>
2025-07-15 15:08:07 +01:00
Ari Weiler-Ofek
86422e5509 Remove: DES selftest, component_test_psa_crypto_config_accel_des and dead DES mentions prior to TF-PSA-Crypto cleanup
Signed-off-by: Ari Weiler-Ofek <ariwei01@e134794.arm.com>
2025-07-07 11:29:50 +01:00
Ronald Cron
d1e4ccf0a0 cmake: Fix library order
A library that depends on another one should come first
in the list of libraries to link against.

Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2025-06-17 09:48:05 +02:00
Ronald Cron
a3b562aa17 programs: test: Let zeroize be an Mbed TLS test program
In TF-PSA-Crypto there is the crypto specific one.

Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2025-06-16 15:55:05 +02:00
Gabor Mezei
4aa974f7c7 Remove MBEDTLS_SHA3_C config option
Signed-off-by: Gabor Mezei <gabor.mezei@arm.com>
2025-06-03 17:49:23 +02:00
Gilles Peskine
06af417cea Disable warning from gcc -pedantic on dlsym/dlopen
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2025-05-07 17:15:37 +02:00
Gilles Peskine
2439c4c14a Merge pull request #10090 from valeriosetti/issue9618-development
[development] MBEDTLS_PLATFORM_GET_ENTROPY_ALT in 4.0
2025-05-06 22:35:03 +02:00
Valerio Setti
1971eab465 programs: test: add C++ specific commands to cpp_dummy_build
Add C++ specific instructions to the generated *.cpp source file so
that the build will fail in case a C compiler is used.

Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
2025-04-29 11:01:46 +02:00
Valerio Setti
3775c9b48f programs: selftest: remove direct call to mbedtls_platform_entropy_poll()
The function is now internal so it cannot be referenced from programs.
A dummy alternative is used instead.

Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
2025-04-29 11:01:46 +02:00
Valerio Setti
73bd210a94 tests: remove usage of MBEDTLS_NO_PLATFORM_ENTROPY
Use MBEDTLS_PLATFORM_GET_ENTROPY_ALT instead.

Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
2025-04-29 11:01:46 +02:00
Ben Taylor
4695204872 remove mbedtls_nist_kw_self_test from selftests
Signed-off-by: Ben Taylor <ben.taylor@linaro.org>
2025-04-29 07:43:37 +01:00
Felix Conway
61bd2729b2 Check include/mbedtls exists before including from it
Signed-off-by: Felix Conway <felix.conway@arm.com>
2025-04-17 10:24:20 +01:00
Felix Conway
e6605f9185 Adjust build scripts to accommodate public header move
Signed-off-by: Felix Conway <felix.conway@arm.com>
2025-04-08 14:26:29 +01:00
Felix Conway
998760ae5d Define MBEDTLS_DECLARE_PRIVATE_IDENTIFIERS in every sample program
Add #define MBEDTLS_DECLARE_PRIVATE_IDENTIFIERS to every sample program
before the first include so that mbedtls doesn't break with future
privatization work.

Signed-off-by: Felix Conway <felix.conway@arm.com>
2025-03-24 11:37:33 +00:00
Valerio Setti
12e67eaa5b programs: remove DHM_C usage from selftest
Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
2025-03-05 10:11:22 +01:00
Valerio Setti
34b4aa1f58 programs: move benchmark to tf-psa-crypto repo
This commit also removes references from Makefile and README.md.

Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
2025-02-21 11:20:47 +01:00
Harry Ramsey
53ba6ad106 Update paths for moved program files in CMakeLists
This commit fixes the paths of program files which were moved to the
MbedTLS Framework.

Signed-off-by: Harry Ramsey <harry.ramsey@arm.com>
2025-02-19 15:30:24 +00:00
Harry Ramsey
b14141dd71 Move programs out of Mbed TLS
This commit moves demo_common.sh, dlopen_demo.sh, metatest.c
query_compile_time_config.c, query_config.h, query_included_headers.c,
zeroize.c and test_zeroize.gdb from MbedTLS into the MbedTLS framework.

Signed-off-by: Harry Ramsey <harry.ramsey@arm.com>
2025-02-19 15:17:32 +00:00
Ronald Cron
5096b4cb4b Revert "Remove mbedtls_test"
This reverts commit 939ce9d0d5.

Build mbedtls_test library of objects to link
with TLS and x509 test suites and programs
with mbedtls framework not TF-PSA-Crypto
one (when it will be there).

Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2024-12-10 16:56:49 +01:00
Ronald Cron
1fe5277c88 Remove unnecessary error.h inclusions
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2024-12-04 14:25:02 +01:00
Ronald Cron
6924564970 Move back timing.c to mbedtls
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2024-12-04 14:25:02 +01:00
David Horstmann
5b93d97b95 Update references to test helpers
Replace:
* tests/src -> framework/tests/src
* tests/include -> framework/tests/include

Except for occurrences of:
* tests/src/test_helpers (since this only contains ssl_helpers.c)
* tests/src/test_certs.h
* tests/include/alt_dummy

Signed-off-by: David Horstmann <david.horstmann@arm.com>
2024-11-18 15:50:44 +00:00
Ronald Cron
939ce9d0d5 Remove mbedtls_test
Use tf_psa_crypto_test instead.

Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2024-11-14 13:52:36 +01:00
Ronald Cron
8126a686d9 cmake: Rename mbedcrypto library to tfpsacrypto
Do not do the same in the make build system yet,
cmake build system only scope for this PR.

Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2024-11-14 09:28:27 +01:00