Go to the documentation of this file.
29 #ifdef UPGRADE_SUPPORT
40 struct MHD_UpgradeResponseHandle *urh = connection->
request.urh;
50 if (
NULL != (tls = connection->
daemon->tls_api))
92 (! MHD_join_thread_ (pos->
pid.handle)) )
94 #ifdef UPGRADE_SUPPORT
95 connection_cleanup_upgraded (pos);
102 if (
NULL != (tls = daemon->tls_api))
114 (
const struct sockaddr *) &pos->
addr,
126 if ( (-1 != daemon->epoll_fd) &&
134 if (0 != epoll_ctl (daemon->epoll_fd,
138 MHD_PANIC (
_ (
"Failed to remove FD from epoll set.\n"));
#define MHD_socket_close_chk_(fd)
#define MHD_mutex_unlock_chk_(pmutex)
struct MHD_Connection * cleanup_tail
#define MHD_INVALID_SOCKET
internal shared structures
enum MHD_EventLoopSyscall event_loop_syscall
@ MHD_EPOLL_STATE_IN_EPOLL_SET
#define EDLL_remove(head, tail, element)
void * notify_connection_cb_cls
struct MHD_Request request
struct sockaddr_storage addr
#define DLL_remove(head, tail, element)
enum MHD_ThreadingMode threading_mode
void MHD_pool_destroy(struct MemoryPool *pool)
MHD_mutex_ cleanup_connection_mutex
functions to cleanup completed connection
void MHD_connection_cleanup_(struct MHD_Daemon *daemon)
enum MHD_Bool(* shutdown_connection)(void *cls, struct MHD_TLS_ConnectionState *cs)
void MHD_ip_limit_del(struct MHD_Daemon *daemon, const struct sockaddr *addr, socklen_t addrlen)
struct MHD_Connection * cleanup_head
#define MHD_mutex_lock_chk_(pmutex)
struct MHD_Daemon * daemon
MHD_thread_handle_ID_ pid
struct MHD_Response * response
MHD_NotifyConnectionCallback notify_connection_cb
void MHD_response_queue_for_destroy(struct MHD_Response *response)
@ MHD_EPOLL_STATE_IN_EREADY_EDLL
counting of connections per IP
@ MHD_CONNECTION_NOTIFY_CLOSED
void(* teardown_connection)(void *cls, struct MHD_TLS_ConnectionState *cs)