21 lines
731 B
Diff
21 lines
731 B
Diff
|
--- modules/http/http_core.c.orig
|
||
|
+++ modules/http/http_core.c
|
||
|
@@ -47,12 +47,15 @@ static int ap_process_http_connection(co
|
||
|
static const char *set_keep_alive_timeout(cmd_parms *cmd, void *dummy,
|
||
|
const char *arg)
|
||
|
{
|
||
|
+ apr_interval_time_t timeout;
|
||
|
const char *err = ap_check_cmd_context(cmd, NOT_IN_DIR_LOC_FILE|NOT_IN_LIMIT);
|
||
|
if (err != NULL) {
|
||
|
return err;
|
||
|
}
|
||
|
-
|
||
|
- cmd->server->keep_alive_timeout = apr_time_from_sec(atoi(arg));
|
||
|
+ /* Stolen from mod_proxy.c */
|
||
|
+ if (ap_timeout_parameter_parse(arg, &timeout, "s") != APR_SUCCESS)
|
||
|
+ return "KeepAliveTimeout has wrong format";
|
||
|
+ cmd->server->keep_alive_timeout = timeout;
|
||
|
return NULL;
|
||
|
}
|
||
|
|