#define AP_SQ_MAIN_STATE 0
/** are we going to serve requests or are we just testing/dumping config */
#define AP_SQ_RUN_MODE 1
+ /** generation of the top-level apache parent */
+#define AP_SQ_CONFIG_GEN 2
/*
* return values for ap_state_query()
AP_DECLARE_DATA extern int ap_main_state;
/** run mode (normal, config test, config dump, ...) */
AP_DECLARE_DATA extern int ap_run_mode;
+/** run mode (normal, config test, config dump, ...) */
+AP_DECLARE_DATA extern int ap_config_generation;
/* for -C, -c and -D switches */
/** An array of all -C directives. These are processed before the server's
ap_scoreboard_image->global->restart_time,
DEFAULT_TIME_FORMAT, 0),
"</dt>\n", NULL);
- ap_rprintf(r, "<dt>Parent Server Generation: %d</dt>\n",
+ ap_rprintf(r, "<dt>Parent Server Config. Generation: %d</dt>\n",
+ ap_state_query(AP_SQ_CONFIG_GEN));
+ ap_rprintf(r, "<dt>Parent Server MPM Generation: %d</dt>\n",
(int)mpm_generation);
ap_rputs("<dt>Server uptime: ", r);
show_time(r, up_time);
AP_DECLARE_DATA int ap_main_state = AP_SQ_MS_INITIAL_STARTUP;
AP_DECLARE_DATA int ap_run_mode = AP_SQ_RM_UNKNOWN;
+AP_DECLARE_DATA int ap_config_generation = 1;
static void *create_core_dir_config(apr_pool_t *a, char *dir)
{
return ap_main_state;
case AP_SQ_RUN_MODE:
return ap_run_mode;
+ case AP_SQ_CONFIG_GEN:
+ return ap_config_generation;
default:
return AP_SQ_NOT_SUPPORTED;
}
apr_pool_destroy(ptemp);
for (;;) {
+ ap_config_generation++;
ap_main_state = AP_SQ_MS_DESTROY_CONFIG;
apr_hook_deregister_all();
apr_pool_clear(pconf);