11331 Commits

Author SHA1 Message Date
Manuel Pégourié-Gonnard
e217673996 Merge remote-tracking branch 'public/mbedtls-3.6' into merge-3.6
* public/mbedtls-3.6: (251 commits)
  Call in_mbedtls_repo
  Move some proj detection code inside pre_check_environment
  Match spacing in pointer types in documentation with the code style
  Rename one more deprecated identifier
  Documentation improvements
  Rename internal function psa_key_production_parameters_are_default
  key_custom: update analyze_outcomes.py
  Test cpp_dummy_build in pedantic mode
  Changelog entry for the move from key_ext to key_custom functions
  Remove some tests of psa_generate_key_ext
  Document the key_ext functions as deprecated
  Documentation: point to key_custom instead of key_ext
  Update PSA wrappers
  Implement psa_generate_key_custom
  all.sh/components: Removed components.sh
  all.sh/components: Moved build_aes_via_padlock to platform component.
  all.sh/components: Moved driver components to configuration crypto.
  all.sh/components: Moved more components to configuration crypto.
  all.sh/components: Fixed a typo in configuration-tls.
  all.sh/components: Moved more components to configuration tls.
  ...
2024-08-08 09:49:51 +02:00
Tom Cosgrove
4306a69931
Merge pull request #9437 from tom-daubney-arm/bp_3-6_standardise_proj_detection
[3.6 Backport] Standardise Project Detection
2024-08-07 07:18:43 +00:00
Thomas Daubney
5f0b64aadf Move some proj detection code inside pre_check_environment
Signed-off-by: Thomas Daubney <thomas.daubney@arm.com>
2024-08-06 17:38:19 +01:00
Gilles Peskine
472c10f4a5 key_custom: update analyze_outcomes.py
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2024-08-06 13:13:05 +02:00
Gilles Peskine
f5db72bbb9 Test cpp_dummy_build in pedantic mode
In public headers, we want to avoid things that are not standard C++,
including features that GCC and Clang support as extensions, such as
flexible array members. So compile with `-pedantic`.

Non-regression for https://github.com/Mbed-TLS/mbedtls/issues/9020.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2024-08-06 13:13:04 +02:00
Gilles Peskine
14134e7ddc Remove some tests of psa_generate_key_ext
We know it's a thin wrapper around psa_generate_key_custom, so we just need
to check that it's passing the information through, we don't need coverage
of the parameter interpretation.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2024-08-06 13:12:06 +02:00
Gilles Peskine
a8e39f2156 Update PSA wrappers
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2024-08-06 13:12:06 +02:00
Gilles Peskine
f36d785188 Implement psa_generate_key_custom
Implement `psa_generate_key_custom()` and
`psa_key_derivation_output_key_custom()`. These functions replace
`psa_generate_key_ext()` and `psa_key_derivation_output_key_ext()`.
They have the same functionality, but a slightly different interface:
the `ext` functions use a structure with a flexible array member to pass
variable-length data, while the `custom` functions use a separate parameter.

Keep the `ext` functions for backward compatibility with Mbed TLS 3.6.0.
But make them a thin wrapper around the new `custom` functions.

Duplicate the test code and data. The test cases have to be duplicated
anyway, and the test functions are individually more readable this way.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2024-08-06 13:12:06 +02:00
Manuel Pégourié-Gonnard
095cf69bc6
Merge pull request #9444 from minosgalanakis/all-sh-separate-components_36bp
Backport 3.6:  Separate all.sh from its components
2024-08-06 07:58:03 +00:00
Minos Galanakis
bd6b98fd40 all.sh/components: Removed components.sh
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-05 12:20:26 +01:00
Minos Galanakis
bb427371e6 all.sh/components: Moved build_aes_via_padlock to platform component.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-05 12:20:26 +01:00
Minos Galanakis
5f6d2e3120 all.sh/components: Moved driver components to configuration crypto.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-05 12:20:26 +01:00
Minos Galanakis
0c0c3e1713 all.sh/components: Moved more components to configuration crypto.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-05 12:20:26 +01:00
Minos Galanakis
4ca7b14060 all.sh/components: Fixed a typo in configuration-tls.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-05 12:20:21 +01:00
Minos Galanakis
85347d15c6 all.sh/components: Moved more components to configuration tls.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-05 12:19:27 +01:00
Minos Galanakis
4a2a351df8 Extract sanitizer components into a separate file.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-05 12:02:39 +01:00
Minos Galanakis
f0cd95b6f6 Extract platform components into a separate file.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-05 12:02:39 +01:00
Minos Galanakis
93a8c08910 Extract configuration components into a separate file.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-05 12:02:37 +01:00
Minos Galanakis
27968c1660 Extract configuration-x509 components into a separate file.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-05 12:01:55 +01:00
Minos Galanakis
5b4386c640 Extract configuration-platform components into a separate file.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-05 12:01:53 +01:00
Minos Galanakis
3ece57e173 Extract configuration-crypto-components into a separate file.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-05 12:01:08 +01:00
Minos Galanakis
b298d1f8d2 Extract compliance-components into a separate file.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-02 02:08:54 +01:00
Minos Galanakis
3bd6c30e13 Extract compiler-components into a separate file.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-02 02:08:54 +01:00
Minos Galanakis
2148e5c603 Extract build-components into a separate file.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-02 02:08:54 +01:00
Minos Galanakis
e431739c72 Extract basic-components into a separate file.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-02 02:08:54 +01:00
Minos Galanakis
f7d1cb0275 Separate all.sh from components.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-02 02:08:54 +01:00
Bence Szépkúti
52992e5c38
Merge pull request #9395 from sezrab/mbedtls_test_ssl_message_queue_pop_info-3.6
[Backport 3.6] tests/ssl_helpers: Check that message queue is popped
2024-08-01 18:38:31 +00:00
Minos Galanakis
f1f086e4a3 Applied consistent style.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-01 18:37:41 +01:00
Minos Galanakis
7771119069 Created placeholder component files.
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2024-08-01 18:37:33 +01:00
Thomas Daubney
2f556400c3 Add functions to detect project
Signed-off-by: Thomas Daubney <thomas.daubney@arm.com>
2024-07-31 16:05:35 +01:00
Gilles Peskine
6907e6ceec More diversified sizes in tests
Test the minimum size that caused an overflow in all configurations,
and also a mostly arbitrary larger size.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2024-07-25 18:39:53 +02:00
Gilles Peskine
4269ee6f2d Fix stack buffer overflow in ECDSA signature format conversions
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2024-07-25 18:39:53 +02:00
Ronald Cron
1640bd3154 Update auto-generated psa_test_wrappers.
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2024-07-23 18:16:57 +02:00
Ronald Cron
c025f31399 tests: CMake: Align/fix config test suite generation
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2024-07-23 07:51:10 +02:00
Gilles Peskine
33218d2b30
Merge pull request #9329 from sezrab/replace_MBEDTLS_MD_CAN_MD5_with_PSA_WANT-3.6
Backport 3.6: Add MD5 support for requires_hash_alg
2024-07-18 09:41:05 +00:00
Sam Berry
602550162c Add TLS: password protected... to ignored_tests list
Signed-off-by: Sam Berry <sam.berry@arm.com>
2024-07-17 10:03:40 +01:00
Sam Berry
e2720447b6 Reverted requires_cipher_enabled AES
Signed-off-by: Sam Berry <sam.berry@arm.com>
2024-07-17 10:02:34 +01:00
Sam Berry
e7e5c7e4c1 Changed some tests to use requires_cipher_enabled
I expect some will still skip due to `MBEDTLS_CIPHER_MODE_CBC` being unset.

Signed-off-by: Sam Berry <sam.berry@arm.com>
2024-07-17 10:02:34 +01:00
Sam Berry
06b91be210 Added support for MD5 in requires_hash_alg
Signed-off-by: Sam Berry <sam.berry@arm.com>
2024-07-17 10:02:34 +01:00
Tomás González
1fb69a9e91 tests/ssl_helpers: Check that message queue is popped
mbedtls_test_mock_tcp_recv_msg is currently popping a message
queue and does not check if this was done correctly.

This extra check makes the test more complete/robust.

Signed-off-by: Tomás González <tomasagustin.gonzalezorlando@arm.com>
2024-07-15 11:07:38 +01:00
Wenxing Hou
848bccf1ce Fix some typo for include folder
Signed-off-by: Wenxing Hou <wenxing.hou@intel.com>
2024-07-12 11:38:53 +03:00
David Horstmann
77074905bb Update generated tls13 testcase script
Signed-off-by: David Horstmann <david.horstmann@arm.com>
2024-07-08 15:36:48 +01:00
David Horstmann
d762d94dfb Move variable into generated bash
Move the DATA_FILES_PATH_VAR variable into the generated bash rather
than only variablising it in the python that generates the test script.

Signed-off-by: David Horstmann <david.horstmann@arm.com>
2024-07-08 15:36:48 +01:00
David Horstmann
316beb349d Simplify path in audit-validity-dates.py
Signed-off-by: David Horstmann <david.horstmann@arm.com>
2024-07-08 15:36:48 +01:00
David Horstmann
72edc66437 Simplify data_files path in compat test generation
Signed-off-by: David Horstmann <david.horstmann@arm.com>
2024-07-08 15:36:48 +01:00
David Horstmann
5ab92be10a Use variable for data_files path in ssl-opt.sh
Signed-off-by: David Horstmann <david.horstmann@arm.com>
2024-07-08 15:36:48 +01:00
David Horstmann
79c8a65be3 Replace data_files path with variable in compat.sh
Signed-off-by: David Horstmann <david.horstmann@arm.com>
2024-07-08 15:36:48 +01:00
David Horstmann
7d0e5d20ab Correct redundant framework/../framework paths
Signed-off-by: David Horstmann <david.horstmann@arm.com>
2024-07-08 15:36:48 +01:00
David Horstmann
3e00faf166 Fix line-too-long in generate_tls13_compat_tests.py
Signed-off-by: David Horstmann <david.horstmann@arm.com>
2024-07-08 15:36:48 +01:00
David Horstmann
5282ecddaa Update directory-climbing path in context-info.sh
A path containing '../../' was defined in relation to a directory in the
tests/data_files directory. Since this has been moved to
framework/data_files, we must update the path to refer correctly to the
same location as before.

Signed-off-by: David Horstmann <david.horstmann@arm.com>
2024-07-08 15:36:48 +01:00