--- linux-2.0.37/net/ipv4/tcp_input.c.orig Fri Jul 23 17:25:14 1999 +++ linux/net/ipv4/tcp_input.c Fri Jul 23 17:29:43 1999 @@ -2764,7 +2764,18 @@ kfree_skb(skb, FREE_READ); return 0; } - + + if (sk->state==TCP_SYN_RECV && th->ack && skb->ack_seq!=sk->sent_seq) + { + /* + * Quick fix to detect too small ack_seq + * in 3rd packet of 3ws and force a RST segment. + */ + tcp_send_reset(daddr, saddr, th,sk->prot, opt, dev,0,255); + kfree_skb(skb, FREE_READ); + return 0; + } + rfc_step6: /* * If the accepted buffer put us over our queue size we