Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PSA always enabled in 4.0 #8147

Open
5 tasks
daverodgman opened this issue Sep 1, 2023 · 2 comments
Open
5 tasks

PSA always enabled in 4.0 #8147

daverodgman opened this issue Sep 1, 2023 · 2 comments
Labels
api-break This issue/PR breaks the API and must wait for a new major version component-psa PSA keystore/dispatch layer (storage, drivers, …) enhancement size-m Estimated task size: medium (~1w)

Comments

@daverodgman
Copy link
Contributor

daverodgman commented Sep 1, 2023

  • MBEDTLS_USE_PSA_CRYPTO must be removed from mbedtls_config.h. The library must behave as if it was always enabled.
  • For supported cases, at least one of MBEDTLS_PSA_CRYPTO_C / MBEDTLS_PSA_CRYPTO_CLIENT must be always enabled. Disabling both would be needed for people who want an alternative PSA impl (this would not be a supported/validated case)
  • MBEDTLS_PSA_CRYPTO_CONFIG must be removed, and treated as always-enabled.
  • Identify dead code (ie code guarded by #if !defined that can never be built). Create tasks to remove this code.
  • Optionally, remove some/all of the dead code identified in the previous step
@daverodgman daverodgman added this to Mbed TLS 4.0 MUST in Backlog for Mbed TLS Sep 1, 2023
@daverodgman
Copy link
Contributor Author

See #5156 for earlier discussion on this

@daverodgman daverodgman added size-m Estimated task size: medium (~1w) component-psa PSA keystore/dispatch layer (storage, drivers, …) api-break This issue/PR breaks the API and must wait for a new major version enhancement and removed component-psa PSA keystore/dispatch layer (storage, drivers, …) api-break This issue/PR breaks the API and must wait for a new major version size-m Estimated task size: medium (~1w) labels Oct 11, 2023
@mpg
Copy link
Contributor

mpg commented Oct 31, 2023

I think we also want to identify test code that becomes redundant. For example, a lot of things are tested both with and without USE_PSA_CRYPTO, quite a few things tested with PSA_CRYPTO_C disabled, etc.

My gut feeling is that this task is larger than M - it's the kind of thing that looks easy on paper but where you tend to run into surprises. So, I'd be inclined to split it into smaller tasks - I think the first three items could be one task each.

Also, I agree with leaving some parts (remove dead code) to follow-up tasks but I'd strongly advise we address those tasks ASAP. One of the expected benefits of this work is to make maintenance easier, and we don't fully get that while there's still a lot of dead code around.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api-break This issue/PR breaks the API and must wait for a new major version component-psa PSA keystore/dispatch layer (storage, drivers, …) enhancement size-m Estimated task size: medium (~1w)
Projects
Backlog for Mbed TLS
Mbed TLS 4.0 MUST
Development

No branches or pull requests

2 participants