git: 9f2eeb02623d - main - [tcp] Fix ECN on finalizing sessions.

Richard Scheffenegger rscheff at FreeBSD.org
Thu Apr 8 13:26:26 UTC 2021


The branch main has been updated by rscheff:

URL: https://cgit.FreeBSD.org/src/commit/?id=9f2eeb02623d6a847a90da68a5892c25b14ce2d4

commit 9f2eeb02623d6a847a90da68a5892c25b14ce2d4
Author:     Richard Scheffenegger <rscheff at FreeBSD.org>
AuthorDate: 2021-04-08 12:50:34 +0000
Commit:     Richard Scheffenegger <rscheff at FreeBSD.org>
CommitDate: 2021-04-08 13:26:09 +0000

    [tcp] Fix ECN on finalizing sessions.
    
    A subtle oversight would subtly change new data packets
    sent after a shutdown() or close() call, while the send
    buffer is still draining.
    
    MFC after: 3 days
    Reviewed By: #transport, tuexen
    Sponsored by: NetApp, Inc.
    Differential Revision: https://reviews.freebsd.org/D29616
---
 sys/netinet/tcp_output.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys/netinet/tcp_output.c b/sys/netinet/tcp_output.c
index d4b5a328e2a6..e23cdc749e98 100644
--- a/sys/netinet/tcp_output.c
+++ b/sys/netinet/tcp_output.c
@@ -1181,7 +1181,7 @@ send:
 			tp->t_flags2 &= ~TF2_ECN_SND_ECE;
 	}
 
-	if (tp->t_state == TCPS_ESTABLISHED &&
+	if (TCPS_HAVEESTABLISHED(tp->t_state) &&
 	    (tp->t_flags2 & TF2_ECN_PERMIT)) {
 		/*
 		 * If the peer has ECN, mark data packets with


More information about the dev-commits-src-main mailing list