Export and install the mod_rewrite.h header to ensure the optional
rewrite_mapfunc_t and ap_register_rewrite_mapfunc functions are
available to third party modules.
Minor bump when exporting mod_rewrite.h
Reviewed by: minfrin, niq, rpluem
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x@720590 13f79535-47bb-0310-9956-ffa450edef68
The response to the TRACE method is partially garbled on an EBCDIC platform.
Send the request line and trailing CRLF in ASCII.
Submitted by: David Jones <oscaremma gmail.com>
Reviewed and tested by: gregames
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x@660728 13f79535-47bb-0310-9956-ffa450edef68
r605838 from trunk:
* Enable the proxy to keep connections persistent in the HTTPS case.
Basicly the persistence is created by keeping the conn_rec structure
created for our backend connection (whether http or https) in the connection
pool. This required to adjust scoreboard.c in a way that its functions can
properly deal with a NULL scoreboard handle by ignoring the call or returning
an error code.
* Use a separate subpool to manage the data for the socket and the connection
member of the proxy_conn_rec struct as we destroy this data more frequently
than other data in the proxy_conn_rec struct like hostname and addr (at least
in the case where we have keepalive connections that timed out and were
closed by the backend).
This fixes a memory leak with short lived and broken connections.
* Fix another memory leak related to PR 44026. Now that we keep the connection
data structure alive in the reslist, the live time of c->pool is too long.
r->pool has the correct live time since rp dies before r.
* Do not register connection_cleanup as cleanup for the conn->pool. In the past
it was needed to register connection_cleanup as a cleanup for the frontend
connection memory pool (c->pool) to ensure that connection returns into the
connection pool if the memory pool of the frontend connection memory pool
gets destroyed / cleared. Now we ensure explicitly the connection returns
to the connection pool once we finished handling the request.
* Tag the pools appropriately to ease memory debugging.
* Only sent a flush bucket down the chain if buckets where sent down the chain
before that could still be buffered in the network filter. This is the case
if we have sent an EOS bucket or if we actually sent buckets with
data down the chain. In all other cases we either have not sent any
buckets at all down the chain or we only sent meta buckets that are
not EOS buckets down the chain. The only meta bucket that remains in
this case is the flush bucket which would have removed all possibly
buffered buckets in the network filter.
If we sent a flush bucket in the case where not ANY buckets were
sent down the chain, we break error handling which happens AFTER us.
* Using the reslist pool for the proxy_conn_rec structure introduces a memory
leak when connections get created and destroyed frequently by the reslist
(e.g. destroying idle elements of the reslist). So use the subpool
dedicated for the proxy_conn_rec structure to allocate the memory for the
structure itself.
PR: 44026, 44543
Submitted by: rpluem
Reviewed by: jim, rpluem, fielding
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x@657440 13f79535-47bb-0310-9956-ffa450edef68
Add in SeeRequestTail directive, to handle the shortcoming
of only storing 63 bytes of the request, when the requests
are longer than that and only vary towards the end; eg:
GET /disk1/storage/apache/htdocs/images/image-store1/food/fruits/seeded/apples.jpg
GET /disk1/storage/apache/htdocs/images/image-store1/food/fruits/seeded/pears.jpg
GET /disk1/storage/apache/htdocs/images/image-store1/food/fruits/seeded/plums.jpg
Submitted by: jim
Reviewed by: jim, rpluem, niq
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x@602508 13f79535-47bb-0310-9956-ffa450edef68
Enable retry=0 for the worker.
This allows to have an option to always retry
the workers in error state instead using a
specified time.
Move new struct member to the end of the struct,
so we can keep the compatibility.
Submitted by: mturk
Reviewed by: jim
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x@576910 13f79535-47bb-0310-9956-ffa450edef68
Add alternative fixes for CVE-2007-3304:
* configure.in: Check for getpgid.
* include/mpm_common.h (ap_mpm_safe_kill): New prototype.
* server/mpm_common.c (reclaim_one_pid): Ensure pid validity before
calling apr_proc_wait().
(ap_mpm_safe_kill): New function.
* server/mpm/prefork/prefork.c, server/mpm/worker/worker.c,
server/mpm/experimental/event/event.c: Use ap_mpm_safe_kill() on pids
from the scoreboard, throughout.
* include/ap_mmn.h: Minor bump.
* server/mpm_common.c: getpgid() returns a pid_t
Submitted by: jorton, jim
Reviewed by: jorton, jim, rpluem
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x@556936 13f79535-47bb-0310-9956-ffa450edef68
* Add extern "C" linkage to several headers to make it easier to use
them in C++ code.
PR: 42286
Submitted by: Davi Arnaut <davi haxent.com.br>
Reviewed by: rpluem, wrowe, niq
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x@536627 13f79535-47bb-0310-9956-ffa450edef68
as HTTP status codes, as documented in PR#31759 (a bug shared by
the default handler, mod_cgi, mod_cgid, mod_proxy, and probably
others).
+1: niq, minfrin, rpluem
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x@463488 13f79535-47bb-0310-9956-ffa450edef68
*) The full server version information is now included in the error log at
startup as well as server status reports, irrespective of the setting
of the ServerTokens directive. ap_get_server_version() is now
deprecated, and is replaced by ap_get_server_banner() and
ap_get_server_description().
Reviewed by: rpluem, jim
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x@446606 13f79535-47bb-0310-9956-ffa450edef68
* Add optional 'scheme://' prefix to ServerName directive. For
'https', mod_http returns "https" for the ap_hook_http_scheme and
DEFAULT_HTTPS_PORT for ap_hook_default_port. This fixes Redirect
responses to requests for directories without a trailing slash
when httpd runs behind a proxy or offload device that processes
SSL. It also enables support for Subversion in that
configuration. This change is completely backwards compatible
and passes the perl-framework. Minor mmn bump because I add a
field to server_rec.
* Document r399947, addition of optional scheme:// to ServerName directive
PR: 33398
Submitted by: sctemme
Reviewed by: sctemme, rpluem, wrowe
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.2.x@425051 13f79535-47bb-0310-9956-ffa450edef68