lwip-devel
[Top][All Lists]
Advanced

[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/




reply via email to

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