Skip to content

Commit 4efd852

Browse files
authored
Improvements in Mbed TLS for ESP32 (#2473)
***NO_CI***
1 parent c0454b9 commit 4efd852

17 files changed

+63
-28
lines changed

CMake/Modules/FindESP32_IDF.cmake

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,8 @@ list(APPEND ESP32_IDF_INCLUDE_DIRS ${esp32_idf_SOURCE_DIR}/components/log/includ
4545
list(APPEND ESP32_IDF_INCLUDE_DIRS ${esp32_idf_SOURCE_DIR}/components/hal/include)
4646
list(APPEND ESP32_IDF_INCLUDE_DIRS ${esp32_idf_SOURCE_DIR}/components/heap)
4747
list(APPEND ESP32_IDF_INCLUDE_DIRS ${esp32_idf_SOURCE_DIR}/components/heap/include)
48+
list(APPEND ESP32_IDF_INCLUDE_DIRS ${esp32_idf_SOURCE_DIR}/components/mbedtls/port/include)
49+
list(APPEND ESP32_IDF_INCLUDE_DIRS ${esp32_idf_SOURCE_DIR}/components/mbedtls/mbedtls/include)
4850
list(APPEND ESP32_IDF_INCLUDE_DIRS ${esp32_idf_SOURCE_DIR}/components/nvs_flash/include)
4951
list(APPEND ESP32_IDF_INCLUDE_DIRS ${esp32_idf_SOURCE_DIR}/components/newlib/platform_include)
5052
list(APPEND ESP32_IDF_INCLUDE_DIRS ${esp32_idf_SOURCE_DIR}/components/wpa_supplicant/include/esp_supplicant)

src/PAL/COM/sockets/ssl/mbedTLS/ssl_generic_init_internal.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,10 @@ bool ssl_generic_init_internal(
169169
// configure random generator
170170
mbedtls_ssl_conf_rng(context->conf, mbedtls_ctr_drbg_random, context->ctr_drbg);
171171

172+
#if defined(PLATFORM_ESP32) && defined(CONFIG_MBEDTLS_DEBUG)
173+
mbedtls_esp_enable_debug_log(context->conf, CONFIG_MBEDTLS_DEBUG_LEVEL);
174+
#endif
175+
172176
// CA root certs from store, if available
173177
if (g_TargetConfiguration.CertificateStore->Count > 0)
174178
{

targets/ESP32/_IDF/sdkconfig.debug_nopsram_ble.esp32

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -938,7 +938,7 @@ CONFIG_MBEDTLS_DEFAULT_MEM_ALLOC=y
938938
CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN=y
939939
CONFIG_MBEDTLS_SSL_IN_CONTENT_LEN=16384
940940
CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=4096
941-
# CONFIG_MBEDTLS_DYNAMIC_BUFFER is not set
941+
CONFIG_MBEDTLS_DYNAMIC_BUFFER=y
942942
# CONFIG_MBEDTLS_DEBUG is not set
943943

944944
#
@@ -947,7 +947,7 @@ CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=4096
947947
# CONFIG_MBEDTLS_CERTIFICATE_BUNDLE is not set
948948
# end of Certificate Bundle
949949

950-
CONFIG_MBEDTLS_ECP_RESTARTABLE=y
950+
# CONFIG_MBEDTLS_ECP_RESTARTABLE is not set
951951
CONFIG_MBEDTLS_CMAC_C=y
952952
CONFIG_MBEDTLS_HARDWARE_AES=y
953953
CONFIG_MBEDTLS_HARDWARE_MPI=y

targets/ESP32/_IDF/sdkconfig.default

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -709,8 +709,10 @@ CONFIG_MBEDTLS_DEFAULT_MEM_ALLOC=y
709709
CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN=y
710710
CONFIG_MBEDTLS_SSL_IN_CONTENT_LEN=16384
711711
CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=4096
712-
# CONFIG_MBEDTLS_DYNAMIC_BUFFER is not set
712+
CONFIG_MBEDTLS_DYNAMIC_BUFFER=y
713713
# CONFIG_MBEDTLS_DEBUG is not set
714+
CONFIG_MBEDTLS_SSL_VARIABLE_BUFFER_LENGTH=y
715+
# CONFIG_MBEDTLS_SSL_KEEP_PEER_CERTIFICATE is not set
714716

715717
#
716718
# Certificate Bundle
@@ -722,7 +724,7 @@ CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=4096
722724
# CONFIG_MBEDTLS_CUSTOM_CERTIFICATE_BUNDLE is not set
723725
# end of Certificate Bundle
724726

725-
CONFIG_MBEDTLS_ECP_RESTARTABLE=y
727+
# CONFIG_MBEDTLS_ECP_RESTARTABLE is not set
726728
CONFIG_MBEDTLS_CMAC_C=y
727729
CONFIG_MBEDTLS_HARDWARE_AES=y
728730
CONFIG_MBEDTLS_AES_USE_INTERRUPT=y

targets/ESP32/_IDF/sdkconfig.default.esp32

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -804,8 +804,9 @@ CONFIG_MBEDTLS_DEFAULT_MEM_ALLOC=y
804804
CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN=y
805805
CONFIG_MBEDTLS_SSL_IN_CONTENT_LEN=16384
806806
CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=4096
807-
# CONFIG_MBEDTLS_DYNAMIC_BUFFER is not set
808-
# CONFIG_MBEDTLS_DEBUG is not set
807+
CONFIG_MBEDTLS_DYNAMIC_BUFFER=y
808+
CONFIG_MBEDTLS_SSL_VARIABLE_BUFFER_LENGTH=y
809+
# CONFIG_MBEDTLS_SSL_KEEP_PEER_CERTIFICATE is not set
809810

810811
#
811812
# Certificate Bundle
@@ -817,7 +818,7 @@ CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=4096
817818
# CONFIG_MBEDTLS_CUSTOM_CERTIFICATE_BUNDLE is not set
818819
# end of Certificate Bundle
819820

820-
CONFIG_MBEDTLS_ECP_RESTARTABLE=y
821+
# CONFIG_MBEDTLS_ECP_RESTARTABLE is not set
821822
CONFIG_MBEDTLS_CMAC_C=y
822823
CONFIG_MBEDTLS_HARDWARE_AES=y
823824
CONFIG_MBEDTLS_AES_USE_INTERRUPT=y

targets/ESP32/_IDF/sdkconfig.default.esp32c3

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -377,7 +377,7 @@ CONFIG_ESP_MINIMAL_SHARED_STACK_SIZE=2048
377377
CONFIG_ESP_CONSOLE_UART_DEFAULT=y
378378
# CONFIG_ESP_CONSOLE_UART_CUSTOM is not set
379379
# CONFIG_ESP_CONSOLE_NONE is not set
380-
CONFIG_ESP_CONSOLE_SECONDARY_USB_SERIAL_JTAG is not set
380+
# CONFIG_ESP_CONSOLE_SECONDARY_USB_SERIAL_JTAG is not set
381381
CONFIG_ESP_CONSOLE_UART=y
382382
CONFIG_ESP_CONSOLE_MULTIPLE_UART=y
383383
CONFIG_ESP_CONSOLE_UART_NUM=0
@@ -840,7 +840,9 @@ CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN=y
840840
CONFIG_MBEDTLS_SSL_IN_CONTENT_LEN=16384
841841
CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=4096
842842
CONFIG_MBEDTLS_DYNAMIC_BUFFER=y
843-
# CONFIG_MBEDTLS_DEBUG=y
843+
CONFIG_MBEDTLS_DEBUG=y
844+
CONFIG_MBEDTLS_SSL_VARIABLE_BUFFER_LENGTH=y
845+
# CONFIG_MBEDTLS_SSL_KEEP_PEER_CERTIFICATE is not set
844846

845847
#
846848
# Certificate Bundle

targets/ESP32/_IDF/sdkconfig.default.esp32s2

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -811,8 +811,10 @@ CONFIG_MBEDTLS_DEFAULT_MEM_ALLOC=y
811811
CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN=y
812812
CONFIG_MBEDTLS_SSL_IN_CONTENT_LEN=16384
813813
CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=4096
814-
# CONFIG_MBEDTLS_DYNAMIC_BUFFER is not set
814+
CONFIG_MBEDTLS_DYNAMIC_BUFFER=y
815815
# CONFIG_MBEDTLS_DEBUG is not set
816+
CONFIG_MBEDTLS_SSL_VARIABLE_BUFFER_LENGTH=y
817+
# CONFIG_MBEDTLS_SSL_KEEP_PEER_CERTIFICATE is not set
816818

817819
#
818820
# Certificate Bundle
@@ -824,7 +826,7 @@ CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=4096
824826
# CONFIG_MBEDTLS_CUSTOM_CERTIFICATE_BUNDLE is not set
825827
# end of Certificate Bundle
826828

827-
CONFIG_MBEDTLS_ECP_RESTARTABLE=y
829+
# CONFIG_MBEDTLS_ECP_RESTARTABLE is not set
828830
CONFIG_MBEDTLS_CMAC_C=y
829831
CONFIG_MBEDTLS_HARDWARE_AES=y
830832
CONFIG_MBEDTLS_AES_USE_INTERRUPT=y

targets/ESP32/_IDF/sdkconfig.default_ble.esp32

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -807,8 +807,10 @@ CONFIG_MBEDTLS_DEFAULT_MEM_ALLOC=y
807807
CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN=y
808808
CONFIG_MBEDTLS_SSL_IN_CONTENT_LEN=16384
809809
CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=4096
810-
# CONFIG_MBEDTLS_DYNAMIC_BUFFER is not set
810+
CONFIG_MBEDTLS_DYNAMIC_BUFFER=y
811811
# CONFIG_MBEDTLS_DEBUG is not set
812+
CONFIG_MBEDTLS_SSL_VARIABLE_BUFFER_LENGTH=y
813+
# CONFIG_MBEDTLS_SSL_KEEP_PEER_CERTIFICATE is not set
812814

813815
#
814816
# Certificate Bundle
@@ -820,7 +822,7 @@ CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=4096
820822
# CONFIG_MBEDTLS_CUSTOM_CERTIFICATE_BUNDLE is not set
821823
# end of Certificate Bundle
822824

823-
CONFIG_MBEDTLS_ECP_RESTARTABLE=y
825+
# CONFIG_MBEDTLS_ECP_RESTARTABLE is not set
824826
CONFIG_MBEDTLS_CMAC_C=y
825827
CONFIG_MBEDTLS_HARDWARE_AES=y
826828
CONFIG_MBEDTLS_AES_USE_INTERRUPT=y

targets/ESP32/_IDF/sdkconfig.default_ble_rev3.esp32

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -806,8 +806,10 @@ CONFIG_MBEDTLS_DEFAULT_MEM_ALLOC=y
806806
CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN=y
807807
CONFIG_MBEDTLS_SSL_IN_CONTENT_LEN=16384
808808
CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=4096
809-
# CONFIG_MBEDTLS_DYNAMIC_BUFFER is not set
809+
CONFIG_MBEDTLS_DYNAMIC_BUFFER=y
810810
# CONFIG_MBEDTLS_DEBUG is not set
811+
CONFIG_MBEDTLS_SSL_VARIABLE_BUFFER_LENGTH=y
812+
# CONFIG_MBEDTLS_SSL_KEEP_PEER_CERTIFICATE is not set
811813

812814
#
813815
# Certificate Bundle
@@ -819,7 +821,7 @@ CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=4096
819821
# CONFIG_MBEDTLS_CUSTOM_CERTIFICATE_BUNDLE is not set
820822
# end of Certificate Bundle
821823

822-
CONFIG_MBEDTLS_ECP_RESTARTABLE=y
824+
# CONFIG_MBEDTLS_ECP_RESTARTABLE is not set
823825
CONFIG_MBEDTLS_CMAC_C=y
824826
CONFIG_MBEDTLS_HARDWARE_AES=y
825827
CONFIG_MBEDTLS_AES_USE_INTERRUPT=y

targets/ESP32/_IDF/sdkconfig.default_nopsram.esp32

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -781,8 +781,10 @@ CONFIG_MBEDTLS_DEFAULT_MEM_ALLOC=y
781781
CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN=y
782782
CONFIG_MBEDTLS_SSL_IN_CONTENT_LEN=16384
783783
CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=4096
784-
# CONFIG_MBEDTLS_DYNAMIC_BUFFER is not set
784+
CONFIG_MBEDTLS_DYNAMIC_BUFFER=y
785785
# CONFIG_MBEDTLS_DEBUG is not set
786+
CONFIG_MBEDTLS_SSL_VARIABLE_BUFFER_LENGTH=y
787+
# CONFIG_MBEDTLS_SSL_KEEP_PEER_CERTIFICATE is not set
786788

787789
#
788790
# Certificate Bundle
@@ -794,7 +796,7 @@ CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=4096
794796
# CONFIG_MBEDTLS_CUSTOM_CERTIFICATE_BUNDLE is not set
795797
# end of Certificate Bundle
796798

797-
CONFIG_MBEDTLS_ECP_RESTARTABLE=y
799+
# CONFIG_MBEDTLS_ECP_RESTARTABLE is not set
798800
CONFIG_MBEDTLS_CMAC_C=y
799801
CONFIG_MBEDTLS_HARDWARE_AES=y
800802
CONFIG_MBEDTLS_AES_USE_INTERRUPT=y

0 commit comments

Comments
 (0)