[Top][All Lists]
[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
- [lwip-users] RE: lwip-users Digest, Vol 14, Issue 9,
Eric Shufro <=