diff --git a/lib/plat/freertos/private-lib-plat-freertos.h b/lib/plat/freertos/private-lib-plat-freertos.h index 48f113725..9589f9885 100644 --- a/lib/plat/freertos/private-lib-plat-freertos.h +++ b/lib/plat/freertos/private-lib-plat-freertos.h @@ -94,6 +94,7 @@ typedef SemaphoreHandle_t lws_mutex_t; #define LWS_ENOTCONN ENOTCONN #define LWS_EWOULDBLOCK EWOULDBLOCK #define LWS_EADDRINUSE EADDRINUSE + #define LWS_ECONNABORTED ECONNABORTED #define lws_set_blocking_send(wsi) diff --git a/lib/tls/mbedtls/mbedtls-ssl.c b/lib/tls/mbedtls/mbedtls-ssl.c index c0f9046f2..b894e1ea1 100644 --- a/lib/tls/mbedtls/mbedtls-ssl.c +++ b/lib/tls/mbedtls/mbedtls-ssl.c @@ -75,6 +75,11 @@ lws_ssl_capable_read(struct lws *wsi, unsigned char *buf, size_t len) /* If the socket isn't connected anymore, bail out. */ goto do_err1; +#if defined(LWS_PLAT_FREERTOS) + if (errno == LWS_ECONNABORTED) + goto do_err1; +#endif + if (m == SSL_ERROR_ZERO_RETURN || m == SSL_ERROR_SYSCALL) goto do_err;