lwip-users
[Top][All Lists]
Advanced

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

[lwip-users] RE: lwip-users Digest, Vol 14, Issue 9


From: Eric Shufro
Subject: [lwip-users] RE: lwip-users Digest, Vol 14, Issue 9
Date: Mon, 11 Oct 2004 12:54:45 -0400

Kieran, 

Why would a pcb->next pointer end up pointing to itself (pcb)?

I get infinite loops and cant figure out why. Wonder if it's something with
the way I call tcpwrite. I create a new pcb, fill in an ip address struct
and call tcp_connect(...ip addr... callback...) etc..

When the callback gets called, I call tcp_write(...) and when the callback
indicated that the host has received the data, I tcp_close(pcb).

Somehow the pcb->next gets set to itself though.

The debug output of this operation looks like this, and the last line is
where its stuck in the infinite loop within the tcp_slowtmr().

Thanks,

--eric

tcp_connect to port 3000
tcp_enqueue(pcb=24F0, arg=0, len=0, flags=2, copy=0)
tcp_enqueue: queueing 6553:6554 (0x2)
tcp_output_segment: 6553:6553
tcp_write(pcb=24F0, arg=3030, len=25, copy=1) tcp_enqueue(pcb=24F0,
arg=3030, len=25, flags=0, copy=1)
tcp_enqueue: queueing 6554:6579 (0x0)
tcp_output_segment: 6554:6579
tcp_slowtmr: processing active pcb
tcp_slowtmr: polling application
tcp_output: nothing to send (0)
tcp_receive: window update 65510
tcp_close: closing in state State: ESTABLISHED

tcp_enqueue(pcb=24F0, arg=0, len=0, flags=1, copy=1)
tcp_enqueue: queueing 6579:6580 (0x1)
tcp_output_segment: 6579:6579
tcp_output: nothing to send (0)
tcp_receive: window update 65510
tcp_close: closing in state State: FIN_WAIT_2

tcp_output: nothing to send (0)
TCP connection closed 3000 -> 4097.
tcp_pcb_purge
tcp_close: closing in state State: TIMtcp_slowtmr: no active pcbs







reply via email to

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