From owner-freebsd-bugs@FreeBSD.ORG Sun Feb 12 18:40:10 2006 Return-Path: X-Original-To: freebsd-bugs@hub.freebsd.org Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 9A6D316A420 for ; Sun, 12 Feb 2006 18:40:10 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1C11143D45 for ; Sun, 12 Feb 2006 18:40:10 +0000 (GMT) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id k1CIe9Yc098227 for ; Sun, 12 Feb 2006 18:40:09 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id k1CIe97P098226; Sun, 12 Feb 2006 18:40:09 GMT (envelope-from gnats) Date: Sun, 12 Feb 2006 18:40:09 GMT Message-Id: <200602121840.k1CIe97P098226@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org From: Grant Edwards Cc: Subject: Re: kern/93236: [PATCH] Received out of window SYN in ESTABLISHED connection isn't ACKed as required by RFC793 X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Grant Edwards List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 12 Feb 2006 18:40:10 -0000 The following reply was made to PR kern/93236; it has been noted by GNATS. From: Grant Edwards To: bug-followup@FreeBSD.org, grante@visi.com Cc: Subject: Re: kern/93236: [PATCH] Received out of window SYN in ESTABLISHED connection isn't ACKed as required by RFC793 Date: Sun, 12 Feb 2006 12:38:57 -0600 This is a multi-part message in MIME format. --------------050209060503090801090106 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Here's the patch attached as a file. --------------050209060503090801090106 Content-Type: text/plain; name="tcp_input.c.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="tcp_input.c.patch" --- tcp_input.c-orig 2006-02-12 10:24:35.988707395 -0600 +++ tcp_input.c 2006-02-12 10:25:28.877515703 -0600 @@ -1758,20 +1758,22 @@ /* * If the ACK bit is off: if in SYN-RECEIVED state or SENDSYN * flag is on (half-synchronized state), then queue data for * later processing; else drop segment and return. */ if ((thflags & TH_ACK) == 0) { 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; } /* * Ack processing. */ switch (tp->t_state) { /* --------------050209060503090801090106--