[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] [libmicrohttpd] branch master updated: call completion hand
From: |
gnunet |
Subject: |
[GNUnet-SVN] [libmicrohttpd] branch master updated: call completion handler also for upgrade connections |
Date: |
Tue, 27 Feb 2018 23:28:03 +0100 |
This is an automated email from the git hooks/post-receive script.
grothoff pushed a commit to branch master
in repository libmicrohttpd.
The following commit(s) were added to refs/heads/master by this push:
new fc495439 call completion handler also for upgrade connections
fc495439 is described below
commit fc495439b4e78c021bf25dce3609f47061e8c658
Author: Christian Grothoff <address@hidden>
AuthorDate: Tue Feb 27 23:28:01 2018 +0100
call completion handler also for upgrade connections
---
ChangeLog | 4 ++++
src/include/microhttpd.h | 2 +-
src/lib/action_from_response.c | 1 +
src/lib/request_resume.c | 8 +++++---
src/microhttpd/daemon.c | 12 +++++++-----
5 files changed, 18 insertions(+), 9 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 7feebbb6..214d6373 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Tue Feb 27 23:27:02 CET 2018
+ Ensure MHD_RequestCompletedCallback is also called for
+ upgraded connections. -CG
+
Fri Feb 16 03:09:33 CET 2018
Fixing #5278 as suggested by reporter. -CG/texec
diff --git a/src/include/microhttpd.h b/src/include/microhttpd.h
index 3af9cf22..77bb000c 100644
--- a/src/include/microhttpd.h
+++ b/src/include/microhttpd.h
@@ -126,7 +126,7 @@ typedef intptr_t ssize_t;
* Current version of the library.
* 0x01093001 = 1.9.30-1.
*/
-#define MHD_VERSION 0x00095901
+#define MHD_VERSION 0x00095902
/**
* MHD-internal return code for "YES".
diff --git a/src/lib/action_from_response.c b/src/lib/action_from_response.c
index 007363fb..43f33cb5 100644
--- a/src/lib/action_from_response.c
+++ b/src/lib/action_from_response.c
@@ -23,6 +23,7 @@
* @author Christian Grothoff
*/
#include "internal.h"
+#include "connection_call_handlers.h"
/**
diff --git a/src/lib/request_resume.c b/src/lib/request_resume.c
index 8a231292..5742f6ac 100644
--- a/src/lib/request_resume.c
+++ b/src/lib/request_resume.c
@@ -23,7 +23,7 @@
* @author Christian Grothoff
*/
#include "internal.h"
-
+#include "connection_close.h"
/**
* Resume handling of network data for suspended request. It is
@@ -43,7 +43,7 @@ void
MHD_request_resume (struct MHD_Request *request)
{
struct MHD_Daemon *daemon = request->daemon;
-
+
if (daemon->disallow_suspend_resume)
MHD_PANIC (_("Cannot resume connections without enabling
MHD_ALLOW_SUSPEND_RESUME!\n"));
MHD_mutex_lock_chk_ (&daemon->cleanup_connection_mutex);
@@ -81,7 +81,7 @@ MHD_resume_suspended_connections_ (struct MHD_Daemon *daemon)
struct MHD_Connection *prev = NULL;
bool ret;
const bool used_thr_p_c = (MHD_TM_THREAD_PER_CONNECTION ==
daemon->threading_model);
-
+
mhd_assert (NULL == daemon->worker_pool);
ret = false;
MHD_mutex_lock_chk_ (&daemon->cleanup_connection_mutex);
@@ -159,6 +159,8 @@ MHD_resume_suspended_connections_ (struct MHD_Daemon
*daemon)
/* Data forwarding was finished (for TLS connections) AND
* application was closed upgraded connection.
* Insert connection into cleanup list. */
+ MHD_connection_close_ (pos,
+ MHD_CONNECTION_NOTIFY_CLOSED);
DLL_insert (daemon->cleanup_head,
daemon->cleanup_tail,
pos);
diff --git a/src/microhttpd/daemon.c b/src/microhttpd/daemon.c
index b6906459..14cc0121 100644
--- a/src/microhttpd/daemon.c
+++ b/src/microhttpd/daemon.c
@@ -2678,7 +2678,7 @@ void
MHD_resume_connection (struct MHD_Connection *connection)
{
struct MHD_Daemon *daemon = connection->daemon;
-
+
if (0 == (daemon->options & MHD_TEST_ALLOW_SUSPEND_RESUME))
MHD_PANIC (_("Cannot resume connections without enabling
MHD_ALLOW_SUSPEND_RESUME!\n"));
MHD_mutex_lock_chk_ (&daemon->cleanup_connection_mutex);
@@ -2790,6 +2790,8 @@ resume_suspended_connections (struct MHD_Daemon *daemon)
/* Data forwarding was finished (for TLS connections) AND
* application was closed upgraded connection.
* Insert connection into cleanup list. */
+ MHD_connection_close_ (pos,
+ MHD_REQUEST_TERMINATED_COMPLETED_OK);
DLL_insert (daemon->cleanup_head,
daemon->cleanup_tail,
pos);
@@ -5425,7 +5427,7 @@ MHD_start_daemon_va (unsigned int flags,
MHD_DLOG (daemon, _("Using debug build of libmicrohttpd.\n") );
#endif /* HAVE_MESSAGES */
#endif /* ! NDEBUG */
-
+
if ( (0 != (*pflags & MHD_USE_ITC)) &&
(0 == daemon->worker_pool_size) )
{
@@ -5527,7 +5529,7 @@ MHD_start_daemon_va (unsigned int flags,
{
/* try to open listen socket */
int domain;
-
+
#ifdef HAVE_INET6
domain = (*pflags & MHD_USE_IPv6) ? PF_INET6 : PF_INET;
#else /* ! HAVE_INET6 */
@@ -5535,7 +5537,7 @@ MHD_start_daemon_va (unsigned int flags,
goto free_and_fail;
domain = PF_INET;
#endif /* ! HAVE_INET6 */
-
+
listen_fd = MHD_socket_create_listen_(domain);
if (MHD_INVALID_SOCKET == listen_fd)
{
@@ -6358,7 +6360,7 @@ MHD_stop_daemon (struct MHD_Daemon *daemon)
#endif /* HAVE_LISTEN_SHUTDOWN */
mhd_assert (false); /* Should never happen */
}
-
+
if (! MHD_join_thread_ (daemon->pid.handle))
{
MHD_PANIC (_("Failed to join a thread\n"));
--
To stop receiving notification emails like this one, please contact
address@hidden
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] [libmicrohttpd] branch master updated: call completion handler also for upgrade connections,
gnunet <=