From 61f8dc4365098f537f0341ef5b7a64bb6007bfb9 Mon Sep 17 00:00:00 2001 From: Euripedes Rocha Filho Date: Tue, 8 Dec 2020 18:13:39 +0000 Subject: [PATCH] examples/mqtt : Fix ssl mutual auth to use event loop The example for mqtt ssl mutual authentication is now using the event loop. Thi modification makes it uniform with all the other mqtt examples. --- examples/protocols/mqtt/ssl_mutual_auth/main/app_main.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/examples/protocols/mqtt/ssl_mutual_auth/main/app_main.c b/examples/protocols/mqtt/ssl_mutual_auth/main/app_main.c index 8c63b773a6..f5eb76933d 100644 --- a/examples/protocols/mqtt/ssl_mutual_auth/main/app_main.c +++ b/examples/protocols/mqtt/ssl_mutual_auth/main/app_main.c @@ -38,7 +38,7 @@ extern const uint8_t client_key_pem_end[] asm("_binary_client_key_end"); extern const uint8_t server_cert_pem_start[] asm("_binary_mosquitto_org_crt_start"); extern const uint8_t server_cert_pem_end[] asm("_binary_mosquitto_org_crt_end"); -static esp_err_t mqtt_event_handler(esp_mqtt_event_handle_t event) +static esp_err_t mqtt_event_handler_cb(esp_mqtt_event_handle_t event) { esp_mqtt_client_handle_t client = event->client; int msg_id; @@ -85,11 +85,15 @@ static esp_err_t mqtt_event_handler(esp_mqtt_event_handle_t event) return ESP_OK; } +static void mqtt_event_handler(void *handler_args, esp_event_base_t base, int32_t event_id, void *event_data) { + ESP_LOGD(TAG, "Event dispatched from event loop base=%s, event_id=%d", base, event_id); + mqtt_event_handler_cb(event_data); +} + static void mqtt_app_start(void) { const esp_mqtt_client_config_t mqtt_cfg = { .uri = "mqtts://test.mosquitto.org:8884", - .event_handle = mqtt_event_handler, .client_cert_pem = (const char *)client_cert_pem_start, .client_key_pem = (const char *)client_key_pem_start, .cert_pem = (const char *)server_cert_pem_start, @@ -97,6 +101,7 @@ static void mqtt_app_start(void) ESP_LOGI(TAG, "[APP] Free memory: %d bytes", esp_get_free_heap_size()); esp_mqtt_client_handle_t client = esp_mqtt_client_init(&mqtt_cfg); + esp_mqtt_client_register_event(client, ESP_EVENT_ANY_ID, mqtt_event_handler, client); esp_mqtt_client_start(client); }