Apache HTTPD
Classes | Macros | Typedefs | Enumerations | Functions | Variables
mpm_common.h File Reference

Multi-Processing Modules functions. More...

#include "ap_config.h"
#include "ap_mpm.h"
#include "scoreboard.h"
#include "apr_proc_mutex.h"

Go to the source code of this file.

Classes

struct  ap_pod_t
 
struct  ap_LINK_monitor_t
 
struct  ap_LINK_drop_privileges_t
 
struct  ap_LINK_mpm_query_t
 
struct  ap_LINK_mpm_register_timed_callback_t
 
struct  ap_LINK_mpm_get_name_t
 
struct  ap_LINK_suspend_connection_t
 
struct  ap_LINK_resume_connection_t
 
struct  ap_LINK_child_stopping_t
 

Macros

#define DEFAULT_LISTENBACKLOG   511
 
#define AP_SIG_GRACEFUL   SIGUSR1
 
#define AP_SIG_GRACEFUL_SHORT   USR1
 
#define AP_SIG_GRACEFUL_STRING   "SIGUSR1"
 
#define AP_SIG_GRACEFUL_STOP   SIGWINCH
 
#define AP_SIG_GRACEFUL_STOP_SHORT   WINCH
 
#define AP_SIG_GRACEFUL_STOP_STRING   "SIGWINCH"
 
#define ap_sock_disable_nagle(s)   /* NOOP */
 
#define AP_MPM_PODX_RESTART_CHAR   '$'
 
#define AP_MPM_PODX_GRACEFUL_CHAR   '!'
 
#define AP_GRACEFUL_SHUTDOWN_TIMEOUT_COMMAND
 
#define AP_ACCEPT_MUTEX_TYPE   "mpm-accept"
 

Typedefs

typedef void ap_reclaim_callback_fn_t(int childnum, pid_t pid, ap_generation_t gen)
 
typedef struct ap_pod_t ap_pod_t
 
typedef int ap_HOOK_monitor_t(apr_pool_t *p, server_rec *s)
 
typedef struct ap_LINK_monitor_t ap_LINK_monitor_t
 
typedef int ap_HOOK_drop_privileges_t(apr_pool_t *pchild, server_rec *s)
 
typedef struct ap_LINK_drop_privileges_t ap_LINK_drop_privileges_t
 
typedef int ap_HOOK_mpm_query_t(int query_code, int *result, apr_status_t *rv)
 
typedef struct ap_LINK_mpm_query_t ap_LINK_mpm_query_t
 
typedef apr_status_t ap_HOOK_mpm_register_timed_callback_t(apr_time_t t, ap_mpm_callback_fn_t *cbfn, void *baton)
 
typedef struct ap_LINK_mpm_register_timed_callback_t ap_LINK_mpm_register_timed_callback_t
 
typedef const charap_HOOK_mpm_get_name_t(void)
 
typedef struct ap_LINK_mpm_get_name_t ap_LINK_mpm_get_name_t
 
typedef void ap_HOOK_suspend_connection_t(conn_rec *c, request_rec *r)
 
typedef struct ap_LINK_suspend_connection_t ap_LINK_suspend_connection_t
 
typedef void ap_HOOK_resume_connection_t(conn_rec *c, request_rec *r)
 
typedef struct ap_LINK_resume_connection_t ap_LINK_resume_connection_t
 
typedef void ap_HOOK_child_stopping_t(apr_pool_t *pchild, int graceful)
 
typedef struct ap_LINK_child_stopping_t ap_LINK_child_stopping_t
 

Enumerations

enum  ap_podx_restart_t { AP_MPM_PODX_NORESTART , AP_MPM_PODX_RESTART , AP_MPM_PODX_GRACEFUL }
 

Functions

void ap_reclaim_child_processes (int terminate, ap_reclaim_callback_fn_t *mpm_callback)
 
void ap_relieve_child_processes (ap_reclaim_callback_fn_t *mpm_callback)
 
void ap_register_extra_mpm_process (pid_t pid, ap_generation_t gen)
 
int ap_unregister_extra_mpm_process (pid_t pid, ap_generation_t *old_gen)
 
apr_status_t ap_mpm_safe_kill (pid_t pid, int sig)
 
int ap_process_child_status (apr_proc_t *pid, apr_exit_why_e why, int status)
 
apr_status_t ap_fatal_signal_setup (server_rec *s, apr_pool_t *in_pconf)
 
apr_status_t ap_fatal_signal_child_setup (server_rec *s)
 
apr_status_t ap_mpm_end_gen_helper (void *unused)
 
void ap_wait_or_timeout (apr_exit_why_e *status, int *exitcode, apr_proc_t *ret, apr_pool_t *p, server_rec *s)
 
int initgroups (const char *name, gid_t basegid)
 
apr_status_t ap_mpm_pod_open (apr_pool_t *p, ap_pod_t **pod)
 
apr_status_t ap_mpm_pod_check (ap_pod_t *pod)
 
apr_status_t ap_mpm_pod_close (ap_pod_t *pod)
 
apr_status_t ap_mpm_pod_signal (ap_pod_t *pod)
 
void ap_mpm_pod_killpg (ap_pod_t *pod, int num)
 
apr_status_t ap_mpm_podx_open (apr_pool_t *p, ap_pod_t **pod)
 
int ap_mpm_podx_check (ap_pod_t *pod)
 
apr_status_t ap_mpm_podx_close (ap_pod_t *pod)
 
apr_status_t ap_mpm_podx_signal (ap_pod_t *pod, ap_podx_restart_t graceful)
 
void ap_mpm_podx_killpg (ap_pod_t *pod, int num, ap_podx_restart_t graceful)
 
const charap_check_mpm (void)
 
const charap_mpm_set_max_requests (cmd_parms *cmd, void *dummy, const char *arg)
 
const charap_mpm_set_pidfile (cmd_parms *cmd, void *dummy, const char *arg)
 
void ap_mpm_dump_pidfile (apr_pool_t *p, apr_file_t *out)
 
const charap_mpm_set_coredumpdir (cmd_parms *cmd, void *dummy, const char *arg)
 
const charap_mpm_set_graceful_shutdown (cmd_parms *cmd, void *dummy, const char *arg)
 
int ap_signal_server (int *, apr_pool_t *)
 
void ap_mpm_rewrite_args (process_rec *)
 
const charap_mpm_set_max_mem_free (cmd_parms *cmd, void *dummy, const char *arg)
 
const charap_mpm_set_thread_stacksize (cmd_parms *cmd, void *dummy, const char *arg)
 
void ap_core_child_status (server_rec *s, pid_t pid, ap_generation_t gen, int slot, mpm_child_status status)
 
void ap_hook_monitor (ap_HOOK_monitor_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
int ap_run_monitor (apr_pool_t *p, server_rec *s)
 
apr_array_header_tap_hook_get_monitor (void)
 
int ap_sys_privileges_handlers (int inc)
 
void ap_hook_drop_privileges (ap_HOOK_drop_privileges_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
int ap_run_drop_privileges (apr_pool_t *pchild, server_rec *s)
 
apr_array_header_tap_hook_get_drop_privileges (void)
 
void ap_hook_mpm_query (ap_HOOK_mpm_query_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
int ap_run_mpm_query (int query_code, int *result, apr_status_t *rv)
 
apr_array_header_tap_hook_get_mpm_query (void)
 
void ap_hook_mpm_register_timed_callback (ap_HOOK_mpm_register_timed_callback_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
apr_status_t ap_run_mpm_register_timed_callback (apr_time_t t, ap_mpm_callback_fn_t *cbfn, void *baton)
 
apr_array_header_tap_hook_get_mpm_register_timed_callback (void)
 
void ap_hook_mpm_get_name (ap_HOOK_mpm_get_name_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
const charap_run_mpm_get_name (void)
 
apr_array_header_tap_hook_get_mpm_get_name (void)
 
void ap_hook_suspend_connection (ap_HOOK_suspend_connection_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
void ap_run_suspend_connection (conn_rec *c, request_rec *r)
 
apr_array_header_tap_hook_get_suspend_connection (void)
 
void ap_hook_resume_connection (ap_HOOK_resume_connection_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
void ap_run_resume_connection (conn_rec *c, request_rec *r)
 
apr_array_header_tap_hook_get_resume_connection (void)
 
void ap_hook_child_stopping (ap_HOOK_child_stopping_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
void ap_run_child_stopping (apr_pool_t *pchild, int graceful)
 
apr_array_header_tap_hook_get_child_stopping (void)
 
void mpm_common_pre_config (apr_pool_t *pconf)
 

Variables

int ap_max_requests_per_child
 
const charap_pid_fname
 
char ap_coredump_dir [8192]
 
int ap_coredumpdir_configured
 
int ap_graceful_shutdown_timeout
 
apr_uint32_t ap_max_mem_free
 
apr_size_t ap_thread_stacksize
 

Detailed Description

Multi-Processing Modules functions.

Definition in file mpm_common.h.