mirror of
https://github.com/lwip-tcpip/lwip.git
synced 2024-11-16 23:15:37 +00:00
Added some more asserts to check that pcb->state != LISTEN
This commit is contained in:
parent
f9e286ff67
commit
1b79ac1160
@ -576,6 +576,9 @@ tcp_recved(struct tcp_pcb *pcb, u16_t len)
|
|||||||
{
|
{
|
||||||
int wnd_inflation;
|
int wnd_inflation;
|
||||||
|
|
||||||
|
/* pcb->state LISTEN not allowed here */
|
||||||
|
LWIP_ASSERT("don't call tcp_recved for listen-pcbs",
|
||||||
|
pcb->state != LISTEN);
|
||||||
LWIP_ASSERT("tcp_recved: len would wrap rcv_wnd\n",
|
LWIP_ASSERT("tcp_recved: len would wrap rcv_wnd\n",
|
||||||
len <= 0xffff - pcb->rcv_wnd );
|
len <= 0xffff - pcb->rcv_wnd );
|
||||||
|
|
||||||
@ -1275,7 +1278,9 @@ tcp_new(void)
|
|||||||
*/
|
*/
|
||||||
void
|
void
|
||||||
tcp_arg(struct tcp_pcb *pcb, void *arg)
|
tcp_arg(struct tcp_pcb *pcb, void *arg)
|
||||||
{
|
{
|
||||||
|
/* This function is allowed to be called for both listen pcbs and
|
||||||
|
connection pcbs. */
|
||||||
pcb->callback_arg = arg;
|
pcb->callback_arg = arg;
|
||||||
}
|
}
|
||||||
#if LWIP_CALLBACK_API
|
#if LWIP_CALLBACK_API
|
||||||
@ -1290,6 +1295,7 @@ tcp_arg(struct tcp_pcb *pcb, void *arg)
|
|||||||
void
|
void
|
||||||
tcp_recv(struct tcp_pcb *pcb, tcp_recv_fn recv)
|
tcp_recv(struct tcp_pcb *pcb, tcp_recv_fn recv)
|
||||||
{
|
{
|
||||||
|
LWIP_ASSERT("invalid socket state for recv callback", pcb->state != LISTEN);
|
||||||
pcb->recv = recv;
|
pcb->recv = recv;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1303,6 +1309,7 @@ tcp_recv(struct tcp_pcb *pcb, tcp_recv_fn recv)
|
|||||||
void
|
void
|
||||||
tcp_sent(struct tcp_pcb *pcb, tcp_sent_fn sent)
|
tcp_sent(struct tcp_pcb *pcb, tcp_sent_fn sent)
|
||||||
{
|
{
|
||||||
|
LWIP_ASSERT("invalid socket state for sent callback", pcb->state != LISTEN);
|
||||||
pcb->sent = sent;
|
pcb->sent = sent;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1317,6 +1324,7 @@ tcp_sent(struct tcp_pcb *pcb, tcp_sent_fn sent)
|
|||||||
void
|
void
|
||||||
tcp_err(struct tcp_pcb *pcb, tcp_err_fn err)
|
tcp_err(struct tcp_pcb *pcb, tcp_err_fn err)
|
||||||
{
|
{
|
||||||
|
LWIP_ASSERT("invalid socket state for err callback", pcb->state != LISTEN);
|
||||||
pcb->errf = err;
|
pcb->errf = err;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1331,6 +1339,8 @@ tcp_err(struct tcp_pcb *pcb, tcp_err_fn err)
|
|||||||
void
|
void
|
||||||
tcp_accept(struct tcp_pcb *pcb, tcp_accept_fn accept)
|
tcp_accept(struct tcp_pcb *pcb, tcp_accept_fn accept)
|
||||||
{
|
{
|
||||||
|
/* This function is allowed to be called for both listen pcbs and
|
||||||
|
connection pcbs. */
|
||||||
pcb->accept = accept;
|
pcb->accept = accept;
|
||||||
}
|
}
|
||||||
#endif /* LWIP_CALLBACK_API */
|
#endif /* LWIP_CALLBACK_API */
|
||||||
@ -1345,6 +1355,7 @@ tcp_accept(struct tcp_pcb *pcb, tcp_accept_fn accept)
|
|||||||
void
|
void
|
||||||
tcp_poll(struct tcp_pcb *pcb, tcp_poll_fn poll, u8_t interval)
|
tcp_poll(struct tcp_pcb *pcb, tcp_poll_fn poll, u8_t interval)
|
||||||
{
|
{
|
||||||
|
LWIP_ASSERT("invalid socket state for poll", pcb->state != LISTEN);
|
||||||
#if LWIP_CALLBACK_API
|
#if LWIP_CALLBACK_API
|
||||||
pcb->poll = poll;
|
pcb->poll = poll;
|
||||||
#else /* LWIP_CALLBACK_API */
|
#else /* LWIP_CALLBACK_API */
|
||||||
|
@ -898,6 +898,10 @@ tcp_output(struct tcp_pcb *pcb)
|
|||||||
s16_t i = 0;
|
s16_t i = 0;
|
||||||
#endif /* TCP_CWND_DEBUG */
|
#endif /* TCP_CWND_DEBUG */
|
||||||
|
|
||||||
|
/* pcb->state LISTEN not allowed here */
|
||||||
|
LWIP_ASSERT("don't call tcp_output for listen-pcbs",
|
||||||
|
pcb->state != LISTEN);
|
||||||
|
|
||||||
/* First, check if we are invoked by the TCP input processing
|
/* First, check if we are invoked by the TCP input processing
|
||||||
code. If so, we do not output anything. Instead, we rely on the
|
code. If so, we do not output anything. Instead, we rely on the
|
||||||
input processing code to call us when input processing is done
|
input processing code to call us when input processing is done
|
||||||
|
Loading…
Reference in New Issue
Block a user