35 #include <gnutls/gnutls.h> 53 ret = gnutls_handshake (connection->tls_session);
54 if (ret == GNUTLS_E_SUCCESS)
61 if ( (GNUTLS_E_AGAIN == ret) ||
62 (GNUTLS_E_INTERRUPTED == ret) )
69 MHD_DLOG (connection->
daemon,
70 _(
"Error: received handshake message out of context\n"));
138 MHD_DLOG (connection->
daemon,
139 _(
"In function %s handling connection at state: %s\n"),
141 MHD_state_to_string (connection->
state));
145 switch (connection->
state)
157 if ( (timeout != 0) &&
162 return MHD_connection_epoll_update_ (connection);
193 if (connection->tls_closed)
196 connection->tls_closed =
true;
197 return (GNUTLS_E_SUCCESS == gnutls_bye(connection->tls_session, GNUTLS_SHUT_WR)) ?
enum MHD_CONNECTION_STATE state
int MHD_connection_handle_write(struct MHD_Connection *connection)
Methods for managing connections.
void MHD_connection_close_(struct MHD_Connection *connection, enum MHD_RequestTerminationCode termination_code)
Methods for managing response objects.
void MHD_update_last_activity_(struct MHD_Connection *connection)
struct MHD_Daemon * daemon
int(* idle_handler)(struct MHD_Connection *connection)
static int MHD_tls_connection_handle_write(struct MHD_Connection *connection)
int MHD_connection_handle_read(struct MHD_Connection *connection)
void MHD_set_https_callbacks(struct MHD_Connection *connection)
time_t connection_timeout
Methods for managing connections.
static int MHD_tls_connection_handle_read(struct MHD_Connection *connection)
int(* read_handler)(struct MHD_Connection *connection)
internal shared structures
int MHD_tls_connection_shutdown(struct MHD_Connection *connection)
internal monotonic clock functions implementations
int(* write_handler)(struct MHD_Connection *connection)
static int run_tls_handshake(struct MHD_Connection *connection)
int MHD_connection_handle_idle(struct MHD_Connection *connection)
time_t MHD_monotonic_sec_counter(void)
static int MHD_tls_connection_handle_idle(struct MHD_Connection *connection)
memory pool; mostly used for efficient (de)allocation for each connection and bounding memory use for...