From a41a9bfbed0b1d6a00a9f209f7ee156f39532837 Mon Sep 17 00:00:00 2001 From: Viktor Szakats Date: Sun, 3 Aug 2025 23:48:53 +0200 Subject: [PATCH] build: disable `TCP_NODELAY` for emscripten --- lib/cf-socket.c | 2 +- tests/server/rtspd.c | 2 +- tests/server/sws.c | 8 ++++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/cf-socket.c b/lib/cf-socket.c index 06c9a74368..a7c0ef0840 100644 --- a/lib/cf-socket.c +++ b/lib/cf-socket.c @@ -109,7 +109,7 @@ static void set_ipv6_v6only(curl_socket_t sockfd, int on) static void tcpnodelay(struct Curl_easy *data, curl_socket_t sockfd) { -#ifdef TCP_NODELAY +#if defined(TCP_NODELAY) && !defined(__EMSCRIPTEN__) curl_socklen_t onoff = (curl_socklen_t) 1; int level = IPPROTO_TCP; char buffer[STRERROR_LEN]; diff --git a/tests/server/rtspd.c b/tests/server/rtspd.c index d046fdf420..67829922dc 100644 --- a/tests/server/rtspd.c +++ b/tests/server/rtspd.c @@ -1224,7 +1224,7 @@ static int test_rtspd(int argc, char *argv[]) logmsg("====> Client connect"); -#ifdef TCP_NODELAY +#if defined(TCP_NODELAY) && !defined(__EMSCRIPTEN__) /* * Disable the Nagle algorithm to make it easier to send out a large * response in many small segments to torture the clients more. diff --git a/tests/server/sws.c b/tests/server/sws.c index 2ae4727ad6..f03b9bdcdb 100644 --- a/tests/server/sws.c +++ b/tests/server/sws.c @@ -158,7 +158,7 @@ static const char *doc404 = "HTTP/1.1 404 Not Found\r\n" /* work around for handling trailing headers */ static int already_recv_zeroed_chunk = FALSE; -#ifdef TCP_NODELAY +#if defined(TCP_NODELAY) && !defined(__EMSCRIPTEN__) /* returns true if the current socket is an IP one */ static bool socket_domain_is_ip(void) { @@ -1239,7 +1239,7 @@ static curl_socket_t connect_to(const char *ipaddr, unsigned short port) return CURL_SOCKET_BAD; } -#ifdef TCP_NODELAY +#if defined(TCP_NODELAY) && !defined(__EMSCRIPTEN__) if(socket_domain_is_ip()) { /* Disable the Nagle algorithm */ curl_socklen_t flag = 1; @@ -1545,7 +1545,7 @@ static void http_connect(curl_socket_t *infdp, } memset(req2, 0, sizeof(*req2)); logmsg("====> Client connect DATA"); -#ifdef TCP_NODELAY +#if defined(TCP_NODELAY) && !defined(__EMSCRIPTEN__) if(socket_domain_is_ip()) { /* Disable the Nagle algorithm */ curl_socklen_t flag = 1; @@ -1871,7 +1871,7 @@ static curl_socket_t accept_connection(curl_socket_t sock) all_sockets[num_sockets] = msgsock; num_sockets += 1; -#ifdef TCP_NODELAY +#if defined(TCP_NODELAY) && !defined(__EMSCRIPTEN__) if(socket_domain_is_ip()) { /* * Disable the Nagle algorithm to make it easier to send out a large