fix: add bounded lwip connect waits and link status helper

This commit is contained in:
2026-04-22 23:59:19 +08:00
parent c8f27e21f1
commit afd90d357c
6 changed files with 23 additions and 1392 deletions
+7 -1
View File
@@ -1395,7 +1395,13 @@ lwip_netconn_do_connect(void *m)
#if LWIP_TCPIP_CORE_LOCKING
LWIP_ASSERT("state!", msg->conn->state == NETCONN_CONNECT);
UNLOCK_TCPIP_CORE();
sys_arch_sem_wait(LWIP_API_MSG_SEM(msg), 0);
if (sys_arch_sem_wait(LWIP_API_MSG_SEM(msg), msg->conn->recv_timeout) == SYS_ARCH_TIMEOUT) {
if (msg->conn->state == NETCONN_CONNECT) {
msg->conn->current_msg = NULL;
msg->conn->state = NETCONN_NONE;
msg->err = ERR_TIMEOUT;
}
}
LOCK_TCPIP_CORE();
LWIP_ASSERT("state!", msg->conn->state != NETCONN_CONNECT);
#endif /* LWIP_TCPIP_CORE_LOCKING */