/[lwip]/lwip/src/core/tcp.c
ViewVC logotype

Diff of /lwip/src/core/tcp.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.45 by softins, Tue Jul 27 16:08:26 2004 UTC revision 1.46 by kieranm, Sun Sep 12 16:34:06 2004 UTC
# Line 590  tcp_slowtmr(void) Line 590  tcp_slowtmr(void)
590          if (pcb->state != SYN_SENT) {          if (pcb->state != SYN_SENT) {
591            pcb->rto = ((pcb->sa >> 3) + pcb->sv) << tcp_backoff[pcb->nrtx];            pcb->rto = ((pcb->sa >> 3) + pcb->sv) << tcp_backoff[pcb->nrtx];
592          }          }
         tcp_rexmit(pcb);  
593          /* Reduce congestion window and ssthresh. */          /* Reduce congestion window and ssthresh. */
594          eff_wnd = LWIP_MIN(pcb->cwnd, pcb->snd_wnd);          eff_wnd = LWIP_MIN(pcb->cwnd, pcb->snd_wnd);
595          pcb->ssthresh = eff_wnd >> 1;          pcb->ssthresh = eff_wnd >> 1;
# Line 600  tcp_slowtmr(void) Line 599  tcp_slowtmr(void)
599          pcb->cwnd = pcb->mss;          pcb->cwnd = pcb->mss;
600          LWIP_DEBUGF(TCP_CWND_DEBUG, ("tcp_slowtmr: cwnd %u ssthresh %u\n",          LWIP_DEBUGF(TCP_CWND_DEBUG, ("tcp_slowtmr: cwnd %u ssthresh %u\n",
601                                  pcb->cwnd, pcb->ssthresh));                                  pcb->cwnd, pcb->ssthresh));
602        }  
603            /* The following needs to be called AFTER cwnd is set to one mss - STJ */
604            tcp_rexmit_rto(pcb);
605         }
606      }      }
607      /* Check if this PCB has stayed too long in FIN-WAIT-2 */      /* Check if this PCB has stayed too long in FIN-WAIT-2 */
608      if (pcb->state == FIN_WAIT_2) {      if (pcb->state == FIN_WAIT_2) {

Legend:
Removed from v.1.45  
changed lines
  Added in v.1.46

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26