mbedtls: Enable time cert validation. #9089
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This enables date/time certificate validation for UNIX, STM32* and MIMXRT* ports.
I'm not sure if in STM32 or MIMXRT ports work (I have not tested it since I do not have the required hardware) but if that is not the case it should be close (I hope).
The problem with these two ports is that they do not include
<time.h>
which is required forMBED_TLS_HAVE_TIME_DATE
to work. From mbedtlsconfig.h
The solution is to use this macro
MBEDTLS_PLATFORM_GMTIME_R_ALT
So I tried to implement this function in both ports following
modutime.c
but not sure if it would work as expected. If anyone with the required hardware could do a test, it would be nice. 👍🏼For ESP32 port I have a working solution in #8968 , but it cannot be implemented yet I guess.