From 6d7d89378ca0b4927cbd45cba61ade7336da7aad Mon Sep 17 00:00:00 2001 From: Aditya Patwardhan Date: Thu, 9 Apr 2026 17:14:41 +0530 Subject: [PATCH] fix(esp-tls): Use runtime assignment for static key config length in examples Linker symbol differences (prvtkey_pem_end - prvtkey_pem_start) are not compile-time constants and cannot be used in static initializers. (cherry picked from commit 4196734d1a5ddbb10e5fc7a3949ed53305ce1f3f) --- examples/protocols/esp_local_ctrl/main/esp_local_ctrl_service.c | 2 +- examples/protocols/https_server/simple/main/main.c | 2 +- .../protocols/https_server/wss_server/main/wss_server_example.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/examples/protocols/esp_local_ctrl/main/esp_local_ctrl_service.c b/examples/protocols/esp_local_ctrl/main/esp_local_ctrl_service.c index 084e80a1249..39f0ea31d0a 100644 --- a/examples/protocols/esp_local_ctrl/main/esp_local_ctrl_service.c +++ b/examples/protocols/esp_local_ctrl/main/esp_local_ctrl_service.c @@ -244,9 +244,9 @@ void start_esp_local_ctrl_service(void) .source = ESP_KEY_SOURCE_BUFFER, .buffer = { .data = prvtkey_pem_start, - .len = prvtkey_pem_end - prvtkey_pem_start, } }; + server_key.buffer.len = prvtkey_pem_end - prvtkey_pem_start; https_conf.server_key = &server_key; #else httpd_config_t http_conf = HTTPD_DEFAULT_CONFIG(); diff --git a/examples/protocols/https_server/simple/main/main.c b/examples/protocols/https_server/simple/main/main.c index deb33c722e1..0ae2613138f 100644 --- a/examples/protocols/https_server/simple/main/main.c +++ b/examples/protocols/https_server/simple/main/main.c @@ -211,9 +211,9 @@ static httpd_handle_t start_webserver(void) .source = ESP_KEY_SOURCE_BUFFER, .buffer = { .data = prvtkey_pem_start, - .len = prvtkey_pem_end - prvtkey_pem_start, } }; + server_key.buffer.len = prvtkey_pem_end - prvtkey_pem_start; conf.server_key = &server_key; #if CONFIG_EXAMPLE_ENABLE_HTTPS_SERVER_CUSTOM_CIPHERSUITES diff --git a/examples/protocols/https_server/wss_server/main/wss_server_example.c b/examples/protocols/https_server/wss_server/main/wss_server_example.c index b3c529f06f1..b6b31c36312 100644 --- a/examples/protocols/https_server/wss_server/main/wss_server_example.c +++ b/examples/protocols/https_server/wss_server/main/wss_server_example.c @@ -216,9 +216,9 @@ static httpd_handle_t start_wss_echo_server(void) .source = ESP_KEY_SOURCE_BUFFER, .buffer = { .data = prvtkey_pem_start, - .len = prvtkey_pem_end - prvtkey_pem_start, } }; + server_key.buffer.len = prvtkey_pem_end - prvtkey_pem_start; conf.server_key = &server_key; esp_err_t ret = httpd_ssl_start(&server, &conf);