Bring in changes from Mbed TLS as of 2019-07-22 #187
No reviewers
Labels
No labels
api-spec
bug
CLA requested
CLA valid
compliance
DO NOT MERGE
duplicate
enhancement
feature branch
good first issue
HEADER FORMATTING ISSUE
help wanted
Information
invalid
Jira status: AWAITING REVIEW
Jira status: CLOSED
Jira status: DONE
Jira status: IN PROGRESS
Jira status: IN REVIEW
Jira status: OPEN
Jira status: REOPENED
Jira status: RESOLVED
mirrored
mirror internally
needs: backports
needs: ci
needs: design review
needs: preceding PR
needs: review
needs: work
notabug
open for community contribution
Product Backlog
question
ready for merge
security
stale
type: bug
type: enhancement
type: question
web pages
wontfix
writing
No milestone
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
gh-ARMmbed/mbed-crypto!187
Loading…
Reference in a new issue
No description provided.
Delete branch "tls-development-20190722"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Suggested ways of reviewing:
developmentfiles to the files changed in this PRCI failure is known issue with ABI checker script. Fix for ABI checker is here.
Ran locally and got the following output, which is a pass:
Previous iteration: #158. Diff:
github.com/ARMmbed/mbed-crypto@ac90bb77f2..ff4f094ee7Looks almost good to me.
I did the locally merge using some cached resolutions from my previous merge at https://github.com/ARMmbed/mbed-crypto/pull/158#pullrequestreview-258388604 and ended up with some differences:
tests/data_filesextensively. If you just runmake -C tests/data_files, you get a complaint aboutmbedtls_cert_req: not found, but it was broken before (https://github.com/ARMmbed/mbed-crypto/issues/194). When we have a baseline that this works, we can review exactly what we have in the crypto repository.@ -300,2 +310,4 @@//#define MBEDTLS_CHECK_PARAMS/*** \def MBEDTLS_CHECK_PARAMS_ASSERTYou changed
#MBEDTLS_PARAM_FAILEDtoMBEDTLS_PARAM_FAILEDto getdoxygen.shto pass. This isn't mentioned in the commit message. Why wasn't it necessary in mbedtls?@ -1007,18 +1031,27 @@/**Please move back to the previous wording of the warning about PSA. In Mbed Crypto, we don't advertise PSA Crypto itself as being experimental, only mbedtls_xxx-over-PSA. And this is Mbed Crypto, not Mbed TLS.
The merge is correct, but why is
MBEDTLS_PSA_CRYPTO_Cset here in mbedtls?@ -0,0 +1,47 @@#!/bin/bash -euRemove the calls to
compat.sh,ssl-opt.shandkey-exchanges.pl. You mentioned removing compat and ssl-opt in the commit message, but didn't actually do it.@ -1007,18 +1031,27 @@/**This warning is about the mbedtls_xxx-over-PSA option, so it should be advertised as being beta/experimental. I've reworded "as the rest of Mbed TLS yet" to "as Mbed TLS yet".
The test used to be a "cmake, full config + MBEDTLS_USE_PSA_CRYPTO, ASan" as the message says, but is actually a "full minus MBEDTLS_USE_PSA_CRYPTO: run the same set of tests as basic-build-test.sh" as the comment says. I believe the
scripts/config.pl set MBEDTLS_PSA_CRYPTO_Cline is an artifact leftover from the test's previous purpose, same with how the message is incorrect now. This should be fixed separate from this merge.@ -0,0 +1,47 @@#!/bin/bash -euFixed
@ -300,2 +310,4 @@//#define MBEDTLS_CHECK_PARAMS/*** \def MBEDTLS_CHECK_PARAMS_ASSERTI've reviewed the doxygen/mbedtls.doxyfile and include/mbedtls/config.h in both repos and don't see why this link should work in one but not the other.
I am a bit confused here about what is being claimed both on your end and my end.
Last time, I made it so we could use the same visualc template file style as Mbed TLS, even if the visualc script in Mbed Crypto is not identical.
This time, I did not change the visualc generation system within Mbed Crypto.
Even when generating visualc from the top level Mbed TLS project, it isn't necessary for the template styles to match (e.g. use of INCLUDE_DIRECTORIES), as Mbed TLS will use its versions of the templates, not Crypto's. Crypto's are used only when Crypto generates its visualc files.
Which approach did you go with in your trial merge?
@ -300,2 +310,4 @@//#define MBEDTLS_CHECK_PARAMS/*** \def MBEDTLS_CHECK_PARAMS_ASSERTFiled https://github.com/ARMmbed/mbed-crypto/issues/195 to track fixing this
Force pushed to fix review feedback:
@ -0,0 +1,47 @@#!/bin/bash -euIn the commit message, you mention rejecting compat and ssl-opt. Please either add key-exchanges or, preferably, use a higher-level formulation like “Remove calls to SSL-related scripts from basic-in-docker.sh”.
@ -1007,18 +1031,27 @@/**This warning is not about “the PSA Crypto API”, it's about using that API underneath mbedtls_xxx APIs. Please revert the whole paragraph.
About visualc include parametrization: there was a spurious “not” in my sentence, sorry. We both exchanged approaches. But as I said, it doesn't matter: both approaches are acceptable.
@ -1007,18 +1031,27 @@/**I made a change to avoid documenting the PSA Crypto API as is in beta stage in documentation for MBEDTLS_PSA_CRYPTO_C (we still have this documented in our README and possibly other places)
@ -0,0 +1,47 @@#!/bin/bash -euFixed to be more precise
Force pushed to address review feedback:
LGTM
CI failure is known issue with ABI checker script. Fix for ABI checker is here.
Ran locally and got the following output, which is a pass:
Fixing via https://github.com/ARMmbed/mbedtls/pull/2771