diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c index 70b524c38d2b..7c59d2acb7e3 100644 --- a/sys/netinet/tcp_input.c +++ b/sys/netinet/tcp_input.c @@ -1786,6 +1786,8 @@ tcp_input(m, off0) if (tp->t_state == TCPS_SYN_RECEIVED || (tp->t_flags & TF_NEEDSYN)) goto step6; + else if (tp->t_flags & TF_ACKNOW) + goto dropafterack; else goto drop; } diff --git a/sys/netinet/tcp_reass.c b/sys/netinet/tcp_reass.c index 70b524c38d2b..7c59d2acb7e3 100644 --- a/sys/netinet/tcp_reass.c +++ b/sys/netinet/tcp_reass.c @@ -1786,6 +1786,8 @@ tcp_input(m, off0) if (tp->t_state == TCPS_SYN_RECEIVED || (tp->t_flags & TF_NEEDSYN)) goto step6; + else if (tp->t_flags & TF_ACKNOW) + goto dropafterack; else goto drop; }