]> git.ipfire.org Git - thirdparty/openvpn.git/commit
Enable TCP_NODELAY by default and push it to clients
authorAntonio Quartulli <antonio@mandelbit.com>
Tue, 21 Jul 2026 12:44:46 +0000 (14:44 +0200)
committerGert Doering <gert@greenie.muc.de>
Thu, 23 Jul 2026 17:31:54 +0000 (19:31 +0200)
commitda4ecf990b55d6c19cdc3e01c19b989de26fc88e
tree9ae402758bdf3cdfa144125dff7b6ac35bc9fb05
parent4b80a129999aceaeb429ebd703f618a51775d955
Enable TCP_NODELAY by default and push it to clients

TCP_NODELAY had to be requested explicitly via
--tcp-nodelay or "socket-flags TCP_NODELAY". Enable
it unconditionally on every TCP socket instead
(dco-win is skipped as it manages its own socket).
The socket_set_flags() and
link_socket_update_flags() plumbing that only ever
applied it is dropped; the SF_TCP_NODELAY sockflag
and "socket-flags TCP_NODELAY" become no-ops, the
latter kept for backwards compatibility.

--tcp-nodelay no longer touches the local socket
but, in --mode server, still pushes "socket-flags
TCP_NODELAY" to clients, for the benefit of clients
older than 2.7.6 that do not enable it by default.
On a client the option is deprecated and inert. It
can be dropped once such clients are gone.

Change-Id: I434a5373f77b0f7570a6a2aafe0eaf970e2eabe7
Signed-off-by: Antonio Quartulli <antonio@mandelbit.com>
Acked-by: Arne Schwabe <arne-openvpn@rfc2549.org>
Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1797
Message-Id: <20260721124452.27832-1-gert@greenie.muc.de>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg37726.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
doc/man-sections/link-options.rst
src/openvpn/helper.c
src/openvpn/init.c
src/openvpn/options.c
src/openvpn/socket.c
src/openvpn/socket.h