Kieran Mansley - 14th July 2004

* Only move a single segment from the unacked queue to the unsent queue when performing a retransmit
This commit is contained in:
kieranm 2004-07-14 09:48:27 +00:00
parent c356f560e8
commit 8273b54108

View File

@ -577,14 +577,10 @@ tcp_rexmit(struct tcp_pcb *pcb)
return;
}
/* Move all unacked segments to the unsent queue. */
for (seg = pcb->unacked; seg->next != NULL; seg = seg->next);
seg->next = pcb->unsent;
pcb->unsent = pcb->unacked;
pcb->unacked = NULL;
/* Move the first unacked segment to the unsent queue */
seg = pcb->unacked->next;
pcb->unacked->next = pcb->unsent;
pcb->unacked = seg;
pcb->snd_nxt = ntohl(pcb->unsent->tcphdr->seqno);