On Tue, 30 Mar 1999, David Miller wrote:

> Nice work... but I think the following is a better fix, can you
> test it for me?  I just did this using my eyes.

Yes, this is correct, and fixes the more general problem. Attached is the
patch, including the changelog entry that I forgot to put in.

Taral
--- tcp_input.c.nodebug Mon Mar 29 17:37:43 1999
+++ tcp_input.c Tue Mar 30 10:41:37 1999
@@ -55,6 +55,7 @@
  *                                     work without delayed acks. 
  *             Andi Kleen:             Process packets with PSH set in the
  *                                     fast path.
+ *             Taral:                  Don't drop retransmitted packets before 
+looking at ACK field.
  */
 
 #include <linux/config.h>
@@ -253,7 +254,7 @@
        u32 end_window = tp->rcv_wup + tp->rcv_wnd;
 
        if (tp->rcv_wnd &&
-           after(end_seq, tp->rcv_nxt) &&
+           !before(end_seq, tp->rcv_nxt) &&
            before(seq, end_window))
                return 1;
        if (seq != end_window)

Reply via email to