lwip-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lwip-users] 0.7.1: Assert fails in tcp_process


From: Tom C. Barker
Subject: [lwip-users] 0.7.1: Assert fails in tcp_process
Date: Tue, 9 Mar 2004 16:20:25 -0800

Hello,

Could anyone explain why I might consistently be getting any one of
the following failing ASSERTs? 

( I would think someone has run into these issues or the ASSERTs
would never have been added.)

Thanks,
Tom

(1) In tcp.c, tcp_slowtmr(), it will fail on pcb->state != TIME_WAIT.

 while (pcb != NULL) {
    LWIP_DEBUGF(TCP_DEBUG, ("tcp_slowtmr: processing active pcb\n"));
    LWIP_ASSERT("tcp_slowtmr: active pcb->state != CLOSED\n", pcb->state !=
CLOSED);
    LWIP_ASSERT("tcp_slowtmr: active pcb->state != LISTEN\n", pcb->state !=
LISTEN);
    LWIP_ASSERT("tcp_slowtmr: active pcb->state != TIME-WAIT\n", pcb->state
!= TIME_WAIT);


(2) In tcpin.c, tcp_receive(), it will fail on ( pcb->unacked != NULL ||
pcb->unsent != NULL )

LWIP_DEBUGF(TCP_QLEN_DEBUG, ("%u (after freeing unacked)\n", (unsigned
int)pcb->snd_queuelen));
  if (pcb->snd_queuelen != 0) {
    LWIP_ASSERT("tcp_receive: valid queue length", pcb->unacked != NULL ||
     pcb->unsent != NULL);
  }


(3) In tcpout.c, tcp_enqueue(), it will fail on ( pcb->unacked != NULL ||
pcb->unsent != NULL )
  if (pcb->snd_queuelen != 0) {
    LWIP_ASSERT("tcp_enqueue: valid queue length", pcb->unacked != NULL ||
    pcb->unsent != NULL);
  }





reply via email to

[Prev in Thread] Current Thread [Next in Thread]