From 62cc58a2589b136176d4bb49ba19cab7fa76f8f8 Mon Sep 17 00:00:00 2001 From: Laurent Bercot Date: Fri, 29 Aug 2025 20:54:24 +0000 Subject: Add socket_tcpdelay Signed-off-by: Laurent Bercot --- src/include/skalibs/socket.h | 1 + src/libstddjb/socket_tcpdelay.c | 15 +++++++++++++++ src/libstddjb/socket_tcpnodelay.c | 4 ++-- 3 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 src/libstddjb/socket_tcpdelay.c (limited to 'src') diff --git a/src/include/skalibs/socket.h b/src/include/skalibs/socket.h index f13b2ee..944fdd0 100644 --- a/src/include/skalibs/socket.h +++ b/src/include/skalibs/socket.h @@ -156,6 +156,7 @@ extern int socket_remote6 (int, char *, uint16_t *) ; extern int socket_ipoptionskill (int) ; extern int socket_tcpnodelay (int) ; +extern int socket_tcpdelay (int) ; extern void socket_tryreservein (int, unsigned int) ; diff --git a/src/libstddjb/socket_tcpdelay.c b/src/libstddjb/socket_tcpdelay.c new file mode 100644 index 0000000..8f1c026 --- /dev/null +++ b/src/libstddjb/socket_tcpdelay.c @@ -0,0 +1,15 @@ +/* ISC license. */ + +#include + +#include +#include +#include + +#include + +int socket_tcpdelay (int s) +{ + static int const val = 0 ; + return setsockopt(s, IPPROTO_TCP, TCP_NODELAY, &val, sizeof(int)) ; +} diff --git a/src/libstddjb/socket_tcpnodelay.c b/src/libstddjb/socket_tcpnodelay.c index 5ea10b0..8880af4 100644 --- a/src/libstddjb/socket_tcpnodelay.c +++ b/src/libstddjb/socket_tcpnodelay.c @@ -10,6 +10,6 @@ int socket_tcpnodelay (int s) { - static int const opt = TCP_NODELAY ; - return setsockopt(s, IPPROTO_TCP, 1, &opt, sizeof(int)) ; + static int const val = 1 ; + return setsockopt(s, IPPROTO_TCP, TCP_NODELAY, &val, sizeof(int)) ; } -- cgit v1.3.1