sys.h, sys.c, api_lib.c, tcpip.c: remove sys_mbox_fetch_timeout() (was only used for LWIP_SO_RCVTIMEO option) and use sys_arch_mbox_fetch() instead of sys_mbox_fetch() in api files. Now, users SHOULD NOT use internal lwIP features like "sys_timeout" in their application threads.

This commit is contained in:
fbernon
2007-05-22 20:51:34 +00:00
parent 0aaf69769f
commit 2ff620e1b5
5 changed files with 18 additions and 62 deletions

View File

@@ -443,7 +443,7 @@ netconn_accept(struct netconn *conn)
return NULL;
}
sys_mbox_fetch(conn->acceptmbox, (void *)&newconn);
sys_arch_mbox_fetch(conn->acceptmbox, (void *)&newconn, 0);
/* Register event with callback */
if (conn->callback)
(*conn->callback)(conn, NETCONN_EVT_RCVMINUS, 0);
@@ -488,7 +488,7 @@ netconn_recv(struct netconn *conn)
return NULL;
}
sys_mbox_fetch(conn->recvmbox, (void *)&p);
sys_arch_mbox_fetch(conn->recvmbox, (void *)&p, 0);
if (p != NULL)
{
@@ -529,9 +529,9 @@ netconn_recv(struct netconn *conn)
} else {
#if (LWIP_UDP || LWIP_RAW)
#if LWIP_SO_RCVTIMEO
sys_mbox_fetch_timeout(conn->recvmbox, (void *)&buf, conn->recv_timeout);
sys_arch_mbox_fetch(conn->recvmbox, (void *)&buf, conn->recv_timeout);
#else
sys_mbox_fetch(conn->recvmbox, (void *)&buf);
sys_arch_mbox_fetch(conn->recvmbox, (void *)&buf, 0);
#endif /* LWIP_SO_RCVTIMEO*/
if (buf!=NULL)
{ conn->recv_avail -= buf->p->tot_len;

View File

@@ -321,7 +321,7 @@ tcpip_apimsg(struct api_msg *apimsg)
msg.type = TCPIP_MSG_API;
msg.msg.apimsg = apimsg;
sys_mbox_post(mbox, &msg);
sys_mbox_fetch(apimsg->msg.conn->mbox, NULL);
sys_arch_mbox_fetch(apimsg->msg.conn->mbox, NULL, 0);
return ERR_OK;
}
return ERR_VAL;
@@ -333,17 +333,17 @@ err_t tcpip_netifapi(struct netifapi_msg* netifapimsg)
struct tcpip_msg msg;
if (mbox != SYS_MBOX_NULL) {
netifapimsg->sem = sys_sem_new(0);
netifapimsg->sem = sys_sem_new(0);
if (netifapimsg->sem == SYS_SEM_NULL) {
netifapimsg->err = ERR_MEM;
return netifapimsg->err;
}
}
msg.type = TCPIP_MSG_NETIFAPI;
msg.msg.netifapimsg = netifapimsg;
sys_mbox_post(mbox, &msg);
sys_sem_wait(netifapimsg->sem);
sys_sem_free(netifapimsg->sem);
sys_sem_free(netifapimsg->sem);
return netifapimsg->err;
}
return ERR_VAL;