Commit Graph

3556 Commits

Author SHA1 Message Date
Gilles Peskine
f840cb16e5 Update paths after moving some scripts to the framework
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2026-03-12 10:18:52 +01:00
Gilles Peskine
326fb18585 Move some scripts from mbedtls into the framework
Move a bunch of files from `scripts` and `mbedtls/scripts` to the framework.
Most are not called from any scripts invoked by the CI, but a couple are.
A subsequent commit will adapt the scripts. None of these scripts are
referenced from other repositories except in documentation.

The following files will be removed, and added to `mbedtls-framework`:

* `scripts/ecp_comb_table.py`
* `scripts/massif_max.pl`
* `tests/scripts/audit-validity-dates.py` (moved to `scripts/`)
* `tests/scripts/gen_ctr_drbg.pl` (moved to `scripts/`)
* `tests/scripts/gen_gcm_decrypt.pl` (moved to `scripts/`)
* `tests/scripts/gen_gcm_encrypt.pl` (moved to `scripts/`)
* `tests/scripts/gen_pkcs1_v21_sign_verify.pl` (moved to `scripts/`)
* `tests/scripts/generate-afl-tests.sh` (moved to `scripts/`)
* `tests/scripts/generate_server9_bad_saltlen.py` (moved to `scripts/`)
* `tests/scripts/run-metatests.sh` (moved to `scripts/`)
* `tests/scripts/run_demos.py` (moved to `scripts/`)
* `tests/scripts/test_config_script.py` (moved to `scripts/`)

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2026-03-12 10:18:33 +01:00
Gilles Peskine
23318bde24 Remove PSA status coverage log test
We haven't used this in years. It's obsolete because this functionality
should now be provided by the more general PSA function
wrappers (`PSALoggingWrapper` generator), although that work is unfinished.
It belongs in TF-PSA-Crypto anyway. So remove it, it's one less little
amount of baggage.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2026-03-12 10:18:33 +01:00
Ronald Cron
b5749b88f6 Merge pull request #10576 from ronald-cron-arm/dtls-client-hello-defragmentation
Add support for (D)TLS 1.2 client hello defragmentation
2026-03-10 14:46:07 +00:00
Ronald Cron
269b390bb4 components-platform.sh: Fix path of compiler directory
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2026-03-09 08:28:51 +01:00
Ronald Cron
a400a3bb8a Adapt list_internal_identifiers.py for upcoming directory changes
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2026-03-09 08:28:51 +01:00
Ronald Cron
24bf98156a components*.sh: Handle current and upcoming object paths
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2026-03-09 08:28:51 +01:00
Ronald Cron
03ee085e10 Remove duplicated recursion tests
The recursion tests for the crypto code
are run in a TF-PSA-Crypto component.
No need to run them in an Mbed TLS
component as well.

Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2026-03-09 08:28:51 +01:00
Bence Szépkúti
c2cb8565a5 Merge pull request #10607 from gilles-peskine-arm/timing-use-mstime
Simplify MBEDTLS_TIMING_C to use mbedtls_ms_time()
2026-02-26 14:38:50 +00:00
Ronald Cron
6e270c0465 ssl-opt.sh: Add tests with CH fragmented with DTLS in default config
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2026-02-23 12:12:36 +01:00
Ronald Cron
2e9b9681e6 ssl_server2.c: DTLS: Attempt to read the response to the close notification
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2026-02-23 12:12:36 +01:00
Valerio Setti
b41c8f6e04 Merge pull request #10608 from bjwtaylor/DriverVsReference_removal
Remove DriverVsReference tasks from analyze_outcomes.py
2026-02-23 09:01:25 +00:00
Gilles Peskine
99c4159681 Disable Unix-like integration code in baremetal builds in all.sh
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2026-02-21 21:20:36 +01:00
Ben Taylor
d507b46684 Remove DriverVsReference tasks from analyze_outcomes.py
Signed-off-by: Ben Taylor <ben.taylor@linaro.org>
2026-02-20 15:08:33 +00:00
Ronald Cron
57b29c2fe5 Introduce branch specific make_generated_files.py
Introduce branch specific make_generated_files.py
and use it in the development branch.

Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2026-02-18 13:02:26 +01:00
Gilles Peskine
d3a8582606 Actually check committed generated files
We were accidentally running the check in TF-PSA-Crypto instead of in Mbed TLS.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2026-02-12 13:16:18 +01:00
Manuel Pégourié-Gonnard
499e3d13f7 Fix more paths for "not grep"
Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
2026-01-22 10:23:03 +01:00
Valerio Setti
4e2584d681 tests: scripts: remove set_psa_test_dependencies.py
This script was used in the past, but it has since been replaced with
other scripts and nowadays it's no more used anywhere.

Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
2026-01-14 13:34:32 +01:00
Ronald Cron
6370f1c59c Merge pull request #10507 from minosgalanakis/rework/component-configuration-crypto-cmake
Migrate configuration-crypto components to cmake
2026-01-14 07:33:06 +00:00
Manuel Pégourié-Gonnard
21fa4896b1 all.sh: fix file paths for "not grep"
Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
2026-01-13 11:24:14 +01:00
Minos Galanakis
2ad6e5ba6c component-configuration-crypto: Adjusted test_crypto_full_md_light_only
Adjusted component to utilise the CMAKE_BUILTIN_BUILD_DIR

Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2026-01-12 16:30:33 +00:00
Minos Galanakis
0c297de53c component-configuration-crypto: Changed cleanup order.
Adjusted helper_block_cipher_no_decrypt_build_test to
cleanup the directory after all the tests have been
executed.

Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2026-01-12 16:30:33 +00:00
Minos Galanakis
67a9123b23 component-configuration-crypto: Changed location of psa-alt-header
build_psa_alt_headers will now generate the headers at
./tests/include/alt-dummy instead of
./framework/tests/include/alt-extra.

Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2026-01-12 16:30:33 +00:00
Minos Galanakis
69545a87af component-configuration-crypto: Added consistent cmake commands.
Update the previously modified component to use
consistent syntax:
* make -> cmake --build .
* make test -> ctest

Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2026-01-12 16:30:33 +00:00
Minos Galanakis
8cdccdecd2 component-configuration-crypto: Migrated build_psa_alt_headers
The original make -C tests, contains a perl inliner
to generate the alt-headers. Replicated that logic in
sed regex.

Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2026-01-12 16:30:33 +00:00
Minos Galanakis
486b6c8252 components-configuration-crypto: Migrated components with custom LDFLAGS to cmake
Certain testing components require building with a specific subset of LDFLAGS,
such as `-O1`. This patch moves them to the default cmake invokation of `cmake .`
which is the equivalent of `cmake -D CMAKE_BUILD_TYPE:String=None .`

Also remove flags such as `-Werror` which are present in all configs.

Improve compilation flag granularity by disabling CMAKE_BUILD_TYPE defaults
and asserting test-specific flags manually.

Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2026-01-12 16:30:33 +00:00
Minos Galanakis
1fcca1f255 component-configuration-crypto: Migrated component_test_crypto_full_md_light_only to cmake
Use compilation directory for object discovery in out-of-source CMake builds.

Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2026-01-12 16:30:33 +00:00
Minos Galanakis
5e99591870 components-configuration-crypto: Migrated include dir dependant Release components to cmake
Moved the following components to CMAKE_BUILD_TYPE:String=Release
and adjusted  the include paths for cmake:
* component_build_psa_crypto_spm
* component_test_tfm_config_no_p256m

Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2026-01-12 16:30:33 +00:00
Minos Galanakis
6db68f929b components-configuration-crypto: Migrated straightforwad Release components to cmake
- By default all unspecified build-type components should be release
- CMAKE_BUILD_TYPE:String=Release enables the following
  CFLAGS: "-O2 -Werror -Wall -Wextra"

Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2026-01-12 16:30:33 +00:00
Minos Galanakis
279c016d87 components-configuration-crypto: Migrated test_tfm_config_p256m_driver_accel_ec to cmake
Compilation flags, and spe include directories have been adjusted

Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2026-01-12 16:30:33 +00:00
Minos Galanakis
3baeee8647 components-configuration-crypto: Migrated test_full_static_keystore to cmake
Optimization for size (-Os) is required.

Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2026-01-12 16:30:33 +00:00
Minos Galanakis
d1307a1d40 components-configuration-crypto: Migrated simple ASAN components.
Migrate all straightfoward components from using $ASAN_CFLAGS
to CMAKE_BUILD_TYPE:String=Asan

Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2026-01-12 16:30:33 +00:00
Valerio Setti
c58c20d4fa tests: scripts: fix grep paths in test_tfm_config_p256m_driver_accel_ec
Paths for "not grep" should have been updated when the build system
switched from Makefile to CMake.

Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
2026-01-12 13:29:14 +01:00
Valerio Setti
5aba22b3df tests: scripts: configuration-crypto: fix paths for "not grep"
A switch has recently been made from make to cmake to build these tests
but paths for "not grep" were not properly updated.

Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
2026-01-09 22:52:45 +01:00
Valerio Setti
f7173e4389 Merge pull request #10517 from valeriosetti/issue10460
Remove use of pk_debug()
2026-01-09 15:22:13 +00:00
Valerio Setti
fdccbbb91f tests: scripts: configuration-crypto: fix paths after switch to CMake
Switching to CMake build caused some failures due to the fact that:

- binary objects in tf-psa-crypto are not in the same location as before;
- header files from "<mbedtls-root>/include" are no more included when
  building tf-psa-crypto ojects.

This commit fixes both problems.

Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
2026-01-08 17:53:56 +01:00
Valerio Setti
059aac8680 tests: scripts: build with cmake in all components using Asan
Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
2026-01-08 14:33:30 +01:00
Valerio Setti
4d62c59a56 tests: scripts: add new component to test with only pkwrite disabled
This is similar to the already existing "component_full_no_pkparse_pkwrite".
The biggest difference is that this new component starts from "full" config
instead of "crypto_full" because we want to test also some TLS modules,
in particular "test_suite_debug" where the new function
"mbedtls_pk_write_pubkey_psa" has been introduced.

Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
2026-01-08 10:32:57 +01:00
Gilles Peskine
68b0ad1512 Adapt to the split of test_suite_shax
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2026-01-07 16:19:48 +01:00
Gilles Peskine
40b11f59df Remove component_test_sha3_variations
TF-PSA-Crypto is getting a component with similar coverage in
https://github.com/Mbed-TLS/TF-PSA-Crypto/pull/618

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2026-01-06 17:07:17 +01:00
Gilles Peskine
64ab9a287e Merge pull request #10548 from gilles-peskine-arm/config-checks-generator-current-mbedtls
mbedtls: generate_config_checks.py: use current data
2026-01-06 10:07:34 +00:00
Gilles Peskine
168c6ec50c Improve out-of-date message
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2026-01-05 16:29:21 +01:00
Gilles Peskine
b6c30c3639 Print a useful message when the file is out of date
Don't print the differences: interested users can just run `git diff` (or
save the old file and run `comm`).

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2026-01-05 16:29:21 +01:00
Gilles Peskine
93ef003cdc Check that the config option list shadow file is up to date
Test that `scripts/data_files/config-options-current.txt` is up-to-date.
This file needs to change every time we add or remove a config option.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2026-01-05 16:29:21 +01:00
Gilles Peskine
0e2eb22145 New script to check or update config-options-current.txt
This script may be generalized to check other files that need lists of
current options. But for now, the script just checks
`scripts/data_files/config-options-current.txt`.

This script is identical to the file in crypto. If the file grows to support
multiple targets, we'll probably want to split it, with a generic part in
the framework and a project-specific part (probably little more than the
list of targets) in each project. But for now the file is too simple to split.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2026-01-05 16:29:21 +01:00
Ben Taylor
27c22840b4 Re-instate failure when disabling non-existing option
Signed-off-by: Ben Taylor <ben.taylor@linaro.org>
2025-12-24 08:20:09 +00:00
Valerio Setti
a7337251f7 tests: remove temporary fix for secp192 curves in test_psa_crypto_without_heap
secp192 curves are no more supported in tf-psa-crypto and also all the
temporary fixes has been removed. This one can be removed as well.

Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
2025-12-11 17:37:06 +01:00
Manuel Pégourié-Gonnard
1c479f88d0 Avoid references to ecdh.o
We're going to remove ecdh.c soon, so use another way of testing whether
builtin ECDH is included in the build.

Signed-off-by: Manuel Pégourié-Gonnard <manuel.pegourie-gonnard@arm.com>
2025-12-05 09:23:39 +01:00
Valerio Setti
65ec4cc771 tests: scripts: make enabling of secp192 curves fault tolerant in test_psa_crypto_without_heap
This is temporary but still required in order to have this commit merged
before the crypto#570, where these curves are really removed.
These lines will be removed in a follow-up PR once crypto#570 is merged.

Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
2025-11-20 13:20:40 +01:00
Minos Galanakis
0283fa0656 Merge remote-tracking branch 'restricted/development-restricted' into mbedtls-4.0.0.rc
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2025-10-11 21:41:49 +01:00