The branch main has been updated by tuexen:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=6e07231667e639bd825e6cdb67609a39e3098e9d

commit 6e07231667e639bd825e6cdb67609a39e3098e9d
Author:     Michael Tuexen <tue...@freebsd.org>
AuthorDate: 2025-08-12 12:48:27 +0000
Commit:     Michael Tuexen <tue...@freebsd.org>
CommitDate: 2025-08-12 12:51:07 +0000

    tcp: minor cleanup
    
    Don't use the rstreason variable as a hint that a second lookup is
    performed, since the rstreason variable will be removed.
    Use the INPLOOKUP_WILDCARD flag in the lookupflag variable instead.
    No functional change intended.
    
    Reviewed by:            rrs
    MFC after:              1 week
    Sponsored by:           Netflix, Inc.
    Differential Revision:  https://reviews.freebsd.org/D51847
---
 sys/netinet/tcp_input.c | 28 ++++++++++++++--------------
 1 file changed, 14 insertions(+), 14 deletions(-)

diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c
index d392cbe09950..ddd0dbeafd06 100644
--- a/sys/netinet/tcp_input.c
+++ b/sys/netinet/tcp_input.c
@@ -905,23 +905,23 @@ findpcb:
         * XXX MRT Send RST using which routing table?
         */
        if (inp == NULL) {
-               if (rstreason != 0) {
+               if ((lookupflag & INPLOOKUP_WILDCARD) == 0) {
                        /* We came here after second (safety) lookup. */
-                       MPASS((lookupflag & INPLOOKUP_WILDCARD) == 0);
-                       goto dropwithreset;
-               }
-               /*
-                * Log communication attempts to ports that are not
-                * in use.
-                */
-               if ((V_tcp_log_in_vain == 1 && (thflags & TH_SYN)) ||
-                   V_tcp_log_in_vain == 2) {
-                       if ((s = tcp_log_vain(NULL, th, (void *)ip, ip6)))
+                       MPASS(!closed_port);
+               } else {
+                       /*
+                        * Log communication attempts to ports that are not
+                        * in use.
+                        */
+                       if (((V_tcp_log_in_vain == 1 && (thflags & TH_SYN)) ||
+                            V_tcp_log_in_vain == 2) &&
+                           (s = tcp_log_vain(NULL, th, (void *)ip, ip6))) {
                                log(LOG_INFO, "%s; %s: Connection attempt "
                                    "to closed port\n", s, __func__);
+                       }
+                       closed_port = true;
                }
                rstreason = BANDLIM_TCP_RST;
-               closed_port = true;
                goto dropwithreset;
        }
        INP_LOCK_ASSERT(inp);
@@ -1102,7 +1102,8 @@ findpcb:
                                 * don't want to sent RST for the second ACK,
                                 * so we perform second lookup without wildcard
                                 * match, hoping to find the new socket.  If
-                                * the ACK is stray indeed, rstreason would
+                                * the ACK is stray indeed, the missing
+                                * INPLOOKUP_WILDCARD flag in lookupflag would
                                 * hint the above code that the lookup was a
                                 * second attempt.
                                 *
@@ -1110,7 +1111,6 @@ findpcb:
                                 * of the failure cause.
                                 */
                                INP_WUNLOCK(inp);
-                               rstreason = BANDLIM_TCP_RST;
                                lookupflag &= ~INPLOOKUP_WILDCARD;
                                goto findpcb;
                        }

Reply via email to