[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[libmicrohttpd] 01/04: W32 socket pair: set TCP_NODELAY
From: |
gnunet |
Subject: |
[libmicrohttpd] 01/04: W32 socket pair: set TCP_NODELAY |
Date: |
Sat, 06 Nov 2021 17:42:14 +0100 |
This is an automated email from the git hooks/post-receive script.
karlson2k pushed a commit to branch master
in repository libmicrohttpd.
commit a507eb93ee1223e29553bffe6822e395297d0d3f
Author: Evgeny Grin (Karlson2k) <k2k@narod.ru>
AuthorDate: Sat Nov 6 15:08:35 2021 +0300
W32 socket pair: set TCP_NODELAY
Set TCP_NODELAY on both ends of socket pair on W32 to disable
unwanted buffering
---
src/microhttpd/mhd_sockets.c | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
diff --git a/src/microhttpd/mhd_sockets.c b/src/microhttpd/mhd_sockets.c
index 0d9826a4..2b8a7f11 100644
--- a/src/microhttpd/mhd_sockets.c
+++ b/src/microhttpd/mhd_sockets.c
@@ -323,17 +323,27 @@ MHD_W32_socket_pair_ (SOCKET sockets_pair[2], int non_blk)
if ( (0 == getsockname (client_s,
(struct sockaddr*) &client_addr,
&addr_len)) &&
- (accepted_from_addr.sin_family == client_addr.sin_family) &&
(accepted_from_addr.sin_port == client_addr.sin_port) &&
(accepted_from_addr.sin_addr.s_addr ==
client_addr.sin_addr.s_addr) &&
+ (accepted_from_addr.sin_family == client_addr.sin_family) &&
( (0 != non_blk) ?
(0 == ioctlsocket (server_s,
(int) FIONBIO,
&on_val)) :
(0 == ioctlsocket (client_s,
(int) FIONBIO,
- &off_val)) ) )
+ &off_val)) ) &&
+ (0 == setsockopt (server_s,
+ IPPROTO_TCP,
+ TCP_NODELAY,
+ (const void *) (&on_val),
+ sizeof (on_val))) &&
+ (0 == setsockopt (client_s,
+ IPPROTO_TCP,
+ TCP_NODELAY,
+ (const void *) (&on_val),
+ sizeof (on_val))) )
{
closesocket (listen_s);
sockets_pair[0] = server_s;
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.