Brian Pane [Sun, 30 Oct 2005 22:55:35 +0000 (22:55 +0000)]
Moved the extended_status scoreboard update from ap_process_http_connection
to the EOR bucket destructor. Also, added some defensive code and comments
regarding r->pool lifetime to ap_process_http_connection.
Joe Orton [Sun, 30 Oct 2005 13:25:28 +0000 (13:25 +0000)]
Fix handling of unknown state tokens in If headers:
* modules/dav/main/mod_dav.h: Add dav_if_unknown to dav_if_state_type
enum.
* modules/dav/main/util.c (dav_add_if_state): Set returned type to
dav_if_unknown for an unknown state token.
(dav_validate_resource_state): Evaluate dav_if_unknown to fail
match unless in a Not condition.
Brian Pane [Sat, 29 Oct 2005 21:11:51 +0000 (21:11 +0000)]
Allocate the brigade containing the EOR bucket from the connection
pool, rather than the request pool, because the core output filter
may need to reference the brigade immediately after deleting the
EOR bucket (and thus the request pool). This fixes a coredump
encountered when running t/TEST on an httpd compiled with
"--enable-pool-debug."
Brian Pane [Fri, 28 Oct 2005 03:56:12 +0000 (03:56 +0000)]
Restore the socket timeout after setting it to zero for nonblocking
writes in ap_core_output_filter. (This fixes the mod_proxy errors
that the new core output filter had been causing.)
Ruediger Pluem [Tue, 25 Oct 2005 19:54:11 +0000 (19:54 +0000)]
* Fix PR36906 by not lower caseing the whole worker name. Only lower case the
schema when storing the worker url. Thus preventing case sensitive URI's in
BalancerMembers to get broken.
* Remove some redundant whitespace in variable declarations.
* Add some whitespace for clarity around an if and a while statement.
* Remove redundant and unneccessary casts
* Use APR_HASH_KEY_STRING
fe80::/16 is for link-scope link-local addresses in IPv6, they are not
for goign in Listen directives, VirtualHost blocks, or anything like
that, and won't work.
Perform a mass search and replace: 2001:db8 for fe80. 2001:db8 is the
IPv6 documentation prefix. See RFC3849 for more details.
Talking to end-users has highlighted the new simpler default configuration
layout as a major selling point "feature" of 2.2. Add it to the list of
new features.
* Now uses APR
* Supports IPv6 addresses
* Slighty less hurtful on memory
* archaic (but interesting) notes marked as historical
* Will not perform very well without APR >= 1.3 due to
lack of buffered file-io.
These days in most cases, "all bound IP addresses" means :: and 0.0.0.0
or even just ::. Rather than confuse users by trying to explain this in
the configuration, simply remove the now-erroneous reference to 0.0.0.0.
Brian Pane [Mon, 24 Oct 2005 00:28:58 +0000 (00:28 +0000)]
Remove the generation of flush bucket in mod_logio, now that
the nonblocking ap_core_output_filter knows how to defer the
call to the logio hook until the last bucket is actually
written to the network.
(backport from async-dev branch to 2.3 trunk)
Ruediger Pluem [Fri, 21 Oct 2005 21:50:46 +0000 (21:50 +0000)]
* Fix PR37145 (data loss with httpd-2.0.55 reverse proxy method=post) by
exchanging APR_BRIGADE_CONCAT with ap_save_brigade to ensure that
transient buckets get setaside correctly between various iterations of
ap_get_brigade calls.
Reviewed by: Joe Orton, William Rowe, Jim Jagielski, Jeff Trawick
Ruediger Pluem [Fri, 21 Oct 2005 13:54:38 +0000 (13:54 +0000)]
* Fix PR37100 (SEGV in mod_proxy_ajp), by sending the data up the filter
chain immediately instead of spooling it completely before passing it
to the filter chain. It contains a bandaid to handle intentional
flushes from Tomcat side. Further explanation in code and report.
ajp.h: Add ajp_msg_reuse prototype
mod_proxy_ajp.c: Adjust logic of ap_proxy_ajp_request
Ruediger Pluem [Fri, 21 Oct 2005 13:41:25 +0000 (13:41 +0000)]
* Fix PR31226 (AddOutputFilterByType deflate not active with mod_proxy), by
allowing ap_add_output_filters_by_type to handle proxied requests.
Basic tests by jorton and me show that this works, nobody can actually
remember why this limitation was introduced at all (r94028) and the mailing
list archives also gave no hint.
Roy T. Fielding [Tue, 18 Oct 2005 21:29:43 +0000 (21:29 +0000)]
Remove CGI block on OPTIONS method so that scripts can
respond to OPTIONS directly rather than via server default.
PR: 15242 Reviewed-by: Paul Querna, Andre Malo, William A. Rowe, Jr.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@326255 13f79535-47bb-0310-9956-ffa450edef68
Joshua Slive [Tue, 18 Oct 2005 16:22:04 +0000 (16:22 +0000)]
Document Roy's recent discovery that plain Alias/Redirect only
match complete path segments. I haven't tested the examples,
but they seem to be right according to the code.
Ruediger Pluem [Mon, 17 Oct 2005 18:59:52 +0000 (18:59 +0000)]
* Create new filters CACHE_OUT_SUBREQ / CACHE_SAVE_SUBREQ which only differ
by the type (AP_FTYPE_CONTENT_SET-1) from CACHE_OUT / CACHE_SAVE
(AP_FTYPE_CONTENT_SET+1). This ensures that subrequests to non local
resources do not get stuck in the middle of the road with the contents
only written to the temp file, because CACHE_OUT_SUBREQ / CACHE_SAVE_SUBREQ
are inserted *before* the SUBREQ_CORE filter in the filter chain.
Joe Orton [Thu, 13 Oct 2005 16:35:55 +0000 (16:35 +0000)]
* modules/ssl/ssl_engine_init.c (ssl_init_CheckServers): Fix IP/port
key generation which passed a bogus pointer for a %pA conversion,
hence could give false warnings for name-based-vhost use.
Joe Orton [Wed, 12 Oct 2005 11:04:18 +0000 (11:04 +0000)]
* support/ab.c (test): Increment count of started requests when a
non-blocking connect completes; avoids case where more requests are
made than intended.
Jim Jagielski [Tue, 11 Oct 2005 21:45:23 +0000 (21:45 +0000)]
Removed this file now that both the doc-only distribution
file 'bootJVM-doc-M.m.p.tar.gz' and source-plus-doc distribution
file 'bootJVM-srcdoc-M.m.p.tar.gz' files are in the repository
(at the root level of this project).
Ruediger Pluem [Sun, 9 Oct 2005 10:59:06 +0000 (10:59 +0000)]
* Fix a declaration problem introduced in r195013 that is C99 but not ANSI C
compatible. Thus move declaration of *worker to the top of find_session_route
to make it ANSI C compatible again.
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.
Pay close attention to core_create_req() ... and note
that not one other member of the r->vars is initialized
herein. Move this initialization elsewhere.
(If this is the 'default' - it really aught to be the
zero value, for that matter).