Add mbedTLS 4.x CI coverage - #2744
Conversation
|
Azure Pipelines: Successfully started running 2 pipeline(s). There may be pipelines that require an authorized user to comment /azp run to run. |
4000d25 to
9ff8e10
Compare
mbedTLS 3.6 LTS goes EOL in March 2027 and mbedTLS 4.x is now the supported line. Adds an mbedtls_4x job (build + e2e) alongside the existing 2.16, 2.28 and 3.x jobs, and notes the mbedtls_ssl_conf_min_version -> mbedtls_ssl_conf_min_tls_version rename in the TLS configuration doc. The adapter changes this job exercises live in azure-c-shared-utility; the mbedtls_4x job stays red here until that change and the nested c-utility references are rolled forward. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
9ff8e10 to
9d53edc
Compare
78c7bae to
d9b0338
Compare
mbedTLS 3.6 LTS goes EOL in March 2027. mbedTLS 4.0 removed the public entropy/CTR_DRBG modules, mbedtls_ssl_conf_rng() and mbedtls_ssl_conf_min_version(), dropped the f_rng/p_rng parameters of mbedtls_pk_parse_key(), made mbedtls_pk_get_type() private, and requires psa_crypto_init() before any cryptographic operation. Rolls every azure-c-shared-utility reference forward to the commit carrying the mbedTLS 4.x adapter support, following the shape of #2662 which added mbedTLS 3.x support. The submodule consistency check requires all five references to agree, so the four dependencies that embed c-utility move together with the direct reference. Also adds an mbedtls_4x CI job (build + e2e) alongside the existing 2.16, 2.28 and 3.x jobs, and notes the mbedtls_ssl_conf_min_version -> mbedtls_ssl_conf_min_tls_version rename in the TLS configuration doc. All submodule pointers are on master. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
d9b0338 to
11916c0
Compare
|
Azure Pipelines: Successfully started running 2 pipeline(s). There may be pipelines that require an authorized user to comment /azp run to run. |
There was a problem hiding this comment.
Pull request overview
This PR adds CI validation coverage for mbedTLS 4.x and updates documentation to reflect API renames introduced in mbedTLS 4.x, helping ensure the SDK continues to build and run tests as mbedTLS 3.6 approaches EOL.
Changes:
- Add a new Azure Pipelines job (
mbedtls_4x) that builds the SDK and runs E2E tests against mbedTLS 4.2.0 on Ubuntu 24.04. - Update TLS configuration documentation to note the
mbedtls_ssl_conf_min_version→mbedtls_ssl_conf_min_tls_versionrename/removal in mbedTLS 4.x.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| build/.vsts-ci.yml | Adds an mbedtls_4x CI job that installs mbedTLS 4.2.0, builds, and runs E2E tests. |
| doc/configure_tls_protocol_version_and_ciphers.md | Documents the mbedTLS 4.x API rename/removal for minimum TLS version configuration. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
|
Fix: #2748. Everything else here is green, including |
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
52ead96 to
b631c50
Compare
Adds mbedTLS 4.x support.
mbedTLS 3.6 LTS reaches end of life in March 2027. mbedTLS 4.0 moved cryptography into TF-PSA-Crypto and removed the public entropy/CTR_DRBG modules,
mbedtls_ssl_conf_rng()andmbedtls_ssl_conf_min_version(), dropped thef_rng/p_rngparameters ofmbedtls_pk_parse_key(), madembedtls_pk_get_type()private, and requirespsa_crypto_init()before any cryptographic operation.Changes
azure-c-shared-utilityreferences forward to the commit with mbedTLS 4.x adapter support. The consistency check requires them to agree, souamqp,umqtt,deps/uhttpandprovisioning_client/deps/utpmmove with the directc-utilityreference — same shape as Update submodules (add support for mbedTLS 3.x) #2662, which added mbedTLS 3.x.build/.vsts-ci.yml: newmbedtls_4xjob (build + e2e) alongside 2.16, 2.28 and 3.x.doc/configure_tls_protocol_version_and_ciphers.md: notes thembedtls_ssl_conf_min_version->mbedtls_ssl_conf_min_tls_versionrename.All five pointers are on master.
Validation
Submodule consistency and "not ahead of master" were checked locally for all five references before pushing. A previous run of this branch had
Tests mbedTLS 4.xpassing along with 2.16, 2.28 and 3.x (29 jobs succeeded, none failed).