*/
static HANDLE pipe;
-/* Stub functions until this MPM supports the connection status API */
-
-AP_DECLARE(void) ap_update_connection_status(long conn_id, const char *key, \
- const char *value)
-{
- /* NOP */
-}
-
-AP_DECLARE(void) ap_reset_connection_status(long conn_id)
-{
- /* NOP */
-}
-
-AP_DECLARE(apr_array_header_t *) ap_get_status_table(apr_pool_t *p)
-{
- /* NOP */
- return NULL;
-}
-
/*
* Command processors
*/
void mpm_nt_eventlog_stderr_open(char *argv0, apr_pool_t *p)
{
SECURITY_ATTRIBUTES sa;
- HANDLE hProc = GetCurrentProcess();
HANDLE hPipeRead = NULL;
HANDLE hPipeWrite = NULL;
- HANDLE hDup = NULL;
DWORD threadid;
apr_file_t *eventlog_file;
apr_file_t *stderr_file;
while ((remains > 0) && WaitForSingleObject(hConIn, 1000) != WAIT_FAILED);
}
-static BOOL die_on_logoff = FALSE;
-
static BOOL CALLBACK console_control_handler(DWORD ctrl_type)
{
switch (ctrl_type)
}
-/* Special situation - children of services need to mind their
- * P's & Q's and wait quietly, ignoring the mean OS signaling
- * shutdown and other horrors, to kill them gracefully...
- */
-
-static BOOL CALLBACK child_control_handler(DWORD ctrl_type)
-{
- switch (ctrl_type)
- {
- case CTRL_C_EVENT:
- case CTRL_BREAK_EVENT:
- /* for Interrupt signals, ignore them.
- * The system will also signal the parent process,
- * which will terminate Apache.
- */
- return TRUE;
-
- case CTRL_CLOSE_EVENT:
- case CTRL_LOGOFF_EVENT:
- case CTRL_SHUTDOWN_EVENT:
- /* for Shutdown signals, ignore them, but... .
- * The system will also signal the parent process,
- * which will terminate Apache, so we need to wait.
- */
- Sleep(30000);
- return TRUE;
- }
-
- /* We should never get here, but this is (mostly) harmless */
- return FALSE;
-}
-
-
void mpm_start_child_console_handler(void)
{
FreeConsole();
{
const char *full_description;
SC_HANDLE schSCManager;
- BOOL ret = 0;
/* Nothing to do if we are a console
*/