Apache HTTPD
Classes | Macros | Typedefs | Functions | Variables
mpm_common.c File Reference
#include "apr.h"
#include "apr_thread_proc.h"
#include "apr_signal.h"
#include "apr_strings.h"
#include "apr_want.h"
#include "apr_getopt.h"
#include "apr_optional.h"
#include "apr_allocator.h"
#include "httpd.h"
#include "http_config.h"
#include "http_core.h"
#include "http_log.h"
#include "http_main.h"
#include "mpm_common.h"
#include "mod_core.h"
#include "ap_mpm.h"
#include "ap_listen.h"
#include "util_mutex.h"
#include "scoreboard.h"

Go to the source code of this file.

Classes

struct  mpm_gen_info_t
 
struct  mpm_gen_info_head_t
 

Macros

#define APR_WANT_STRFUNC
 
#define APLOG_MODULE_INDEX   AP_CORE_MODULE_INDEX
 
#define DEFAULT_HOOK_LINKS
 
#define ALLOCATOR_MAX_FREE_DEFAULT   (2048*1024)
 
#define INTERVAL_OF_WRITABLE_PROBES   10
 

Typedefs

typedef struct mpm_gen_info_t mpm_gen_info_t
 

Functions

void ap_hook_monitor (ap_HOOK_monitor_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
apr_array_header_tap_hook_get_monitor (void)
 
int ap_run_monitor (apr_pool_t *p, server_rec *s)
 
void ap_hook_drop_privileges (ap_HOOK_drop_privileges_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
apr_array_header_tap_hook_get_drop_privileges (void)
 
int ap_run_drop_privileges (apr_pool_t *pchild, server_rec *s)
 
void ap_hook_mpm (ap_HOOK_mpm_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
apr_array_header_tap_hook_get_mpm (void)
 
int ap_run_mpm (apr_pool_t *pconf, apr_pool_t *plog, server_rec *s)
 
void ap_hook_mpm_query (ap_HOOK_mpm_query_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
apr_array_header_tap_hook_get_mpm_query (void)
 
int ap_run_mpm_query (int query_code, int *result, apr_status_t *_rv)
 
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_array_header_tap_hook_get_mpm_register_timed_callback (void)
 
apr_status_t ap_run_mpm_register_timed_callback (apr_time_t t, ap_mpm_callback_fn_t *cbfn, void *baton)
 
void ap_hook_end_generation (ap_HOOK_end_generation_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
apr_array_header_tap_hook_get_end_generation (void)
 
void ap_run_end_generation (server_rec *s, ap_generation_t gen)
 
void ap_hook_child_status (ap_HOOK_child_status_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
apr_array_header_tap_hook_get_child_status (void)
 
void ap_run_child_status (server_rec *s, pid_t pid, ap_generation_t gen, int slot, mpm_child_status status)
 
void ap_hook_suspend_connection (ap_HOOK_suspend_connection_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
apr_array_header_tap_hook_get_suspend_connection (void)
 
void ap_run_suspend_connection (conn_rec *c, request_rec *r)
 
void ap_hook_resume_connection (ap_HOOK_resume_connection_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
apr_array_header_tap_hook_get_resume_connection (void)
 
void ap_run_resume_connection (conn_rec *c, request_rec *r)
 
void ap_hook_child_stopping (ap_HOOK_child_stopping_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
apr_array_header_tap_hook_get_child_stopping (void)
 
void ap_run_child_stopping (apr_pool_t *pchild, int graceful)
 
void ap_hook_mpm_get_name (ap_HOOK_mpm_get_name_t *pf, const char *const *aszPre, const char *const *aszSucc, int nOrder)
 
apr_array_header_tap_hook_get_mpm_get_name (void)
 
const charap_run_mpm_get_name (void)
 
void mpm_common_pre_config (apr_pool_t *pconf)
 
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)
 
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_max_requests (cmd_parms *cmd, void *dummy, const char *arg)
 
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)
 
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)
 
apr_status_t ap_mpm_query (int query_code, int *result)
 
static void end_gen (mpm_gen_info_t *gi)
 
apr_status_t ap_mpm_end_gen_helper (void *unused)
 
void ap_core_child_status (server_rec *s, pid_t pid, ap_generation_t gen, int slot, mpm_child_status status)
 
apr_status_t ap_mpm_register_timed_callback (apr_time_t t, ap_mpm_callback_fn_t *cbfn, void *baton)
 
const charap_show_mpm (void)
 
const charap_check_mpm (void)
 

Variables

struct { 
 
   apr_array_header_t *   link_monitor 
 
   apr_array_header_t *   link_drop_privileges 
 
   apr_array_header_t *   link_mpm 
 
   apr_array_header_t *   link_mpm_query 
 
   apr_array_header_t *   link_mpm_register_timed_callback 
 
   apr_array_header_t *   link_mpm_get_name 
 
   apr_array_header_t *   link_end_generation 
 
   apr_array_header_t *   link_child_status 
 
   apr_array_header_t *   link_suspend_connection 
 
   apr_array_header_t *   link_resume_connection 
 
   apr_array_header_t *   link_child_stopping 
 
_hooks 
 
static struct mpm_gen_info_head_tgeninfo
 
static struct mpm_gen_info_head_tunused_geninfo
 
static int gen_head_init
 
const charap_pid_fname
 
int ap_max_requests_per_child
 
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
 
static int wait_or_timeout_counter
 

Macro Definition Documentation

◆ ALLOCATOR_MAX_FREE_DEFAULT

#define ALLOCATOR_MAX_FREE_DEFAULT   (2048*1024)

Definition at line 158 of file mpm_common.c.

◆ APLOG_MODULE_INDEX

#define APLOG_MODULE_INDEX   AP_CORE_MODULE_INDEX

Definition at line 63 of file mpm_common.c.

◆ APR_WANT_STRFUNC

#define APR_WANT_STRFUNC

Definition at line 32 of file mpm_common.c.

◆ DEFAULT_HOOK_LINKS

#define DEFAULT_HOOK_LINKS

◆ INTERVAL_OF_WRITABLE_PROBES

#define INTERVAL_OF_WRITABLE_PROBES   10

Definition at line 177 of file mpm_common.c.

Typedef Documentation

◆ mpm_gen_info_t

Function Documentation

◆ end_gen()

static void end_gen ( mpm_gen_info_t gi)
static

Definition at line 432 of file mpm_common.c.

Variable Documentation

◆ [struct]

struct { ... } _hooks

◆ gen_head_init

int gen_head_init
static

Definition at line 147 of file mpm_common.c.

◆ geninfo

struct mpm_gen_info_head_t* geninfo
static

Definition at line 146 of file mpm_common.c.

◆ link_child_status

apr_array_header_t* link_child_status

Definition at line 88 of file mpm_common.c.

◆ link_child_stopping

apr_array_header_t* link_child_stopping

Definition at line 88 of file mpm_common.c.

◆ link_drop_privileges

apr_array_header_t* link_drop_privileges

Definition at line 88 of file mpm_common.c.

◆ link_end_generation

apr_array_header_t* link_end_generation

Definition at line 88 of file mpm_common.c.

◆ link_monitor

apr_array_header_t* link_monitor

Definition at line 88 of file mpm_common.c.

◆ link_mpm

apr_array_header_t* link_mpm

Definition at line 88 of file mpm_common.c.

◆ link_mpm_get_name

apr_array_header_t* link_mpm_get_name

Definition at line 88 of file mpm_common.c.

◆ link_mpm_query

apr_array_header_t* link_mpm_query

Definition at line 88 of file mpm_common.c.

◆ link_mpm_register_timed_callback

apr_array_header_t* link_mpm_register_timed_callback

Definition at line 88 of file mpm_common.c.

◆ link_resume_connection

apr_array_header_t* link_resume_connection

Definition at line 88 of file mpm_common.c.

◆ link_suspend_connection

apr_array_header_t* link_suspend_connection

Definition at line 88 of file mpm_common.c.

◆ unused_geninfo

struct mpm_gen_info_head_t * unused_geninfo
static

Definition at line 146 of file mpm_common.c.

◆ wait_or_timeout_counter

int wait_or_timeout_counter
static

Definition at line 179 of file mpm_common.c.