Commit Graph

1735 Commits

Author SHA1 Message Date
Ronald Cron
cb0b594a9d Merge pull request #10442 from davidhorstmann-arm/verify-result-default-failure
Hardening: Make `mbedtls_ssl_get_verify_result()` default to failure
2026-03-17 10:36:38 +00: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
Gilles Peskine
e8dec9c031 Unify the detection of Unix-like platforms
We were using slightly different guards to decide whether to include
`<unistd.h>` in different places. Unify those.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2026-03-04 11:32:18 +01:00
Ronald Cron
a5f45bb935 Add change log
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2026-02-23 12:12:36 +01:00
Gilles Peskine
f004998303 Add issue number
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2026-02-21 21:20:34 +01: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
Gilles Peskine
86eac795c9 Have MBEDTLS_TIMING_C require MBEDTLS_HAVE_TIME
Nowadays, the timing module just builds on a function that provides a timer
with millisecond resolution. In terms of platform requirements, this is
almost exactly equivalent to `mbedtls_ms_time()`
provides (`mbedtls_ms_time()` is arguably a little stronger because it is
supposed to last longer than a single timer object, but an application could
start a timer when it starts, so there's no real difference.) So it's a bit
silly that `timing.c` essentially reimplements this. Rely on
`mbedtls_ms_time()` instead.

This is an API break because in Mbed TLS 4.0, it was possible to enable
`MBEDTLS_TIMING_C` without `MBEDTLS_HAVE_TIME`. However, `timing.c` only
provided an implementation for Windows and Unix-like platforms, and on those
platforms, it is very likely that the default implementation of
`MBEDTLS_HAVE_TIME` would also work. (The main exception would be a platform
that has the traditional Unix function `gettimeofday()`, but not the 1990s
novelty `clock_gettime()`.) So make this an official requirement, as a
belated change that really should have gone into 4.0 if we'd taken the time
to dig into it.

Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2026-02-19 16:53:52 +01:00
David Horstmann
37e3dcf00d Reword ChangeLog entry
We do not return failure, but return -1u which is documented as a value
that indicates that the result is not available.

Signed-off-by: David Horstmann <david.horstmann@arm.com>
2026-02-16 16:18:01 +00:00
David Horstmann
e29d7be48e Add ChangeLog entry for verify_result hardening
Signed-off-by: David Horstmann <david.horstmann@arm.com>
2026-02-05 14:31:46 +00:00
Valerio Setti
2a72766d75 Merge pull request #10570 from valeriosetti/issue10349
mbedtls 4.x does not expose mbedtls_ecp_curve_list()
2026-02-03 11:01:11 +00:00
Valerio Setti
318e4314df changelog: add notes about helpers added to get list of known/supported TLS groups
Signed-off-by: Valerio Setti <valerio.setti@nordicsemi.no>
2026-02-02 13:38:03 +01:00
Nico Geyso
cc53b069d9 Improve changelog for alert getter
Integrate suggestions by @ronald-cron-arm for changelog for alert
getter.

Signed-off-by: Nico Geyso <ng@gsmk.de>
2026-01-27 10:48:55 +01:00
Nico Geyso
d589854611 mbedtls_ssl_get_alert(): getter for fatal alerts
Even though the TLS RFCs do not mandate libraries to expose *Error
Alerts* (as defined in RFC8446 6.2 for TLS 1.3 and in RFC5246 7.2.2 for
TLS 1.2) to the user, there are use cases when it is handy to get the
actual last received fatal error instead of a generic one. For instance
this enables the user to differ between received fatal errors in case
`mbedtls_ssl_handshake()`, `mbedtls_ssl_handshake_step()` or
`mbedtls_ssl_read()` returned `MBEDTLS_ERR_SSL_FATAL_ALERT_MESSAGE`.

This changesets stores the last incoming fatal alert in
`mbedtls_ssl_context` and provides `mbedtls_ssl_get_alert()` as a getter
for retrieving it. Another option would be to provide a callback
mechanisms for all kinds of alerts (not only fatals) but for simplicity
I discarded this option.

Signed-off-by: Nico Geyso <ng@gsmk.de>
2025-12-10 19:37:07 +01:00
Gilles Peskine
28f745515e Changelog entry for fix #10502
Signed-off-by: Gilles Peskine <Gilles.Peskine@arm.com>
2025-11-20 10:28:30 +01:00
Valerio Setti
525dd917dc Merge pull request #10477 from Cube707/fix/iar-compiler-warning
add cast to fix IAR compiler errors
2025-10-31 12:33:26 +00:00
Jan Spannberger
a5384bdf09 add cast to fix IAR compiler errors
IAR throws a warning "mixed ENUM with other type"

Signed-off-by: Jan Spannberger <jan.spannberger@siemens.com>
2025-10-28 15:13:08 +01:00
Luc Schrijvers
ffc2606bf2 Use GNUInstallDirs CMAKE_INSTALL_INCLUDEDDIR path for headers installation
Signed-off-by: Luc Schrijvers <begasus@gmail.com>
2025-10-24 12:50:51 +02:00
Minos Galanakis
38181b6d66 Assemble ChangeLog
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2025-10-13 16:51:48 +01:00
Gilles Peskine
0a49a8b577 Merge pull request #10397 from minosgalanakis/debug/restore_changelogs
Changelog entries post migration to TF-PSA-Crypto
2025-09-30 11:26:54 +00:00
Ben Taylor
c797a35acd Improve ChangeLog entry
Signed-off-by: Ben Taylor <ben.taylor@linaro.org>
2025-09-29 14:24:47 +01:00
Ben Taylor
b11d5bc949 Add ChangeLog
Signed-off-by: Ben Taylor <ben.taylor@linaro.org>
2025-09-29 14:24:47 +01:00
Minos Galanakis
55e4bf8acd Changelog: Introduced oid.txt
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2025-09-29 11:42:30 +01:00
Minos Galanakis
8120169554 Changelog: Removed check-config.txt
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2025-09-29 11:38:39 +01:00
Minos Galanakis
30f42edd43 Changelog: Reworded fix-clang-psa-build-without-dhm
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2025-09-29 11:38:10 +01:00
Minos Galanakis
cc3f987c4f Changelogs: Added CVEs
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2025-09-29 11:34:24 +01:00
Minos Galanakis
9364208e33 Changelogs: Fixed aligment issues
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2025-09-29 10:39:23 +01:00
Minos Galanakis
48bfaa9353 Changelog: Removed psa migrated entries
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2025-09-26 15:53:04 +01:00
Minos Galanakis
9b1db5da78 Moved entries back to Changelog.d
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2025-09-26 15:53:04 +01:00
Minos Galanakis
514375e8c1 Changelog: Brought entries from tf-psa-crypto
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2025-09-26 15:53:04 +01:00
Minos Galanakis
1789bbdde8 Changelog: Moved entries to tf-psa-psa
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2025-09-26 15:53:04 +01:00
Minos Galanakis
4b0923f653 Changelog: Brought forward changelog changes from #4716308
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2025-09-26 15:53:04 +01:00
Minos Galanakis
92a2154ed2 Changelog: Split changelogs for both libraries
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2025-09-26 15:53:04 +01:00
Minos Galanakis
582cb04c6c Changelog: Moved fix-clang-psa-build-without-dhm to MbedTLS
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2025-09-26 15:53:04 +01:00
Minos Galanakis
a439ac57d1 moved psa changelogs
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2025-09-26 15:53:04 +01:00
Minos Galanakis
f47c86561d Moved x509 related changelogs
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2025-09-26 15:53:04 +01:00
Minos Galanakis
5bb46ef737 Moved TLS related changelogs
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2025-09-26 15:53:04 +01:00
Minos Galanakis
120914be22 Removed entries already in tf-psa-crypto Clog
ripgrep was used to check against the
tf-psa-crypto.v1.0.0-beta Changelog.

rg --multiline -F -f {changelog_to_check}.txt -o ../tf-psa-crypto-ChangeLog
Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2025-09-26 15:53:04 +01:00
Minos Galanakis
93145552cd Restored changelog entries
This commit restores all changelog entries between the
mbedtls-3.6.0 tag and the mbedtls-4.0.0-beta tag.

git diff ce4683e..09dc57d --name-status -- ChangeLog.d

Signed-off-by: Minos Galanakis <minos.galanakis@arm.com>
2025-09-26 15:53:04 +01:00
Ronald Cron
7f65346177 Add change log
Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2025-09-22 18:00:26 +02:00
Ronald Cron
0dd31fe523 Introduce MBEDTLS_SSL_NULL_CIPHERSUITES
The support for TLS ciphersuites without
encryption does not rely anymore on the
MBEDTLS_CIPHER_NULL_CIPHER feature of
the cipher module. Introduce a specific
config option to enable these ciphersuites
and use it instead of MBEDTLS_CIPHER_NULL_CIPHER.

Signed-off-by: Ronald Cron <ronald.cron@arm.com>
2025-09-16 15:53:43 +02:00
Ben Taylor
c1e76e04fe correct whitespace style issue
Signed-off-by: Ben Taylor <ben.taylor@linaro.org>
2025-09-12 08:33:38 +01:00
Ben Taylor
486ec6e9b6 Improved the text in the Changelog
Signed-off-by: Ben Taylor <ben.taylor@linaro.org>
2025-09-11 13:22:40 +01:00
Ben Taylor
2f3523313b Add ChangeLog
Signed-off-by: Ben Taylor <ben.taylor@linaro.org>
2025-09-11 13:22:40 +01:00
Gilles Peskine
fda51526b5 Merge pull request #10363 from felixc-arm/error-codes-prereq
[1/3] Unify generic error codes (partial prerequisite)
2025-08-29 11:04:53 +00:00
Felix Conway
0f7cf1942b Small documentation fixes
Signed-off-by: Felix Conway <felix.conway@arm.com>
2025-08-29 09:41:59 +01:00
Felix Conway
a01ddf65b7 Revert unification for some error codes
Signed-off-by: Felix Conway <felix.conway@arm.com>
2025-08-28 17:39:10 +01: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
Manuel Pégourié-Gonnard
2bd0cfd272 Merge pull request #10331 from amtkarm1/task-remove-programs-pkey
Removed the programs/pkey directory
2025-08-26 09:27:00 +00:00
Ben Taylor
32e100a573 Renamed and corrected ChangeLog
Signed-off-by: Ben Taylor <ben.taylor@linaro.org>
2025-08-21 08:00:07 +01:00
Felix Conway
3962284de6 Update & fix changelog
Signed-off-by: Felix Conway <felix.conway@arm.com>
2025-08-20 11:00:01 +01:00