Fix bug #51765 and fix commit 90873d6: call tcp_rexmit_fast() more than once on dupacks since the actual transmission is guarded by TF_INFR, not by pcb->dupacks

This commit is contained in:
goldsimon 2017-08-25 21:16:59 +02:00
parent f582c88339
commit c7edfdf987

View File

@ -1157,7 +1157,8 @@ tcp_receive(struct tcp_pcb *pcb)
if (pcb->dupacks > 3) { if (pcb->dupacks > 3) {
/* Inflate the congestion window */ /* Inflate the congestion window */
TCP_WND_INC(pcb->cwnd, pcb->mss); TCP_WND_INC(pcb->cwnd, pcb->mss);
} else if (pcb->dupacks >= 3) { }
if (pcb->dupacks >= 3) {
/* Do fast retransmit (checked via TF_INFR, not via dupacks count) */ /* Do fast retransmit (checked via TF_INFR, not via dupacks count) */
tcp_rexmit_fast(pcb); tcp_rexmit_fast(pcb);
} }