diff options
-rw-r--r-- | server/main.c | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/server/main.c b/server/main.c index 5dff38339a..b43daf9640 100644 --- a/server/main.c +++ b/server/main.c @@ -52,9 +52,6 @@ * Most significant main() global data can be found in http_config.c */ -/* XXX call after module loading based on some cmd-line option/define - */ - static void show_mpm_settings(void) { int mpm_query_info; @@ -111,6 +108,8 @@ static void show_compile_settings(void) */ printf("Architecture: %ld-bit\n", 8 * (long)sizeof(void *)); + show_mpm_settings(); + printf("Server compiled with....\n"); #ifdef BIG_SECURITY_HOLE printf(" -D BIG_SECURITY_HOLE\n"); @@ -465,7 +464,7 @@ static void usage(process_rec *process) int main(int argc, const char * const argv[]) { char c; - int configtestonly = 0; + int configtestonly = 0, showcompile = 0; const char *confname = SERVER_CONFIG_FILE; const char *def_server_root = HTTPD_ROOT; const char *temp_error_log = NULL; @@ -600,8 +599,14 @@ int main(int argc, const char * const argv[]) destroy_and_exit_process(process, 0); case 'V': - show_compile_settings(); - destroy_and_exit_process(process, 0); + if (strcmp(ap_show_mpm(), "")) { /* MPM built-in? */ + show_compile_settings(); + destroy_and_exit_process(process, 0); + } + else { + showcompile = 1; + } + break; case 'l': ap_show_modules(); @@ -682,6 +687,10 @@ int main(int argc, const char * const argv[]) ap_log_error(APLOG_MARK, APLOG_STARTUP, 0, NULL, "Syntax OK"); destroy_and_exit_process(process, 0); } + else if (showcompile) { /* deferred due to dynamically loaded MPM */ + show_compile_settings(); + destroy_and_exit_process(process, 0); + } } signal_server = APR_RETRIEVE_OPTIONAL_FN(ap_signal_server); |