bool memory_report;
char const *panic_action;
char const *denied_msg;
- struct timeval min_response_window; /* for home servers */
+ struct timeval init_delay; /* initial request processing delay */
} MAIN_CONFIG_T;
#define SECONDS_PER_DAY 86400
FR_INTEGER_BOUND_CHECK("reject_delay", main_config.reject_delay, <=, 10);
FR_INTEGER_BOUND_CHECK("cleanup_delay", main_config.cleanup_delay, <=, 10);
- main_config.min_response_window.tv_sec = 0;
- main_config.min_response_window.tv_usec = 1000000 / 3;
+ /*
+ * Set default initial request processing delay to 1/3 of a second.
+ * Will be updated by the lowest response window across all home servers,
+ * if it is less than this.
+ */
+ main_config.init_delay.tv_sec = 0;
+ main_config.init_delay.tv_usec = 1000000 / 3;
/*
* Free the old configuration items, and replace them
/*
* (re) set the initial delay.
*/
- request->delay = (main_config.min_response_window.tv_sec * USEC) + main_config.min_response_window.tv_usec;
+ request->delay = (main_config.init_delay.tv_sec * USEC) + main_config.init_delay.tv_usec;
if (request->delay > USEC) request->delay = USEC;
gettimeofday(&when, NULL);
tv_add(&when, request->delay);
* Track the minimum response window, so that we can
* correctly set the timers in process.c
*/
- if (timercmp(&main_config.min_response_window, &home->response_window, >)) {
- main_config.min_response_window = home->response_window;
+ if (timercmp(&main_config.init_delay, &home->response_window, >)) {
+ main_config.init_delay = home->response_window;
}
FR_INTEGER_BOUND_CHECK("zombie_period", home->zombie_period, >=, 1);