From 0f84236f4a95534adf5e0f2d76c1cc47334b6900 Mon Sep 17 00:00:00 2001 From: Frank Morgner Date: Sat, 28 Feb 2026 01:36:47 +0100 Subject: [PATCH] vpcd: add TCP_NODELAY socket option Idea from @jetfire13 closes https://github.com/frankmorgner/vsmartcard/pull/323 (cherry picked from commit 92d918e56d25c7c29dabbcac030a30655aeaa3a1) --- virtualsmartcard/src/vpcd/vpcd.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/virtualsmartcard/src/vpcd/vpcd.c b/virtualsmartcard/src/vpcd/vpcd.c index cb5b6f6..371daa3 100644 --- a/virtualsmartcard/src/vpcd/vpcd.c +++ b/virtualsmartcard/src/vpcd/vpcd.c @@ -39,6 +39,7 @@ typedef WORD uint16_t; #include #include #include +#include /* for TCP_NODELAY */ #include #include #include @@ -47,6 +48,7 @@ typedef WORD uint16_t; #define INVALID_SOCKET -1 #endif + #include #include #include @@ -110,6 +112,10 @@ static SOCKET opensock(unsigned short port) if (setsockopt(sock, SOL_SOCKET, SO_NOSIGPIPE, (void *) &yes, sizeof yes) != 0) goto err; #endif +#ifdef TCP_NODELAY + if(setsockopt(sock, IPPROTO_TCP, TCP_NODELAY, (void *) &yes, sizeof yes) != 0) + goto err; +#endif memset(&server_sockaddr, 0, sizeof server_sockaddr); server_sockaddr.sin_family = PF_INET;