Apply by doing:
        cd /usr/src
        patch -p0 < 019_tcp2.patch

Rebuild your kernel.

Index: sys/netinet/tcp_input.c
===================================================================
RCS file: /cvs/src/sys/netinet/tcp_input.c,v
retrieving revision 1.132.2.2
retrieving revision 1.132.2.3
diff -u -p -r1.132.2.2 -r1.132.2.3
--- sys/netinet/tcp_input.c	3 Mar 2004 08:37:05 -0000	1.132.2.2
+++ sys/netinet/tcp_input.c	6 May 2004 00:39:39 -0000	1.132.2.3
@@ -116,6 +116,10 @@ int tcp_rst_ppslim = 100;		/* 100pps */
 int tcp_rst_ppslim_count = 0;
 struct timeval tcp_rst_ppslim_last;
 
+int tcp_synack_ppslim = 100;		/* 100pps */
+int tcp_synack_ppslim_count = 0;
+struct timeval tcp_synack_ppslim_last;
+
 #endif /* TUBA_INCLUDE */
 #define TCP_PAWS_IDLE	(24 * 24 * 60 * 60 * PR_SLOWHZ)
 
@@ -1620,8 +1624,12 @@ trimthenstep6:
 	 * error and we send an RST and drop the connection.
 	 */
 	if (tiflags & TH_SYN) {
-		tp = tcp_drop(tp, ECONNRESET);
-		goto dropwithreset;
+		if (ppsratecheck(&tcp_synack_ppslim_last, &tcp_synack_ppslim_count,
+		    tcp_synack_ppslim) == 0) {
+			/* XXX stat */
+			goto drop;
+		}
+		goto dropafterack;
 	}
 
 	/*
