[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lwip-devel] [bug #37184] tcp_write problem for pcbs in the SYN_SENT sta
From: |
Zach Smith |
Subject: |
[lwip-devel] [bug #37184] tcp_write problem for pcbs in the SYN_SENT state |
Date: |
Thu, 13 Sep 2012 20:09:39 +0000 |
User-agent: |
Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.89 Safari/537.1 |
Follow-up Comment #2, bug #37184 (project lwip):
Maybe this is too simple but it seems to me like an easy solution to this
would be to use the minimum TCP MSS in this case where we haven't received the
other hosts advertised MSS yet. So, something like this:
instead of this line:
u16_t mss_local = mss_local = LWIP_MIN(pcb->mss, pcb->snd_wnd_max/2);
//if pcb->state == SYN_SENT then snd_wnd_max (other hosts advertised mss)is 0
do this:
u16_t mss_local;
if(pcb->state == SYN_SENT)
mss_local = pcb->mss; //mss has been initialized to 536
else
mss_local = LWIP_MIN(pcb->mss, pcb->snd_wnd_max/2);
Every host must be able to accept TCP segments of 536 minimum so this would
queue up segments of that size and they will be added to the unsent queue and
go out when the connection is complete.
_______________________________________________________
Reply to this item at:
<http://savannah.nongnu.org/bugs/?37184>
_______________________________________________
Message sent via/by Savannah
http://savannah.nongnu.org/
- [lwip-devel] [bug #37184] tcp_write problem for pcbs in the SYN_SENT state,
Zach Smith <=