From d52955efdd023c11057d486a3892a11d20956ef2 Mon Sep 17 00:00:00 2001 From: Harshit Malpani Date: Tue, 13 Feb 2024 17:10:57 +0530 Subject: [PATCH] feat: Add event handler in simple https_server example --- examples/protocols/https_server/simple/main/main.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/examples/protocols/https_server/simple/main/main.c b/examples/protocols/https_server/simple/main/main.c index 123fcec711..7c58891e9a 100644 --- a/examples/protocols/https_server/simple/main/main.c +++ b/examples/protocols/https_server/simple/main/main.c @@ -27,6 +27,18 @@ static const char *TAG = "example"; +/* Event handler for catching system events */ +static void event_handler(void* arg, esp_event_base_t event_base, + int32_t event_id, void* event_data) +{ + if (event_base == ESP_HTTPS_SERVER_EVENT) { + if (event_id == HTTPS_SERVER_EVENT_ERROR) { + esp_https_server_last_error_t *last_error = (esp_tls_last_error_t *) event_data; + ESP_LOGE(TAG, "Error event triggered: last_error = %s, last_tls_err = %d, tls_flag = %d", esp_err_to_name(last_error->last_error), last_error->esp_tls_error_code, last_error->esp_tls_flags); + } + } +} + /* An HTTP GET handler */ static esp_err_t root_get_handler(httpd_req_t *req) { @@ -210,6 +222,7 @@ void app_main(void) ESP_ERROR_CHECK(esp_event_handler_register(IP_EVENT, IP_EVENT_ETH_GOT_IP, &connect_handler, &server)); ESP_ERROR_CHECK(esp_event_handler_register(ETH_EVENT, ETHERNET_EVENT_DISCONNECTED, &disconnect_handler, &server)); #endif // CONFIG_EXAMPLE_CONNECT_ETHERNET + ESP_ERROR_CHECK(esp_event_handler_register(ESP_HTTPS_SERVER_EVENT, ESP_EVENT_ANY_ID, &event_handler, NULL)); /* This helper function configures Wi-Fi or Ethernet, as selected in menuconfig. * Read "Establishing Wi-Fi or Ethernet Connection" section in