Apache2
mpm_winnt.h
Go to the documentation of this file.
1 /* Licensed to the Apache Software Foundation (ASF) under one or more
2  * contributor license agreements. See the NOTICE file distributed with
3  * this work for additional information regarding copyright ownership.
4  * The ASF licenses this file to You under the Apache License, Version 2.0
5  * (the "License"); you may not use this file except in compliance with
6  * the License. You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
25 #ifndef APACHE_MPM_WINNT_H
26 #define APACHE_MPM_WINNT_H
27 
28 #include "apr_proc_mutex.h"
29 #include "ap_listen.h"
30 #include "scoreboard.h"
31 
32 /* From service.c: */
33 
34 #define SERVICE_APACHE_RESTART 128
35 
36 #ifndef AP_DEFAULT_SERVICE_NAME
37 #define AP_DEFAULT_SERVICE_NAME "Apache2.x"
38 #endif
39 
40 #define SERVICECONFIG "System\\CurrentControlSet\\Services\\%s"
41 #define SERVICEPARAMS "System\\CurrentControlSet\\Services\\%s\\Parameters"
42 
43 apr_status_t mpm_service_set_name(apr_pool_t *p, const char **display_name,
44  const char *set_name);
46  int fixed_args);
47 
48 apr_status_t mpm_service_to_start(const char **display_name, apr_pool_t *p);
51  char const* const* argv, int reconfig);
53 
55  char const* const* argv);
56 
57 void mpm_signal_service(apr_pool_t *ptemp, int signal);
58 
60 
63 
64 /* From nt_eventlog.c: */
65 
66 void mpm_nt_eventlog_stderr_open(const char *display_name, apr_pool_t *p);
68 
69 /* From mpm_winnt.c: */
70 
72 extern int ap_threads_per_child;
73 
74 extern DWORD my_pid;
75 extern volatile ap_generation_t my_generation;
77 extern HANDLE exit_event;
78 
79 extern int winnt_mpm_state;
80 extern OSVERSIONINFO osver;
81 extern DWORD stack_res_flag;
82 
83 extern void clean_child_exit(int);
84 
85 typedef enum {
91 
93 
94 /* From child.c: */
95 void child_main(apr_pool_t *pconf, DWORD parent_pid);
96 
97 #endif /* APACHE_MPM_WINNT_H */
Apache Listeners Library.
APR Process Locking Routines.
DWORD stack_res_flag
int ap_threads_per_child
void clean_child_exit(int)
void mpm_start_child_console_handler(void)
apr_status_t mpm_service_start(apr_pool_t *ptemp, int argc, char const *const *argv)
volatile ap_generation_t my_generation
apr_status_t mpm_service_to_start(const char **display_name, apr_pool_t *p)
apr_status_t mpm_service_set_name(apr_pool_t *p, const char **display_name, const char *set_name)
ap_signal_parent_e
Definition: mpm_winnt.h:85
void child_main(apr_pool_t *pconf, DWORD parent_pid)
module AP_MODULE_DECLARE_DATA mpm_winnt_module
void mpm_nt_eventlog_stderr_open(const char *display_name, apr_pool_t *p)
OSVERSIONINFO osver
void mpm_signal_service(apr_pool_t *ptemp, int signal)
void hold_console_open_on_error(void)
void mpm_start_console_handler(void)
void ap_signal_parent(ap_signal_parent_e type)
void mpm_service_stopping(void)
DWORD my_pid
apr_status_t mpm_service_uninstall(void)
int winnt_mpm_state
apr_status_t mpm_service_started(void)
apr_proc_mutex_t * start_mutex
HANDLE exit_event
apr_status_t mpm_service_install(apr_pool_t *ptemp, int argc, char const *const *argv, int reconfig)
void mpm_nt_eventlog_stderr_flush(void)
apr_status_t mpm_merge_service_args(apr_pool_t *p, apr_array_header_t *args, int fixed_args)
@ SIGNAL_PARENT_SHUTDOWN
Definition: mpm_winnt.h:86
@ SIGNAL_PARENT_RESTART_GRACEFUL
Definition: mpm_winnt.h:88
@ SIGNAL_PARENT_RESTART
Definition: mpm_winnt.h:87
int apr_status_t
Definition: apr_errno.h:44
struct apr_pool_t apr_pool_t
Definition: apr_pools.h:60
#define AP_DECLARE(x)
Definition: macros.h:1
#define AP_MODULE_DECLARE_DATA
Definition: macros.h:16
Apache scoreboard library.
int ap_generation_t
Definition: scoreboard.h:78
Definition: apr_tables.h:62
Definition: apr_arch_proc_mutex.h:27
Definition: http_config.h:348
apr_pool_t * p