Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/netinet tcp_input: set ECE flag even if CWR flag is active.



details:   https://anonhg.NetBSD.org/src/rev/cd4e80d0ac56
branches:  trunk
changeset: 754007:cd4e80d0ac56
user:      rmind <rmind%NetBSD.org@localhost>
date:      Fri Apr 16 03:13:03 2010 +0000

description:
tcp_input: set ECE flag even if CWR flag is active.
Submitted by Richard Scheffenegger in PR/43150.

diffstat:

 sys/netinet/tcp_input.c |  11 +++++------
 1 files changed, 5 insertions(+), 6 deletions(-)

diffs (39 lines):

diff -r 01abf5f46f8f -r cd4e80d0ac56 sys/netinet/tcp_input.c
--- a/sys/netinet/tcp_input.c   Fri Apr 16 02:57:15 2010 +0000
+++ b/sys/netinet/tcp_input.c   Fri Apr 16 03:13:03 2010 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: tcp_input.c,v 1.302 2010/04/01 14:31:51 tls Exp $      */
+/*     $NetBSD: tcp_input.c,v 1.303 2010/04/16 03:13:03 rmind Exp $    */
 
 /*
  * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
@@ -145,7 +145,7 @@
  */
 
 #include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: tcp_input.c,v 1.302 2010/04/01 14:31:51 tls Exp $");
+__KERNEL_RCSID(0, "$NetBSD: tcp_input.c,v 1.303 2010/04/16 03:13:03 rmind Exp $");
 
 #include "opt_inet.h"
 #include "opt_ipsec.h"
@@ -1657,6 +1657,9 @@
        }
 
        if (TCP_ECN_ALLOWED(tp)) {
+               if (tiflags & TH_CWR) {
+                       tp->t_flags &= ~TF_ECN_SND_ECE;
+               }
                switch (iptos & IPTOS_ECN_MASK) {
                case IPTOS_ECN_CE:
                        tp->t_flags |= TF_ECN_SND_ECE;
@@ -1669,10 +1672,6 @@
                        /* XXX: ignore for now -- rpaulo */
                        break;
                }
-
-               if (tiflags & TH_CWR)
-                       tp->t_flags &= ~TF_ECN_SND_ECE;
-
                /*
                 * Congestion experienced.
                 * Ignore if we are already trying to recover.



Home | Main Index | Thread Index | Old Index