diff options
| author | William A. Rowe Jr <wrowe@apache.org> | 2005-10-06 01:29:42 +0000 |
|---|---|---|
| committer | William A. Rowe Jr <wrowe@apache.org> | 2005-10-06 01:29:42 +0000 |
| commit | 7e2a5490d174a33c3da70db17bc5d4e5a7a22cf9 (patch) | |
| tree | 8cf157ab9c86f6d6a5d76f863cee50505514d801 /modules/http | |
| parent | e279db098e9447b7e25f94f71394ef16e8c2097a (diff) | |
| download | httpd-7e2a5490d174a33c3da70db17bc5d4e5a7a22cf9.tar.gz | |
NET_TIME, as a standalone feature, was a horrid idea.
The core filter will NOT operate correctly across platforms
(even between Linux/Solaris) without setting up the conn->timeout,
so always apply the timeout when establishing the core filter.
The keep-alive-timeout is entirely an HTTP-ism, and needs to
move to the http protocol handler. Note #1; this isn't triggered
in the event mpm, but the event mpm introspects s->keep_alive_timeout
directly adding it to the pollset, so this is a non-sequitor.
Finally, once the headers are read, the named virtual host may
have a different (more/less permissive) timeout for the remainder
of the request body. This http-centric patch picks up that subtle
detail and can switch to a named-vhost timeout.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@306495 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'modules/http')
| -rw-r--r-- | modules/http/http_core.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/modules/http/http_core.c b/modules/http/http_core.c index 58a268fe7b..db0dc4fd15 100644 --- a/modules/http/http_core.c +++ b/modules/http/http_core.c @@ -181,11 +181,13 @@ static int ap_process_http_connection(conn_rec *c) if (ap_graceful_stop_signalled()) break; - /* Go straight to select() to wait for the next request */ + if (!csd) { csd = ap_get_module_config(c->conn_config, &core_module); } apr_socket_opt_set(csd, APR_INCOMPLETE_READ, 1); + apr_socket_timeout_set(csd, c->base_server->keep_alive_timeout); + /* Go straight to select() to wait for the next request */ } return OK; |
