> Hi
>      We are using LWIP in an ecos based environment. We are having
> problems with LWIP TCP. The udp part is communicating successfully
> to a external TCP/IP stack from our system. But while using TCP
> client to connect to a external TCP server from with in the system,
> it is not working. The tcp_connect results in a SYNC to the external
> server. The server acks with a SYNC –ACK. Then a RST goes from the
> LWIP instead of an ACK to complete the initialization handshake.

>  
> Any further settings for this would be appreciated.

I had this problem too and I think I might have found a bug in lwIP. Can someone confirm or deny?

In the tcp_output function the tcp_output_segment function is called and then the SYN segment is added to the unacknowledged list. If the SYN-ACK packet arrives before the segment is added to the list, when the tcp_process function tries to validate the ACK number by comparing it to pcb->unacked->tcphdr->seqno + 1 it fails and a reset is sent. I guess the solution is to add the segment to the list before call tcp_output_segment.

--
Tim
_______________________________________________
lwip-users mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/lwip-users

Reply via email to