The branch main has been updated by rscheff: URL: https://cgit.FreeBSD.org/src/commit/?id=0a05ea1f56e65ec0477d56daf5ed623087464082
commit 0a05ea1f56e65ec0477d56daf5ed623087464082 Author: Richard Scheffenegger <rsch...@freebsd.org> AuthorDate: 2024-09-18 09:18:00 +0000 Commit: Richard Scheffenegger <rsch...@freebsd.org> CommitDate: 2024-09-18 09:18:30 +0000 tcp: keep syncache flags when updating ECN info While processing the ECN flags of an incoming packet, incorrectly cleared all other syncache flags. Reported by: tuexen Reviewed By: tuexen, #transport Sponsored by: NetApp, Inc. Differential Revision: https://reviews.freebsd.org/D46694 --- sys/netinet/tcp_syncache.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/netinet/tcp_syncache.c b/sys/netinet/tcp_syncache.c index d0a7690256f4..80bf12474c1c 100644 --- a/sys/netinet/tcp_syncache.c +++ b/sys/netinet/tcp_syncache.c @@ -1538,7 +1538,7 @@ syncache_add(struct in_conninfo *inc, struct tcpopt *to, struct tcphdr *th, */ if (sc->sc_flags & SCF_ECN_MASK) { sc->sc_flags &= ~SCF_ECN_MASK; - sc->sc_flags = tcp_ecn_syncache_add(tcp_get_flags(th), iptos); + sc->sc_flags |= tcp_ecn_syncache_add(tcp_get_flags(th), iptos); } #ifdef MAC /*