[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[libmicrohttpd] 01/02: Added MHD_connection_set_nodelay_state_ to header
From: |
gnunet |
Subject: |
[libmicrohttpd] 01/02: Added MHD_connection_set_nodelay_state_ to header |
Date: |
Tue, 29 Dec 2020 13:40:05 +0100 |
This is an automated email from the git hooks/post-receive script.
karlson2k pushed a commit to branch master
in repository libmicrohttpd.
commit 7ca70975abdb4a96a104a2b69ce5fe60535d50ba
Author: Evgeny Grin (Karlson2k) <k2k@narod.ru>
AuthorDate: Tue Dec 29 15:38:50 2020 +0300
Added MHD_connection_set_nodelay_state_ to header
Made MHD_connection_set_nodelay_state_() non-static.
---
src/microhttpd/mhd_send.c | 38 +++++++++++++++-----------------------
src/microhttpd/mhd_send.h | 14 ++++++++++++++
2 files changed, 29 insertions(+), 23 deletions(-)
diff --git a/src/microhttpd/mhd_send.c b/src/microhttpd/mhd_send.c
index 8bae006b..ac11b693 100644
--- a/src/microhttpd/mhd_send.c
+++ b/src/microhttpd/mhd_send.c
@@ -105,17 +105,9 @@ MHD_send_init_static_vars_ (void)
#endif /* HAVE_FREEBSD_SENDFILE */
-/**
- * Set required TCP_NODELAY state for connection socket
- *
- * The function automatically updates sk_nodelay state.
- * @param connection the connection to manipulate
- * @param nodelay_state the requested new state of socket
- * @return true if succeed, false if failed
- */
-static bool
-connection_set_nodelay_state_ (struct MHD_Connection *connection,
- bool nodelay_state)
+bool
+MHD_connection_set_nodelay_state_ (struct MHD_Connection *connection,
+ bool nodelay_state)
{
const MHD_SCKT_OPT_BOOL_ off_val = 0;
const MHD_SCKT_OPT_BOOL_ on_val = 1;
@@ -272,7 +264,7 @@ pre_send_setopt (struct MHD_Connection *connection,
/* Try to reset TCP_NODELAY state for the socket.
* Ignore possible error as no other options exist to
* buffer data. */
- connection_set_nodelay_state_ (connection, false);
+ MHD_connection_set_nodelay_state_ (connection, false);
/* TCP_NODELAY has been (hopefully) reset for the socket.
* Nagle's algorithm will buffer some data. */
return;
@@ -353,7 +345,7 @@ pre_send_setopt (struct MHD_Connection *connection,
* to happen as it is only a backup solution when corking has failed.
* Ignore possible error here as no other options exist to
* push data. */
- connection_set_nodelay_state_ (connection, true);
+ MHD_connection_set_nodelay_state_ (connection, true);
/* TCP_NODELAY has been (hopefully) set for the socket.
* The data will be pushed by the next send(). */
return;
@@ -373,7 +365,7 @@ pre_send_setopt (struct MHD_Connection *connection,
/* Setting TCP_NODELAY is optimal here as data will be pushed
* automatically by the next send() and no additional
* sys-call are needed after the send(). */
- if (connection_set_nodelay_state_ (connection, true))
+ if (MHD_connection_set_nodelay_state_ (connection, true))
return;
else
{
@@ -410,7 +402,7 @@ pre_send_setopt (struct MHD_Connection *connection,
#endif /* _MHD_NODELAY_SET_PUSH_DATA */
/* Ignore possible error here as no other options exist to
* push data. */
- connection_set_nodelay_state_ (connection, true);
+ MHD_connection_set_nodelay_state_ (connection, true);
/* TCP_NODELAY has been (hopefully) set for the socket.
* The data will be pushed by the next send(). */
return;
@@ -430,7 +422,7 @@ pre_send_setopt (struct MHD_Connection *connection,
/* Set TCP_NODELAY if it wasn't set. */
if (_MHD_ON != connection->sk_nodelay)
- connection_set_nodelay_state_ (connection, true);
+ MHD_connection_set_nodelay_state_ (connection, true);
return;
#endif /* ! _MHD_CORK_RESET_PUSH_DATA */
@@ -439,7 +431,7 @@ pre_send_setopt (struct MHD_Connection *connection,
* Nagel's algorithm. */
/* Set TCP_NODELAY if it wasn't set. */
if (_MHD_ON != connection->sk_nodelay)
- connection_set_nodelay_state_ (connection, true);
+ MHD_connection_set_nodelay_state_ (connection, true);
#endif /* ! MHD_TCP_CORK_NOPUSH */
}
@@ -533,7 +525,7 @@ post_send_setopt (struct MHD_Connection *connection,
if ((_MHD_ON != connection->sk_nodelay) ||
(! plain_send_next))
{
- if (connection_set_nodelay_state_ (connection, true))
+ if (MHD_connection_set_nodelay_state_ (connection, true))
return; /* Data has been pushed by TCP_NODELAY. */
/* Failed to set TCP_NODELAY for the socket.
* Really unlikely to happen on TCP connections. */
@@ -550,7 +542,7 @@ post_send_setopt (struct MHD_Connection *connection,
return; /* Data has been pushed by uncorking the socket. */
/* Failed to uncork the socket.
* Really unlikely to happen on TCP connections. */
- if (connection_set_nodelay_state_ (connection, true))
+ if (MHD_connection_set_nodelay_state_ (connection, true))
return; /* Data has been pushed by TCP_NODELAY. */
/* Failed to set TCP_NODELAY for the socket.
* Really unlikely to happen on TCP connections. */
@@ -560,7 +552,7 @@ post_send_setopt (struct MHD_Connection *connection,
#else /* ! MHD_USE_MSG_MORE */
/* Use setting of TCP_NODELAY here to avoid sys-call
* for corking the socket during sending of the next response. */
- if (connection_set_nodelay_state_ (connection, true))
+ if (MHD_connection_set_nodelay_state_ (connection, true))
return; /* Data was pushed by TCP_NODELAY. */
/* Failed to set TCP_NODELAY for the socket.
* Really unlikely to happen on TCP connections. */
@@ -588,7 +580,7 @@ post_send_setopt (struct MHD_Connection *connection,
/* Unlikely to reach this code.
* TCP_NODELAY should be turned on before send(). */
- if (connection_set_nodelay_state_ (connection, true))
+ if (MHD_connection_set_nodelay_state_ (connection, true))
{
/* TCP_NODELAY has been set on uncorked socket.
* Use zero-send to push the data. */
@@ -618,7 +610,7 @@ post_send_setopt (struct MHD_Connection *connection,
* The data should be pushed by uncorking (FreeBSD) or
* the socket should be uncorked before send(). */
if ((_MHD_ON == connection->sk_nodelay) ||
- (connection_set_nodelay_state_ (connection, true)))
+ (MHD_connection_set_nodelay_state_ (connection, true)))
{
/* TCP_NODELAY is turned ON on uncorked socket.
* Use zero-send to push the data. */
@@ -638,7 +630,7 @@ post_send_setopt (struct MHD_Connection *connection,
/* Unlikely to reach this code.
* TCP_NODELAY should be turned on before send(). */
- if (connection_set_nodelay_state_ (connection, true))
+ if (MHD_connection_set_nodelay_state_ (connection, true))
{
/* TCP_NODELAY has been set.
* Use zero-send to push the data. */
diff --git a/src/microhttpd/mhd_send.h b/src/microhttpd/mhd_send.h
index 5e6d2090..54b5c1fe 100644
--- a/src/microhttpd/mhd_send.h
+++ b/src/microhttpd/mhd_send.h
@@ -111,4 +111,18 @@ MHD_send_sendfile_ (struct MHD_Connection *connection);
#endif
+
+/**
+ * Set required TCP_NODELAY state for connection socket
+ *
+ * The function automatically updates sk_nodelay state.
+ * @param connection the connection to manipulate
+ * @param nodelay_state the requested new state of socket
+ * @return true if succeed, false if failed
+ */
+bool
+MHD_connection_set_nodelay_state_ (struct MHD_Connection *connection,
+ bool nodelay_state);
+
+
#endif /* MHD_SEND_H */
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.