mirror of
https://github.com/espressif/esp-mqtt.git
synced 2025-07-29 18:28:24 +02:00
Merge branch 'feature/transport_pass_error_codes' into 'master'
transport pass error codes to user code See merge request espressif/esp-mqtt!33
This commit is contained in:
@ -82,6 +82,7 @@ typedef struct {
|
||||
int topic_len; /*!< Length of the topic for this event asociated with this event */
|
||||
int msg_id; /*!< MQTT messaged id of message */
|
||||
int session_present; /*!< MQTT session_present flag for connection event */
|
||||
void* error_handle; /*!< esp-tls error handle referencing last error/flags captured in transports */
|
||||
} esp_mqtt_event_t;
|
||||
|
||||
typedef esp_mqtt_event_t *esp_mqtt_event_handle_t;
|
||||
|
@ -36,6 +36,7 @@
|
||||
#if ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(4, 0, 0)
|
||||
// Features supported in 4.0
|
||||
#define MQTT_SUPPORTED_FEATURE_WS_SUBPROTOCOL
|
||||
#define MQTT_SUPPORTED_FEATURE_TRANSPORT_ERR_REPORTING
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
@ -993,6 +993,11 @@ static void esp_mqtt_task(void *pv)
|
||||
client->config->port,
|
||||
client->config->network_timeout_ms) < 0) {
|
||||
ESP_LOGE(TAG, "Error transport connect");
|
||||
client->event.event_id = MQTT_EVENT_ERROR;
|
||||
#ifdef MQTT_SUPPORTED_FEATURE_TRANSPORT_ERR_REPORTING
|
||||
client->event.error_handle = esp_transport_get_error_handle(client->transport);
|
||||
#endif
|
||||
esp_mqtt_dispatch_event_with_msgid(client);
|
||||
esp_mqtt_abort_connection(client);
|
||||
break;
|
||||
}
|
||||
|
Reference in New Issue
Block a user