*) mod_proxy: Use the maxium of front end and backend timeouts instead of the
minimum when tunneling requests (websockets, CONNECT requests).
Backend timeouts can be configured more selectively (per worker if needed)
as front end timeouts and typically the backend timeouts reflect the
application requirements better. PR 65886
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.4.x@
1898559 13f79535-47bb-0310-9956-
ffa450edef68
-*- coding: utf-8 -*-
Changes with Apache 2.4.53
+ *) mod_proxy: Use the maxium of front end and backend timeouts instead of the
+ minimum when tunneling requests (websockets, CONNECT requests).
+ Backend timeouts can be configured more selectively (per worker if needed)
+ as front end timeouts and typically the backend timeouts reflect the
+ application requirements better. PR 65886 [Ruediger Pluem]
+
*) ap_regex: Use Thread Local Storage (TLS) to recycle ap_regexec() buffers
when an efficient TLS implementation is available. [Yann Ylavic]
return HTTP_INTERNAL_SERVER_ERROR;
}
- /* Set timeout to the lowest configured for client or backend */
+ /* Set timeout to the highest configured for client or backend */
apr_socket_timeout_get(backend->sock, &backend_timeout);
apr_socket_timeout_get(ap_get_conn_socket(c), &client_timeout);
- if (backend_timeout >= 0 && backend_timeout < client_timeout) {
+ if (backend_timeout >= 0 && backend_timeout > client_timeout) {
tunnel->timeout = backend_timeout;
}
else {
tunnel->origin->pfd->desc.s = ap_get_conn_socket(c_o);
tunnel->origin->pfd->client_data = tunnel->origin;
- /* Defaults to the smallest timeout of both connections */
+ /* Defaults to the biggest timeout of both connections */
apr_socket_timeout_get(tunnel->client->pfd->desc.s, &timeout);
apr_socket_timeout_get(tunnel->origin->pfd->desc.s, &tunnel->timeout);
- if (timeout >= 0 && (tunnel->timeout < 0 || tunnel->timeout > timeout)) {
+ if (timeout >= 0 && (tunnel->timeout < 0 || tunnel->timeout < timeout)) {
tunnel->timeout = timeout;
}