mirror of
https://github.com/espressif/ESP8266_RTOS_SDK.git
synced 2025-08-06 15:15:15 +08:00
feat(lwip): Add option to receive rest data although TCP aborts
This commit is contained in:
@ -26,6 +26,12 @@ config LWIP_GLOBAL_DATA_LINK_IRAM
|
|||||||
help
|
help
|
||||||
Link LWIP global data(.bss .data COMMON) from DRAM to IRAM.
|
Link LWIP global data(.bss .data COMMON) from DRAM to IRAM.
|
||||||
|
|
||||||
|
config ESP_LWIP_RECV_REST_DATA
|
||||||
|
bool "Receive rest data although TCP aborts"
|
||||||
|
default n
|
||||||
|
help
|
||||||
|
Receive rest data although TCP aborts.
|
||||||
|
|
||||||
config TCPIP_RECVMBOX_SIZE
|
config TCPIP_RECVMBOX_SIZE
|
||||||
int "TCPIP task receive mail box size"
|
int "TCPIP task receive mail box size"
|
||||||
default 32
|
default 32
|
||||||
|
@ -500,6 +500,9 @@ netconn_recv_data(struct netconn *conn, void **new_buf)
|
|||||||
#endif /* LWIP_TCP */
|
#endif /* LWIP_TCP */
|
||||||
LWIP_ERROR("netconn_recv: invalid recvmbox", sys_mbox_valid(&conn->recvmbox), return ERR_CONN;);
|
LWIP_ERROR("netconn_recv: invalid recvmbox", sys_mbox_valid(&conn->recvmbox), return ERR_CONN;);
|
||||||
|
|
||||||
|
#if ESP_LWIP_RECV_REST_DATA
|
||||||
|
if (!sys_mbox_valid(&conn->recvmbox)) {
|
||||||
|
#endif
|
||||||
if (ERR_IS_FATAL(conn->last_err)) {
|
if (ERR_IS_FATAL(conn->last_err)) {
|
||||||
/* don't recv on fatal errors: this might block the application task
|
/* don't recv on fatal errors: this might block the application task
|
||||||
waiting on recvmbox forever! */
|
waiting on recvmbox forever! */
|
||||||
@ -507,6 +510,9 @@ netconn_recv_data(struct netconn *conn, void **new_buf)
|
|||||||
before the fatal error occurred - is that a problem? */
|
before the fatal error occurred - is that a problem? */
|
||||||
return conn->last_err;
|
return conn->last_err;
|
||||||
}
|
}
|
||||||
|
#if ESP_LWIP_RECV_REST_DATA
|
||||||
|
}
|
||||||
|
#endif
|
||||||
#if LWIP_TCP
|
#if LWIP_TCP
|
||||||
#if (LWIP_UDP || LWIP_RAW)
|
#if (LWIP_UDP || LWIP_RAW)
|
||||||
if (NETCONNTYPE_GROUP(conn->type) == NETCONN_TCP)
|
if (NETCONNTYPE_GROUP(conn->type) == NETCONN_TCP)
|
||||||
|
@ -82,6 +82,12 @@
|
|||||||
#define ESP_NONBLOCK 0
|
#define ESP_NONBLOCK 0
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef CONFIG_ESP_LWIP_RECV_REST_DATA
|
||||||
|
#define ESP_LWIP_RECV_REST_DATA 1
|
||||||
|
#else
|
||||||
|
#define ESP_LWIP_RECV_REST_DATA 0
|
||||||
|
#endif
|
||||||
|
|
||||||
//#define SOCKETS_TCP_TRACE
|
//#define SOCKETS_TCP_TRACE
|
||||||
|
|
||||||
#define TCP_HIGH_SPEED_RETRANSMISSION CONFIG_TCP_HIGH_SPEED_RETRANSMISSION
|
#define TCP_HIGH_SPEED_RETRANSMISSION CONFIG_TCP_HIGH_SPEED_RETRANSMISSION
|
||||||
|
Reference in New Issue
Block a user