mirror of
https://github.com/espressif/esp-idf
synced 2025-03-10 01:29:21 -04:00
tcp_transport: Fix error handling of esp_tls_init()
This commit is contained in:
parent
1953af4fb2
commit
86bcd9fc21
@ -57,6 +57,7 @@ enum tcp_transport_errors {
|
|||||||
ERR_TCP_TRANSPORT_CONNECTION_CLOSED_BY_FIN,
|
ERR_TCP_TRANSPORT_CONNECTION_CLOSED_BY_FIN,
|
||||||
ERR_TCP_TRANSPORT_CONNECTION_FAILED,
|
ERR_TCP_TRANSPORT_CONNECTION_FAILED,
|
||||||
ERR_TCP_TRANSPORT_SETOPT_FAILED,
|
ERR_TCP_TRANSPORT_SETOPT_FAILED,
|
||||||
|
ERR_TCP_TRANSPORT_NO_MEM,
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -345,6 +345,9 @@ void capture_tcp_transport_error(esp_transport_handle_t t, enum tcp_transport_er
|
|||||||
case ERR_TCP_TRANSPORT_SETOPT_FAILED:
|
case ERR_TCP_TRANSPORT_SETOPT_FAILED:
|
||||||
err_handle->last_error = ESP_ERR_ESP_TLS_SOCKET_SETOPT_FAILED;
|
err_handle->last_error = ESP_ERR_ESP_TLS_SOCKET_SETOPT_FAILED;
|
||||||
break;
|
break;
|
||||||
|
case ERR_TCP_TRANSPORT_NO_MEM:
|
||||||
|
err_handle->last_error = ESP_ERR_NO_MEM;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -104,6 +104,11 @@ static int esp_tls_connect(esp_transport_handle_t t, const char *host, int port,
|
|||||||
|
|
||||||
ssl->ssl_initialized = true;
|
ssl->ssl_initialized = true;
|
||||||
ssl->tls = esp_tls_init();
|
ssl->tls = esp_tls_init();
|
||||||
|
if (ssl->tls == NULL) {
|
||||||
|
ESP_LOGE(TAG, "Failed to initialize new connection object");
|
||||||
|
capture_tcp_transport_error(t, ERR_TCP_TRANSPORT_NO_MEM);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
if (esp_tls_conn_new_sync(host, strlen(host), port, &ssl->cfg, ssl->tls) <= 0) {
|
if (esp_tls_conn_new_sync(host, strlen(host), port, &ssl->cfg, ssl->tls) <= 0) {
|
||||||
ESP_LOGE(TAG, "Failed to open a new connection");
|
ESP_LOGE(TAG, "Failed to open a new connection");
|
||||||
esp_transport_set_errors(t, ssl->tls->error_handle);
|
esp_transport_set_errors(t, ssl->tls->error_handle);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user