diff --git a/components/mbedtls/Kconfig b/components/mbedtls/Kconfig new file mode 100644 index 0000000000..b9c92bd7cc --- /dev/null +++ b/components/mbedtls/Kconfig @@ -0,0 +1,37 @@ +menu "mbedTLS" + +config MBEDTLS_SSL_MAX_CONTENT_LEN + int "TLS maximum message content length" + default 16384 + range 512 16384 + help + Maximum TLS message length (in bytes) supported by mbedTLS. + + 16384 is the default and this value is required to comply + fully with TLS standards. + + However you can set a lower value in order to save RAM. This + is safe if the other end of the connection supports Maximum + Fragment Length Negotiation Extension (max_fragment_length, + see RFC6066) or you know for certain that it will never send a + message longer than a certain number of bytes. + + If the value is set too low, symptoms are a failed TLS + handshake or a return value of MBEDTLS_ERR_SSL_INVALID_RECORD + (-0x7200). + +config MBEDTLS_DEBUG + bool "Enable mbedTLS debugging" + default "no" + help + Enable mbedTLS debugging functions. + + If this option is enabled, use the mbedtls_debug_set_threshold() + and mbedtls_ssl_conf_dbg() functions to obtain debugging output + from mbedTLS. + + Note thatm mbedTLS debugging is not related to the ESP logging + functionality. See the "https_request_main" example for a + sample function which connects the two together. + +endmenu diff --git a/components/mbedtls/port/include/mbedtls/esp_config.h b/components/mbedtls/port/include/mbedtls/esp_config.h index 68be319c35..5a69ff78e4 100644 --- a/components/mbedtls/port/include/mbedtls/esp_config.h +++ b/components/mbedtls/port/include/mbedtls/esp_config.h @@ -27,6 +27,8 @@ #ifndef MBEDTLS_CONFIG_H #define MBEDTLS_CONFIG_H +#include "sdkconfig.h" + #if defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE) #define _CRT_SECURE_NO_DEPRECATE 1 #endif @@ -1659,7 +1661,9 @@ * * This module provides debugging functions. */ +#if CONFIG_MBEDTLS_DEBUG #define MBEDTLS_DEBUG_C +#endif /** * \def MBEDTLS_DES_C @@ -2481,7 +2485,7 @@ /* SSL options */ -#define MBEDTLS_SSL_MAX_CONTENT_LEN 5120 /**< Maxium fragment length in bytes, determines the size of each of the two internal I/O buffers */ +#define MBEDTLS_SSL_MAX_CONTENT_LEN CONFIG_MBEDTLS_SSL_MAX_CONTENT_LEN /**< Maxium fragment length in bytes, determines the size of each of the two internal I/O buffers */ //#define MBEDTLS_SSL_DEFAULT_TICKET_LIFETIME 86400 /**< Lifetime of session tickets (if enabled) */ //#define MBEDTLS_PSK_MAX_LEN 32 /**< Max size of TLS pre-shared keys, in bytes (default 256 bits) */ //#define MBEDTLS_SSL_COOKIE_TIMEOUT 60 /**< Default expiration delay of DTLS cookies, in seconds if HAVE_TIME, or in number of cookies issued */