GNU libmicrohttpd 0.9.77
|
#include </builddir/build/BUILD/libmicrohttpd-0.9.77/src/lib/internal.h>
State kept for each MHD daemon. All connections are kept in two doubly-linked lists. The first one reflects the state of the connection in terms of what operations we are waiting for (read, write, locally blocked, cleanup) whereas the second is about its timeout state (default or custom).
Definition at line 1000 of file internal.h.
MHD_AcceptPolicyCallback MHD_Daemon::accept_policy_cb |
Function to call to accept/reject connections based on the client's IP address.
Definition at line 1026 of file internal.h.
Referenced by internal_add_connection(), and MHD_daemon_accept_policy().
void* MHD_Daemon::accept_policy_cb_cls |
Closure for accept_policy_cb.
Definition at line 1031 of file internal.h.
Referenced by internal_add_connection(), and MHD_daemon_accept_policy().
bool MHD_Daemon::allow_address_reuse |
Allow reusing the address:port combination when binding. See MHD_daemon_listen_allow_address_reuse().
Definition at line 1516 of file internal.h.
Referenced by configure_listen_reuse(), and MHD_daemon_listen_allow_address_reuse().
MHD_AcceptPolicyCallback MHD_Daemon::apc |
Function to call to check if we should accept or reject an incoming request. May be NULL.
Definition at line 1760 of file internal.h.
Referenced by MHD_start_daemon(), MHD_start_daemon_va(), and new_connection_prepare_().
void* MHD_Daemon::apc_cls |
Closure argument to apc.
Definition at line 1765 of file internal.h.
Referenced by MHD_start_daemon(), MHD_start_daemon_va(), and new_connection_prepare_().
bool MHD_Daemon::at_limit |
Did we hit some system or process-wide resource limit while trying to accept() the last time? If so, we don't accept new connections until we close an existing one. This effectively temporarily lowers the "connection_limit" to the current number of connections.
Definition at line 1483 of file internal.h.
Referenced by MHD_accept_connection(), MHD_accept_connection_(), MHD_cleanup_connections(), MHD_connection_cleanup_(), MHD_daemon_select_(), and MHD_select().
MHD_mutex_ MHD_Daemon::cleanup_connection_mutex |
Mutex for (modifying) access to the "cleanup", "normal_timeout" and "manual_timeout" DLLs.
Definition at line 1265 of file internal.h.
Referenced by cleanup_connection(), cleanup_connection(), close_all_connections(), close_connection(), close_connection(), internal_add_connection(), internal_suspend_connection_(), MHD_accept_connection(), MHD_accept_connection_(), MHD_cleanup_connections(), MHD_connection_cleanup_(), MHD_connection_set_timeout(), MHD_connection_update_last_activity_(), MHD_daemon_close_all_connections_(), MHD_daemon_create(), MHD_daemon_destroy(), MHD_request_resume(), MHD_resume_connection(), MHD_resume_suspended_connections_(), MHD_set_connection_option(), MHD_start_daemon_va(), MHD_stop_daemon(), MHD_update_last_activity_(), new_connection_process_(), resume_suspended_connections(), setup_thread_pool(), and suspend_action().
struct MHD_Connection * MHD_Daemon::cleanup_head |
Head of doubly-linked list of connections to clean up.
Definition at line 1177 of file internal.h.
Referenced by cleanup_connection(), cleanup_connection(), close_connection(), close_connection(), MHD_cleanup_connections(), MHD_connection_cleanup_(), MHD_resume_suspended_connections_(), MHD_stop_daemon(), and resume_suspended_connections().
struct MHD_Connection * MHD_Daemon::cleanup_tail |
Tail of doubly-linked list of connections to clean up.
Definition at line 1182 of file internal.h.
Referenced by cleanup_connection(), cleanup_connection(), close_connection(), close_connection(), MHD_cleanup_connections(), MHD_connection_cleanup_(), MHD_resume_suspended_connections_(), and resume_suspended_connections().
time_t MHD_Daemon::connection_default_timeout |
Default timeout in seconds for idle connections.
Definition at line 1371 of file internal.h.
Referenced by cleanup_connection(), close_connection(), internal_add_connection(), MHD_connection_set_timeout(), MHD_connection_update_last_activity_(), MHD_daemon_connection_default_timeout(), MHD_resume_suspended_connections_(), MHD_update_last_activity_(), suspend_action(), and thread_main_handle_connection().
unsigned int MHD_Daemon::connection_limit |
Limit on the number of parallel connections.
Definition at line 1985 of file internal.h.
Referenced by MHD_add_connection(), MHD_select(), MHD_start_daemon_va(), new_connection_prepare_(), new_connection_process_(), and parse_options_va().
size_t MHD_Daemon::connection_memory_increment_b |
Increment to use when growing the read buffer. Smaller than connection_memory_limit_b.
Definition at line 1296 of file internal.h.
Referenced by MHD_daemon_connection_memory_limit(), MHD_daemon_create(), MHD_request_handle_read_(), and try_grow_read_buffer().
size_t MHD_Daemon::connection_memory_limit_b |
Buffer size to use for each connection. Default is POOL_SIZE_DEFAULT.
Definition at line 1281 of file internal.h.
Referenced by internal_add_connection(), MHD_daemon_connection_memory_limit(), MHD_daemon_create(), MHD_request_handle_idle_(), try_grow_read_buffer(), and try_ready_chunked_body().
uint64_t MHD_Daemon::connection_timeout_ms |
After how many milliseconds of inactivity should this connection time out? Zero for no timeout.
Definition at line 1992 of file internal.h.
Referenced by cleanup_connection(), close_connection(), internal_suspend_connection_(), MHD_set_connection_option(), MHD_start_daemon_va(), MHD_update_last_activity_(), new_connection_prepare_(), parse_options_va(), and resume_suspended_connections().
unsigned int MHD_Daemon::connections |
Number of active parallel connections.
Number of active parallel connections.
Definition at line 1361 of file internal.h.
Referenced by internal_add_connection(), MHD_accept_connection(), MHD_accept_connection_(), MHD_add_connection(), MHD_cleanup_connections(), MHD_connection_cleanup_(), MHD_daemon_get_information_sz(), MHD_daemon_select_(), MHD_get_daemon_info(), MHD_select(), MHD_start_daemon_va(), new_connection_prepare_(), and new_connection_process_().
struct MHD_Connection * MHD_Daemon::connections_head |
Head of doubly-linked list of our current, active connections.
Definition at line 1155 of file internal.h.
Referenced by cleanup_connection(), cleanup_connection(), close_connection(), close_connection(), internal_add_connection(), internal_suspend_connection_(), MHD_resume_suspended_connections_(), MHD_stop_daemon(), new_connection_process_(), resume_suspended_connections(), and suspend_action().
struct MHD_Connection * MHD_Daemon::connections_tail |
Tail of doubly-linked list of our current, active connections.
Definition at line 1160 of file internal.h.
Referenced by cleanup_connection(), cleanup_connection(), close_all_connections(), close_connection(), close_connection(), internal_add_connection(), internal_get_fdset2(), internal_get_fdset2(), internal_run_from_select(), internal_run_from_select(), internal_suspend_connection_(), MHD_daemon_close_all_connections_(), MHD_resume_suspended_connections_(), new_connection_process_(), resume_suspended_connections(), and suspend_action().
bool MHD_Daemon::data_already_pending |
'True' if some data is already waiting to be processed. If set to 'true' - zero timeout for select()/poll*() is used. Should be reset each time before processing connections and raised by any connection which require additional immediately processing (application does not provide data for response, data waiting in TLS buffers etc.)
Definition at line 1500 of file internal.h.
Referenced by call_handlers(), close_connection(), internal_run_from_select(), internal_run_from_select(), MHD_connection_call_handlers_(), MHD_daemon_get_timeout(), MHD_get_timeout(), and resume_suspended_connections().
MHD_AccessHandlerCallback MHD_Daemon::default_handler |
Callback function for all requests.
Definition at line 1606 of file internal.h.
Referenced by call_connection_handler(), MHD_start_daemon_va(), and process_request_body().
void* MHD_Daemon::default_handler_cls |
Closure argument to default_handler.
Definition at line 1611 of file internal.h.
Referenced by call_connection_handler(), MHD_start_daemon_va(), and process_request_body().
bool MHD_Daemon::disable_itc |
The use of the inter-thread communication channel is disabled. See MHD_daemon_disable_itc().
Definition at line 1462 of file internal.h.
Referenced by MHD_daemon_disable_itc(), MHD_daemon_quiesce(), MHD_daemon_start(), and setup_thread_pool().
bool MHD_Daemon::disallow_suspend_resume |
Disable MHD_action_suspend() functionality. See MHD_daemon_disallow_suspend_resume().
Definition at line 1468 of file internal.h.
Referenced by MHD_daemon_close_all_connections_(), MHD_daemon_disallow_suspend_resume(), MHD_daemon_run_from_select(), MHD_daemon_select_(), MHD_polling_thread(), and MHD_request_resume().
bool MHD_Daemon::disallow_upgrade |
Disable #MHD_action_upgrade() functionality. See MHD_daemon_disallow_upgrade().
Definition at line 1474 of file internal.h.
Referenced by MHD_daemon_close_all_connections_(), MHD_daemon_disallow_upgrade(), and response_action().
MHD_EarlyUriLogCallback MHD_Daemon::early_uri_logger_cb |
Function to call on the full URL early for logging.
Definition at line 1036 of file internal.h.
Referenced by MHD_daemon_set_early_uri_logger(), and parse_initial_message_line().
void* MHD_Daemon::early_uri_logger_cb_cls |
Closure for early_uri_logger_cb.
Definition at line 1041 of file internal.h.
Referenced by MHD_daemon_set_early_uri_logger(), and parse_initial_message_line().
bool MHD_Daemon::enable_shoutcast |
MHD should speak SHOUTcast instead of HTTP.
Definition at line 1521 of file internal.h.
Referenced by MHD_daemon_enable_shoutcast().
bool MHD_Daemon::enable_turbo |
Disables optional calls to shutdown()
and enables aggressive non-blocking optimistic reads and other potentially unsafe optimizations. See MHD_daemon_enable_turbo().
Definition at line 1490 of file internal.h.
Referenced by internal_add_connection(), MHD_connection_mark_closed_(), MHD_daemon_add_connection(), and MHD_daemon_enable_turbo().
enum MHD_EventLoopSyscall MHD_Daemon::event_loop_syscall |
Sets active/desired style of the event loop. (Auto only possible during initialization, later set to the actual style we use.)
Definition at line 1436 of file internal.h.
Referenced by internal_add_connection(), MHD_connection_cleanup_(), MHD_daemon_destroy(), MHD_daemon_event_loop(), MHD_daemon_get_fdset2(), MHD_daemon_get_timeout(), MHD_daemon_quiesce(), MHD_daemon_run(), MHD_daemon_run_from_select(), MHD_daemon_start(), MHD_polling_thread(), MHD_request_handle_idle_(), MHD_resume_suspended_connections_(), setup_thread_pool(), suspend_action(), and thread_main_handle_connection().
enum MHD_FastOpenMethod MHD_Daemon::fast_open_method |
When should we use TCP_FASTOPEN? See MHD_daemon_tcp_fastopen().
Definition at line 1423 of file internal.h.
Referenced by MHD_daemon_tcp_fastopen(), and open_listen_socket().
unsigned int MHD_Daemon::fo_queue_length |
Queue length to use with fast open.
Definition at line 1346 of file internal.h.
Referenced by MHD_daemon_create(), MHD_daemon_tcp_fastopen(), and open_listen_socket().
unsigned int MHD_Daemon::global_connection_limit |
Maximum number of connections MHD accepts. 0 for unlimited.
Definition at line 1351 of file internal.h.
Referenced by internal_add_connection(), MHD_daemon_connection_limits(), MHD_daemon_select_(), and setup_thread_pool().
volatile bool MHD_Daemon::have_new |
Indicate that new connections in new_connections_head list need to be processed.
Definition at line 1969 of file internal.h.
Referenced by internal_add_connection(), internal_run_from_select(), and new_connections_list_process_().
enum MHD_DisableSanityCheck MHD_Daemon::insanity_level |
Our MHD_OPTION_SERVER_INSANITY level, bits indicating which sanity checks are off.
Definition at line 1919 of file internal.h.
Referenced by parse_options_va().
unsigned int MHD_Daemon::ip_connection_limit |
Maximum number of connections we accept per IP, 0 for unlimited.
Definition at line 1356 of file internal.h.
Referenced by MHD_daemon_connection_limits(), MHD_ip_limit_add(), and MHD_ip_limit_del().
struct MHD_itc_ MHD_Daemon::itc |
Inter-thread communication channel.
Inter-thread communication channel (also used to unblock select() in non-threaded code).
Definition at line 1410 of file internal.h.
Referenced by cleanup_connection(), cleanup_connection(), close_all_connections(), internal_add_connection(), internal_add_connection(), internal_run_from_select(), internal_run_from_select(), MHD_daemon_close_all_connections_(), MHD_daemon_destroy(), MHD_daemon_quiesce(), MHD_daemon_select_(), MHD_daemon_start(), MHD_quiesce_daemon(), MHD_request_resume(), MHD_resume_connection(), MHD_resume_suspended_connections_(), MHD_select(), MHD_start_daemon_va(), MHD_stop_daemon(), resume_suspended_connections(), setup_thread_pool(), stop_workers(), and thread_main_handle_connection().
enum MHD_AddressFamily MHD_Daemon::listen_af |
Address family to use when listening. Default is #MHD_AF_NONE (do not listen).
Definition at line 1429 of file internal.h.
Referenced by MHD_daemon_bind_port(), and open_listen_socket().
int MHD_Daemon::listen_backlog |
Backlog argument to use for listen. See MHD_daemon_listen_backlog().
Definition at line 1336 of file internal.h.
Referenced by MHD_daemon_create(), MHD_daemon_listen_backlog(), and open_listen_socket().
unsigned int MHD_Daemon::listen_backlog_size |
The size of queue for listen socket.
Definition at line 2157 of file internal.h.
Referenced by MHD_start_daemon_va(), and parse_options_va().
MHD_socket MHD_Daemon::listen_fd |
Listen socket.
Definition at line 1845 of file internal.h.
Referenced by internal_get_fdset2(), internal_run_from_select(), MHD_accept_connection(), MHD_get_daemon_info(), MHD_quiesce_daemon(), MHD_select(), MHD_start_daemon_va(), MHD_stop_daemon(), and parse_options_va().
enum MHD_tristate MHD_Daemon::listen_is_unix |
_MHD_YES if the listen_fd socket is a UNIX domain socket.
Definition at line 1664 of file internal.h.
Referenced by MHD_accept_connection(), MHD_start_daemon_va(), and parse_options_va().
bool MHD_Daemon::listen_nonblk |
Listen socket is non-blocking.
Definition at line 1850 of file internal.h.
Referenced by MHD_accept_connection(), and MHD_start_daemon_va().
uint16_t MHD_Daemon::listen_port |
On which port should we listen on? Only effective if we were not given a listen socket or a full address via #MHD_daemon_bind_sa(). 0 means to bind to random free port.
Definition at line 1449 of file internal.h.
Referenced by get_listen_port_number(), MHD_daemon_bind_port(), MHD_daemon_get_information_sz(), and open_listen_socket().
struct sockaddr_storage MHD_Daemon::listen_sa |
Socket address to bind to for the listen socket.
Definition at line 1254 of file internal.h.
Referenced by MHD_daemon_bind_socket_address(), and open_listen_socket().
size_t MHD_Daemon::listen_sa_len |
Number of (valid) bytes in listen_sa. Zero if listen_sa is not initialized.
Definition at line 1271 of file internal.h.
Referenced by MHD_daemon_bind_socket_address(), and open_listen_socket().
MHD_socket MHD_Daemon::listen_socket |
Listen socket we should use, MHD_INVALID_SOCKET means we are to initialize the socket from the other options given.
Definition at line 1377 of file internal.h.
Referenced by configure_listen_reuse(), get_listen_port_number(), internal_get_fdset2(), internal_run_from_select(), MHD_accept_connection_(), MHD_daemon_create(), MHD_daemon_destroy(), MHD_daemon_get_information_sz(), MHD_daemon_listen_socket(), MHD_daemon_quiesce(), MHD_daemon_select_(), MHD_daemon_start(), open_listen_socket(), setup_thread_pool(), and stop_workers().
int MHD_Daemon::listening_address_reuse |
Whether to allow/disallow/ignore reuse of listening address. The semantics is the following: 0: ignore (user did not ask for neither allow/disallow, use SO_REUSEADDR except W32) >0: allow (use SO_REUSEPORT on most platforms, SO_REUSEADDR on Windows) <0: disallow (mostly no action, SO_EXCLUSIVEADDRUSE on Windows or SO_EXCLBIND on Solaris)
Definition at line 1930 of file internal.h.
Referenced by MHD_start_daemon_va(), and parse_options_va().
MHD_LoggingCallback MHD_Daemon::logger |
Function to call for logging.
Definition at line 1015 of file internal.h.
Referenced by MHD_daemon_create(), and MHD_daemon_set_logger().
void* MHD_Daemon::logger_cls |
Closure for logger.
Definition at line 1020 of file internal.h.
Referenced by MHD_daemon_create(), and MHD_daemon_set_logger().
struct MHD_Connection * MHD_Daemon::manual_timeout_head |
Head of the XDLL of ALL connections with a non-default/custom timeout, unsorted. MHD will do a O(n) scan over this list to determine the current timeout. Not used in MHD_USE_THREAD_PER_CONNECTION mode.
Definition at line 1143 of file internal.h.
Referenced by cleanup_connection(), cleanup_connection(), close_connection(), close_connection(), internal_suspend_connection_(), MHD_connection_set_timeout(), MHD_resume_suspended_connections_(), MHD_set_connection_option(), resume_suspended_connections(), and suspend_action().
struct MHD_Connection * MHD_Daemon::manual_timeout_tail |
Tail of the XDLL of ALL connections with a non-default/custom timeout, unsorted. Not used in MHD_USE_THREAD_PER_CONNECTION mode.
Definition at line 1150 of file internal.h.
Referenced by cleanup_connection(), cleanup_connection(), close_connection(), close_connection(), internal_suspend_connection_(), MHD_connection_set_timeout(), MHD_daemon_get_timeout(), MHD_get_timeout(), MHD_resume_suspended_connections_(), MHD_set_connection_option(), resume_suspended_connections(), and suspend_action().
struct MHD_Daemon * MHD_Daemon::master |
Pointer to master daemon (NULL if this is the master)
Definition at line 1068 of file internal.h.
Referenced by get_master(), MHD_daemon_destroy(), MHD_get_master(), MHD_start_daemon_va(), MHD_stop_daemon(), and setup_thread_pool().
struct MHD_Connection* MHD_Daemon::new_connections_head |
Head of doubly-linked list of new, externally added connections.
Definition at line 1624 of file internal.h.
Referenced by close_all_connections(), internal_add_connection(), MHD_stop_daemon(), and new_connections_list_process_().
struct MHD_Connection* MHD_Daemon::new_connections_tail |
Tail of doubly-linked list of new, externally added connections.
Definition at line 1629 of file internal.h.
Referenced by close_all_connections(), internal_add_connection(), and new_connections_list_process_().
struct MHD_Connection * MHD_Daemon::normal_timeout_head |
Head of the XDLL of ALL connections with a default ('normal') timeout, sorted by timeout (earliest at the tail, most recently used connection at the head). MHD can just look at the tail of this list to determine the timeout for all of its elements; whenever there is an event of a connection, the connection is moved back to the tail of the list.
All connections by default start in this list; if a custom timeout that does not match connection_timeout is set, they are moved to the manual_timeout_head-XDLL. Not used in MHD_USE_THREAD_PER_CONNECTION mode as each thread needs only one connection-specific timeout.
Head of the XDLL of ALL connections with a default ('normal') timeout, sorted by timeout (earliest at the tail, most recently used connection at the head). MHD can just look at the tail of this list to determine the timeout for all of its elements; whenever there is an event of a connection, the connection is moved back to the tail of the list.
All connections by default start in this list; if a custom timeout that does not match connection_timeout_ms is set, they are moved to the manual_timeout_head-XDLL. Not used in MHD_USE_THREAD_PER_CONNECTION mode as each thread needs only one connection-specific timeout.
Definition at line 1128 of file internal.h.
Referenced by cleanup_connection(), cleanup_connection(), close_connection(), close_connection(), internal_add_connection(), internal_suspend_connection_(), MHD_connection_set_timeout(), MHD_connection_update_last_activity_(), MHD_resume_suspended_connections_(), MHD_set_connection_option(), MHD_update_last_activity_(), new_connection_process_(), resume_suspended_connections(), and suspend_action().
struct MHD_Connection * MHD_Daemon::normal_timeout_tail |
Tail of the XDLL of ALL connections with a default timeout, sorted by timeout (earliest timeout at the tail). Not used in MHD_USE_THREAD_PER_CONNECTION mode.
Definition at line 1135 of file internal.h.
Referenced by cleanup_connection(), cleanup_connection(), close_connection(), close_connection(), internal_add_connection(), internal_suspend_connection_(), MHD_connection_set_timeout(), MHD_connection_update_last_activity_(), MHD_daemon_get_timeout(), MHD_get_timeout(), MHD_resume_suspended_connections_(), MHD_set_connection_option(), MHD_update_last_activity_(), new_connection_process_(), resume_suspended_connections(), and suspend_action().
MHD_RequestCompletedCallback MHD_Daemon::notify_completed |
Function to call when we are done processing a particular request. May be NULL.
Definition at line 1771 of file internal.h.
Referenced by connection_reset(), MHD_connection_close_(), MHD_start_daemon_va(), parse_options_va(), and resume_suspended_connections().
void* MHD_Daemon::notify_completed_cls |
Closure argument to notify_completed.
Definition at line 1776 of file internal.h.
Referenced by connection_reset(), MHD_connection_close_(), parse_options_va(), and resume_suspended_connections().
MHD_NotifyConnectionCallback MHD_Daemon::notify_connection |
Function to call when we are starting/stopping a connection. May be NULL.
Definition at line 1782 of file internal.h.
Referenced by MHD_cleanup_connections(), MHD_start_daemon_va(), new_connection_process_(), and parse_options_va().
MHD_NotifyConnectionCallback MHD_Daemon::notify_connection_cb |
Function to call whenever a connection is started or closed.
Definition at line 1047 of file internal.h.
Referenced by internal_add_connection(), MHD_connection_cleanup_(), MHD_connection_close_(), and MHD_daemon_set_notify_connection().
void* MHD_Daemon::notify_connection_cb_cls |
Closure for notify_connection_cb.
Definition at line 1052 of file internal.h.
Referenced by internal_add_connection(), MHD_connection_cleanup_(), MHD_connection_close_(), and MHD_daemon_set_notify_connection().
void* MHD_Daemon::notify_connection_cls |
Closure argument to notify_connection.
Definition at line 1787 of file internal.h.
Referenced by MHD_cleanup_connections(), new_connection_process_(), and parse_options_va().
size_t MHD_Daemon::num_opts |
The number of user options used.
Contains number of only meaningful options, i.e. MHD_OPTION_END and MHD_OPTION_ARRAY are not counted, while options inside MHD_OPTION_ARRAY are counted.
Definition at line 2166 of file internal.h.
Referenced by parse_options_va().
enum MHD_FLAG MHD_Daemon::options |
Daemon's flags (bitfield).
Definition at line 1619 of file internal.h.
Referenced by build_header_response(), call_handlers(), cleanup_connection(), close_all_connections(), close_connection(), internal_add_connection(), internal_run_from_select(), internal_suspend_connection_(), MHD_accept_connection(), MHD_add_connection(), MHD_cleanup_connections(), MHD_connection_close_(), MHD_connection_handle_idle(), MHD_connection_mark_closed_(), MHD_connection_update_event_loop_info(), MHD_get_daemon_info(), MHD_get_fdset2(), MHD_get_timeout(), MHD_poll(), MHD_queue_response(), MHD_quiesce_daemon(), MHD_resume_connection(), MHD_run(), MHD_run_from_select(), MHD_run_wait(), MHD_select(), MHD_send_data_(), MHD_send_hdr_and_body_(), MHD_send_iovec_(), MHD_set_connection_option(), MHD_start_daemon_va(), MHD_stop_daemon(), MHD_suspend_connection(), MHD_update_last_activity_(), new_connection_prepare_(), new_connection_process_(), new_connections_list_process_(), parse_options_va(), process_request_body(), and resume_suspended_connections().
void * MHD_Daemon::per_ip_connection_count |
Table storing number of connections per IP
Definition at line 1187 of file internal.h.
Referenced by MHD_ip_limit_add(), MHD_ip_limit_add(), MHD_ip_limit_del(), and MHD_ip_limit_del().
unsigned int MHD_Daemon::per_ip_connection_limit |
Maximum number of connections per IP, or 0 for unlimited.
Definition at line 1998 of file internal.h.
Referenced by MHD_ip_limit_add(), MHD_ip_limit_del(), and parse_options_va().
MHD_mutex_ MHD_Daemon::per_ip_connection_mutex |
Mutex for per-IP connection counts.
Definition at line 1259 of file internal.h.
Referenced by MHD_daemon_create(), MHD_daemon_destroy(), MHD_ip_count_lock(), MHD_ip_count_lock(), MHD_ip_count_unlock(), MHD_ip_count_unlock(), MHD_start_daemon_va(), and MHD_stop_daemon().
MHD_thread_handle_ID_ MHD_Daemon::pid |
The select thread handle (if we have internal select)
Definition at line 1249 of file internal.h.
Referenced by close_all_connections(), close_connection(), internal_add_connection(), internal_suspend_connection_(), MHD_accept_connection(), MHD_cleanup_connections(), MHD_daemon_destroy(), MHD_daemon_start(), MHD_get_timeout(), MHD_polling_thread(), MHD_start_daemon_va(), MHD_stop_daemon(), MHD_suspend_connection(), new_connection_process_(), resume_suspended_connections(), and setup_thread_pool().
size_t MHD_Daemon::pool_increment |
Increment for growth of the per-connection memory pools.
Definition at line 1880 of file internal.h.
Referenced by MHD_connection_handle_read(), MHD_start_daemon_va(), and parse_options_va().
size_t MHD_Daemon::pool_size |
Size of the per-connection memory pools.
Definition at line 1875 of file internal.h.
Referenced by connection_reset(), MHD_start_daemon_va(), new_connection_process_(), and parse_options_va().
uint16_t MHD_Daemon::port |
Listen port.
Definition at line 1819 of file internal.h.
Referenced by MHD_get_daemon_info(), MHD_start_daemon(), and MHD_start_daemon_va().
enum MHD_ProtocolStrictLevel MHD_Daemon::protocol_strict_level |
How strictly do we enforce the HTTP protocol? See MHD_daemon_protocol_strict_level().
Definition at line 1442 of file internal.h.
Referenced by MHD_daemon_protocol_strict_level(), parse_initial_message_line(), parse_request_headers(), and process_header_line().
MHD_RequestCallback MHD_Daemon::rc |
Function to call to handle incoming requests.
Definition at line 1005 of file internal.h.
Referenced by call_request_handler(), MHD_daemon_create(), and process_request_body().
void* MHD_Daemon::rc_cls |
Closure for rc.
Definition at line 1010 of file internal.h.
Referenced by call_request_handler(), MHD_daemon_create(), and process_request_body().
bool MHD_Daemon::resuming |
Is some connection wanting to resume?
Definition at line 1510 of file internal.h.
Referenced by close_all_connections(), MHD_daemon_close_all_connections_(), MHD_request_resume(), MHD_resume_connection(), MHD_resume_suspended_connections_(), and resume_suspended_connections().
volatile bool MHD_Daemon::resuming |
Definition at line 1963 of file internal.h.
volatile bool MHD_Daemon::shutdown |
Are we shutting down?
Definition at line 1526 of file internal.h.
Referenced by close_all_connections(), internal_get_fdset2(), internal_get_fdset2(), MHD_connection_mark_closed_(), MHD_daemon_close_all_connections_(), MHD_daemon_destroy(), MHD_daemon_get_fdset2(), MHD_daemon_poll_(), MHD_daemon_run(), MHD_daemon_select_(), MHD_get_fdset2(), MHD_poll(), MHD_polling_thread(), MHD_queue_response(), MHD_resume_suspended_connections_(), MHD_run(), MHD_run_wait(), MHD_select(), MHD_stop_daemon(), response_action(), resume_suspended_connections(), stop_workers(), and thread_main_handle_connection().
bool MHD_Daemon::sigpipe_blocked |
True if SIGPIPE is blocked
Definition at line 2008 of file internal.h.
Referenced by MHD_accept_connection(), MHD_add_connection(), MHD_queue_response(), MHD_send_hdr_and_body_(), MHD_send_iovec_(), MHD_start_daemon_va(), and parse_options_va().
int MHD_Daemon::strict_for_client |
Be neutral (zero), strict (1) or permissive (-1) to client.
Definition at line 2003 of file internal.h.
Referenced by MHD_start_daemon_va(), parse_connection_headers(), parse_initial_message_line(), parse_options_va(), and process_header_line().
bool MHD_Daemon::suppress_date |
Suppress generating the "Date:" header, this system lacks an RTC (or developer is hyper-optimizing). See MHD_daemon_suppress_date_no_clock().
Definition at line 1456 of file internal.h.
Referenced by build_header_response(), and MHD_daemon_suppress_date_no_clock().
struct MHD_Connection * MHD_Daemon::suspended_connections_head |
Head of doubly-linked list of our current but suspended connections.
Definition at line 1166 of file internal.h.
Referenced by cleanup_connection(), cleanup_connection(), close_all_connections(), internal_suspend_connection_(), MHD_daemon_close_all_connections_(), MHD_resume_suspended_connections_(), MHD_stop_daemon(), resume_suspended_connections(), and suspend_action().
struct MHD_Connection * MHD_Daemon::suspended_connections_tail |
Tail of doubly-linked list of our current but suspended connections.
Definition at line 1172 of file internal.h.
Referenced by cleanup_connection(), cleanup_connection(), close_all_connections(), internal_suspend_connection_(), MHD_daemon_close_all_connections_(), MHD_resume_suspended_connections_(), resume_suspended_connections(), and suspend_action().
size_t MHD_Daemon::thread_stack_limit_b |
Desired size of the stack for threads created by MHD, 0 for system default.
Definition at line 1302 of file internal.h.
Referenced by internal_add_connection(), MHD_daemon_start(), MHD_daemon_thread_stack_size(), and setup_thread_pool().
enum MHD_ThreadingMode MHD_Daemon::threading_mode |
Which threading mode do we use? Positive numbers indicate the number of worker threads to be used. Values larger than 1 imply a thread pool.
Definition at line 1417 of file internal.h.
Referenced by cleanup_connection(), close_connection(), connection_update_event_loop_info(), internal_add_connection(), internal_run_from_select(), MHD_connection_call_handlers_(), MHD_connection_cleanup_(), MHD_connection_set_timeout(), MHD_connection_update_last_activity_(), MHD_daemon_close_all_connections_(), MHD_daemon_destroy(), MHD_daemon_get_fdset2(), MHD_daemon_get_information_sz(), MHD_daemon_get_timeout(), MHD_daemon_poll_(), MHD_daemon_quiesce(), MHD_daemon_run(), MHD_daemon_run_from_select(), MHD_daemon_select_(), MHD_daemon_start(), MHD_daemon_threading_mode(), MHD_resume_suspended_connections_(), MHD_update_last_activity_(), process_request_body(), setup_thread_pool(), stop_workers(), and suspend_action().
UnescapeCallback MHD_Daemon::unescape_callback |
Function to call when we unescape escape sequences.
Definition at line 1806 of file internal.h.
Referenced by digest_auth_check_all(), MHD_parse_arguments_(), MHD_start_daemon_va(), parse_initial_message_line(), and parse_options_va().
void* MHD_Daemon::unescape_callback_cls |
Closure for unescape_callback.
Definition at line 1811 of file internal.h.
Referenced by digest_auth_check_all(), MHD_parse_arguments_(), parse_initial_message_line(), and parse_options_va().
MHD_UnescapeCallback MHD_Daemon::unescape_cb |
Function to call to unescape sequences in URIs and URI arguments. See MHD_daemon_unescape_cb().
Definition at line 1058 of file internal.h.
Referenced by MHD_daemon_create(), MHD_daemon_unescape_cb(), MHD_parse_arguments_(), and parse_initial_message_line().
void* MHD_Daemon::unescape_cb_cls |
Closure for unescape_cb.
Definition at line 1063 of file internal.h.
Referenced by MHD_daemon_unescape_cb(), MHD_parse_arguments_(), and parse_initial_message_line().
LogCallback MHD_Daemon::uri_log_callback |
Function to call with the full URI at the beginning of request processing. May be NULL.
Returns the initial pointer to internal state kept by the client for the request.
Definition at line 1796 of file internal.h.
Referenced by parse_initial_message_line(), and parse_options_va().
void* MHD_Daemon::uri_log_callback_cls |
Closure argument to uri_log_callback.
Definition at line 1801 of file internal.h.
Referenced by parse_initial_message_line(), and parse_options_va().
bool MHD_Daemon::was_quiesced |
MHD_daemon_quiesce() was run against this daemon.
Definition at line 1505 of file internal.h.
Referenced by internal_get_fdset2(), internal_get_fdset2(), internal_run_from_select(), internal_run_from_select(), MHD_accept_connection(), MHD_accept_connection_(), MHD_daemon_destroy(), MHD_daemon_quiesce(), MHD_daemon_select_(), MHD_quiesce_daemon(), MHD_select(), MHD_stop_daemon(), and stop_workers().
volatile bool MHD_Daemon::was_quiesced |
Has this daemon been quiesced via MHD_quiesce_daemon()? If so, we should no longer use the listen_fd (including removing it from the epoll_fd when possible).
Definition at line 1949 of file internal.h.
struct MHD_Daemon* MHD_Daemon::worker_pool |
Worker daemons (one per thread)
Definition at line 1073 of file internal.h.
Referenced by close_all_connections(), internal_add_connection(), internal_add_connection(), MHD_add_connection(), MHD_daemon_close_all_connections_(), MHD_daemon_destroy(), MHD_daemon_get_information_sz(), MHD_daemon_quiesce(), MHD_get_daemon_info(), MHD_quiesce_daemon(), MHD_resume_suspended_connections_(), MHD_start_daemon_va(), MHD_stop_daemon(), resume_suspended_connections(), setup_thread_pool(), and stop_workers().
unsigned int MHD_Daemon::worker_pool_size |
Number of worker daemons
Definition at line 1366 of file internal.h.
Referenced by internal_add_connection(), MHD_add_connection(), MHD_daemon_destroy(), MHD_daemon_get_information_sz(), MHD_daemon_quiesce(), MHD_daemon_start(), MHD_get_daemon_info(), MHD_quiesce_daemon(), MHD_start_daemon_va(), MHD_stop_daemon(), parse_options_va(), setup_thread_pool(), and stop_workers().