From 95247371e9aadcec045d06c18d79efaea6a08f7d Mon Sep 17 00:00:00 2001 From: Peter Harper Date: Wed, 13 Mar 2024 11:02:46 +0000 Subject: [PATCH] Use common mbedtls_config --- .../wifi/freertos/http_client/CMakeLists.txt | 2 +- .../freertos/http_client/mbedtls_config.h | 68 ++----------------- pico_w/wifi/http_client/CMakeLists.txt | 4 +- pico_w/wifi/http_client/mbedtls_config.h | 68 ++----------------- 4 files changed, 11 insertions(+), 131 deletions(-) diff --git a/pico_w/wifi/freertos/http_client/CMakeLists.txt b/pico_w/wifi/freertos/http_client/CMakeLists.txt index 2b1d439e4..b0744e3e1 100644 --- a/pico_w/wifi/freertos/http_client/CMakeLists.txt +++ b/pico_w/wifi/freertos/http_client/CMakeLists.txt @@ -9,7 +9,7 @@ target_compile_definitions(picow_freertos_http_client_nosys PRIVATE target_include_directories(picow_freertos_http_client_nosys PRIVATE ${CMAKE_CURRENT_LIST_DIR} ${CMAKE_CURRENT_LIST_DIR}/.. # for our common FreeRTOSConfig - ${CMAKE_CURRENT_LIST_DIR}/../.. # for our common lwipopts + ${CMAKE_CURRENT_LIST_DIR}/../.. # for our common lwipopts and mbedtls_config ) target_link_libraries(picow_freertos_http_client_nosys pico_cyw43_arch_lwip_threadsafe_background diff --git a/pico_w/wifi/freertos/http_client/mbedtls_config.h b/pico_w/wifi/freertos/http_client/mbedtls_config.h index 0ceab1aad..f182c5661 100644 --- a/pico_w/wifi/freertos/http_client/mbedtls_config.h +++ b/pico_w/wifi/freertos/http_client/mbedtls_config.h @@ -1,66 +1,6 @@ -/* Workaround for some mbedtls source files using INT_MAX without including limits.h */ -#include +#ifndef MBEDTLS_CONFIG_TLS_CLIENT_H +#define MBEDTLS_CONFIG_TLS_CLIENT_H -#define MBEDTLS_NO_PLATFORM_ENTROPY -#define MBEDTLS_ENTROPY_HARDWARE_ALT +#include "mbedtls_config_examples_common.h" -#define MBEDTLS_SSL_OUT_CONTENT_LEN 2048 - -#define MBEDTLS_ALLOW_PRIVATE_ACCESS -#define MBEDTLS_HAVE_TIME - -#define MBEDTLS_CIPHER_MODE_CBC -#define MBEDTLS_ECP_DP_SECP192R1_ENABLED -#define MBEDTLS_ECP_DP_SECP224R1_ENABLED -#define MBEDTLS_ECP_DP_SECP256R1_ENABLED -#define MBEDTLS_ECP_DP_SECP384R1_ENABLED -#define MBEDTLS_ECP_DP_SECP521R1_ENABLED -#define MBEDTLS_ECP_DP_SECP192K1_ENABLED -#define MBEDTLS_ECP_DP_SECP224K1_ENABLED -#define MBEDTLS_ECP_DP_SECP256K1_ENABLED -#define MBEDTLS_ECP_DP_BP256R1_ENABLED -#define MBEDTLS_ECP_DP_BP384R1_ENABLED -#define MBEDTLS_ECP_DP_BP512R1_ENABLED -#define MBEDTLS_ECP_DP_CURVE25519_ENABLED -#define MBEDTLS_KEY_EXCHANGE_RSA_ENABLED -#define MBEDTLS_PKCS1_V15 -#define MBEDTLS_SHA256_SMALLER -#define MBEDTLS_SSL_SERVER_NAME_INDICATION -#define MBEDTLS_AES_C -#define MBEDTLS_ASN1_PARSE_C -#define MBEDTLS_BIGNUM_C -#define MBEDTLS_CIPHER_C -#define MBEDTLS_CTR_DRBG_C -#define MBEDTLS_ENTROPY_C -#define MBEDTLS_ERROR_C -#define MBEDTLS_MD_C -#define MBEDTLS_MD5_C -#define MBEDTLS_OID_C -#define MBEDTLS_PKCS5_C -#define MBEDTLS_PK_C -#define MBEDTLS_PK_PARSE_C -#define MBEDTLS_PLATFORM_C -#define MBEDTLS_RSA_C -#define MBEDTLS_SHA1_C -#define MBEDTLS_SHA224_C -#define MBEDTLS_SHA256_C -#define MBEDTLS_SHA512_C -#define MBEDTLS_SSL_CLI_C -#define MBEDTLS_SSL_SRV_C -#define MBEDTLS_SSL_TLS_C -#define MBEDTLS_X509_CRT_PARSE_C -#define MBEDTLS_X509_USE_C -#define MBEDTLS_AES_FEWER_TABLES - -/* TLS 1.2 */ -#define MBEDTLS_SSL_PROTO_TLS1_2 -#define MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED -#define MBEDTLS_GCM_C -#define MBEDTLS_ECDH_C -#define MBEDTLS_ECP_C -#define MBEDTLS_ECDSA_C -#define MBEDTLS_ASN1_WRITE_C - -// The following is needed to parse a certificate -#define MBEDTLS_PEM_PARSE_C -#define MBEDTLS_BASE64_C +#endif \ No newline at end of file diff --git a/pico_w/wifi/http_client/CMakeLists.txt b/pico_w/wifi/http_client/CMakeLists.txt index 6577ef335..a1be39398 100644 --- a/pico_w/wifi/http_client/CMakeLists.txt +++ b/pico_w/wifi/http_client/CMakeLists.txt @@ -20,7 +20,7 @@ target_compile_definitions(picow_http_client PRIVATE ) target_include_directories(picow_http_client PRIVATE ${CMAKE_CURRENT_LIST_DIR} - ${CMAKE_CURRENT_LIST_DIR}/.. # for our common lwipopts + ${CMAKE_CURRENT_LIST_DIR}/.. # for our common lwipopts and mbedtls_config ) target_link_libraries(picow_http_client pico_cyw43_arch_lwip_threadsafe_background @@ -41,7 +41,7 @@ target_compile_definitions(picow_http_client_verify PRIVATE ) target_include_directories(picow_http_client_verify PRIVATE ${CMAKE_CURRENT_LIST_DIR} - ${CMAKE_CURRENT_LIST_DIR}/.. # for our common lwipopts + ${CMAKE_CURRENT_LIST_DIR}/.. # for our common lwipopts and mbedtls_config ) target_link_libraries(picow_http_client_verify pico_cyw43_arch_lwip_threadsafe_background diff --git a/pico_w/wifi/http_client/mbedtls_config.h b/pico_w/wifi/http_client/mbedtls_config.h index 0ceab1aad..f182c5661 100644 --- a/pico_w/wifi/http_client/mbedtls_config.h +++ b/pico_w/wifi/http_client/mbedtls_config.h @@ -1,66 +1,6 @@ -/* Workaround for some mbedtls source files using INT_MAX without including limits.h */ -#include +#ifndef MBEDTLS_CONFIG_TLS_CLIENT_H +#define MBEDTLS_CONFIG_TLS_CLIENT_H -#define MBEDTLS_NO_PLATFORM_ENTROPY -#define MBEDTLS_ENTROPY_HARDWARE_ALT +#include "mbedtls_config_examples_common.h" -#define MBEDTLS_SSL_OUT_CONTENT_LEN 2048 - -#define MBEDTLS_ALLOW_PRIVATE_ACCESS -#define MBEDTLS_HAVE_TIME - -#define MBEDTLS_CIPHER_MODE_CBC -#define MBEDTLS_ECP_DP_SECP192R1_ENABLED -#define MBEDTLS_ECP_DP_SECP224R1_ENABLED -#define MBEDTLS_ECP_DP_SECP256R1_ENABLED -#define MBEDTLS_ECP_DP_SECP384R1_ENABLED -#define MBEDTLS_ECP_DP_SECP521R1_ENABLED -#define MBEDTLS_ECP_DP_SECP192K1_ENABLED -#define MBEDTLS_ECP_DP_SECP224K1_ENABLED -#define MBEDTLS_ECP_DP_SECP256K1_ENABLED -#define MBEDTLS_ECP_DP_BP256R1_ENABLED -#define MBEDTLS_ECP_DP_BP384R1_ENABLED -#define MBEDTLS_ECP_DP_BP512R1_ENABLED -#define MBEDTLS_ECP_DP_CURVE25519_ENABLED -#define MBEDTLS_KEY_EXCHANGE_RSA_ENABLED -#define MBEDTLS_PKCS1_V15 -#define MBEDTLS_SHA256_SMALLER -#define MBEDTLS_SSL_SERVER_NAME_INDICATION -#define MBEDTLS_AES_C -#define MBEDTLS_ASN1_PARSE_C -#define MBEDTLS_BIGNUM_C -#define MBEDTLS_CIPHER_C -#define MBEDTLS_CTR_DRBG_C -#define MBEDTLS_ENTROPY_C -#define MBEDTLS_ERROR_C -#define MBEDTLS_MD_C -#define MBEDTLS_MD5_C -#define MBEDTLS_OID_C -#define MBEDTLS_PKCS5_C -#define MBEDTLS_PK_C -#define MBEDTLS_PK_PARSE_C -#define MBEDTLS_PLATFORM_C -#define MBEDTLS_RSA_C -#define MBEDTLS_SHA1_C -#define MBEDTLS_SHA224_C -#define MBEDTLS_SHA256_C -#define MBEDTLS_SHA512_C -#define MBEDTLS_SSL_CLI_C -#define MBEDTLS_SSL_SRV_C -#define MBEDTLS_SSL_TLS_C -#define MBEDTLS_X509_CRT_PARSE_C -#define MBEDTLS_X509_USE_C -#define MBEDTLS_AES_FEWER_TABLES - -/* TLS 1.2 */ -#define MBEDTLS_SSL_PROTO_TLS1_2 -#define MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA_ENABLED -#define MBEDTLS_GCM_C -#define MBEDTLS_ECDH_C -#define MBEDTLS_ECP_C -#define MBEDTLS_ECDSA_C -#define MBEDTLS_ASN1_WRITE_C - -// The following is needed to parse a certificate -#define MBEDTLS_PEM_PARSE_C -#define MBEDTLS_BASE64_C +#endif \ No newline at end of file