diff options
Diffstat (limited to 'sys/netinet/tcp_input.c')
-rw-r--r-- | sys/netinet/tcp_input.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c index 3b0bde8..657fef8 100644 --- a/sys/netinet/tcp_input.c +++ b/sys/netinet/tcp_input.c @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)tcp_input.c 8.12 (Berkeley) 5/24/95 - * $Id: tcp_input.c,v 1.52 1996/10/07 04:32:39 pst Exp $ + * $Id: tcp_input.c,v 1.53 1996/10/07 19:06:10 davidg Exp $ */ #ifndef TUBA_INCLUDE @@ -415,11 +415,15 @@ findpcb: so2 = sonewconn(so, 0); if (so2 == 0) { tcpstat.tcps_listendrop++; +#ifdef TCPSYNRED so2 = sodropablereq(so); - if (so2) - tcp_drop(sototcpcb(so2), ETIMEDOUT); - else - goto drop; + if (so2) { + tcp_drop(sototcpcb(so2), ETIMEDOUT); + so2 = sonewconn(so, 0); + } + if (!so2) +#endif + goto drop; } so = so2; /* |