CHANGES revision cbe23d0a0ff097b3d544d714657452abc80e3c87
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap -*- coding: utf-8 -*-
30e7468f8f41aa30ada067b2c1d5d284046514daPeter DunlapChanges with Apache 2.3.0
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap[ When backported to 2.2.x, remove entry from this file ]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) ab: Overhaul stats collection and reporting to avoid integer
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap truncation and time divisions within the test loop, retain
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap native time resolution until output, remove unused data,
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap consistently round milliseconds, and generally avoid losing
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap accuracy of calculation due to type casts. PR 44878, 44931.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap [Roy T. Fielding]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) core: When testing for slash-terminated configuration paths in
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap ap_location_walk(), don't look past the start of an empty string
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap such as that created by a <Location ""> directive.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap [Chris Darroch]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) core, mod_proxy: If a kept_body is present, it becomes safe for
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap subrequests to support message bodies. Make sure that safety
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap checks within the core and within the proxy are not triggered
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap when kept_body is present. This makes it possible to embed
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap proxied POST requests within mod_include. [Graham Leggett]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_auth_form: Make sure the input filter stack is properly set
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap up before reading the login form. Make sure the kept body filter
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap is correctly inserted to ensure the body can be read a second
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap time safely should the authn be successful. [Graham Leggett,
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap Ruediger Pluem]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_request: Insert the KEPT_BODY filter via the insert_filter
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap hook instead of during fixups. Add a safety check to ensure the
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap filters cannot be inserted more than once. [Graham Leggett,
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap Ruediger Pluem]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) core: Do not allow Options ALL if not all options are allowed to be
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap overwritten. PR 44262 [Michał Grzędzicki <lazy iq.pl>]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) ap_cache_cacheable_headers_out() will (now) always
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap merge an error heaeders _before_ clearing them and _before_
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap merging in the actual entity headers and doing normal
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap hop-by-hop cleansing. [Dirk-Willem van Gulik].
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) cache: retire ap_cache_cacheable_hdrs_out() which was used
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap for both in- and out-put headers; and replace it by a single
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap ap_cache_cacheable_headers() wrapped in a in- and out-put
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap specific ap_cache_cacheable_headers_in()/out(). The latter
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap which will also merge error and ensure content-type. To keep
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap cache modules consistent with ease. This API change bumps
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap up the minor MM by one [Dirk-Willem van Gulik].
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_rewrite: Allow Cookie option to set secure and HttpOnly flags.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap PR 44799 [Christian Wenz <christian wenz.org>]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) Move the KeptBodySize directive, kept_body filters and the
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap ap_parse_request_body function out of the http module and into a
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap new module called mod_request, reducing the size of the core.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap [Graham Leggett]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_dbd: Handle integer configuration directive parameters with a
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap dedicated function.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) Change the directives within the mod_session* modules to be valid
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap both inside and outside the location/directory sections, as
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap suggested by wrowe. [Graham Leggett]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_auth_form: Add a module capable of allowing end users to log
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap in using an HTML form, storing the credentials within mod_session.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap [Graham Leggett]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) Add a function to the http filters that is able to parse an HTML
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap form request with the type of application/x-www-form-urlencoded.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap [Graham Leggett]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_session_crypto: Initialise SSL in the post config hook.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap [Ruediger Pluem, Graham Leggett]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_session_dbd: Add a session implementation capable of storing
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap session information in a SQL database via the dbd interface. Useful
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap for sites where session privacy is important. [Graham Leggett]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_session_crypto: Add a session encoding implementation capable
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap of encrypting and decrypting sessions wherever they may be stored.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap Introduces a level of privacy when sessions are stored on the
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap browser. [Graham Leggett]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_session_cookie: Add a session implementation capable of storing
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap session information within cookies on the browser. Useful for high
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap volume sites where server bound sessions are too resource intensive.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap [Graham Leggett]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_session: Add a generic session interface to unify the different
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap attempts at saving persistent sessions across requests.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap [Graham Leggett]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) core, authn/z: Avoid calling access control hooks for internal requests
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap with configurations which match those of initial request. Revert to
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap original behaviour (call access control hooks for internal requests
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap with URIs different from initial request) if any access control hooks or
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap providers are not registered as permitting this optimization.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap Introduce wrappers for access control hook and provider registration
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap which can accept additional mode and flag data. [Chris Darroch]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_dav: Return "method not allowed" if the destination URI of a WebDAV
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap copy / move operation is no DAV resource. PR 44734 [Ruediger Pluem]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) Introduced ap_expr API for expression evaluation.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap This is adapted from mod_include, which is the first module
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap to use the new API.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_authz_dbd: When redirecting after successful login/logout per
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap AuthzDBDRedirectQuery, do not report authorization failure, and use
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap first row returned by database query instead of last row.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap [Chris Darroch]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_rewrite: Initialize hash needed by ap_register_rewrite_mapfunc early
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap enough. PR 44641 [Daniel Lescohier <daniel.lescohier cnet.com>]
92adbba74606fdfb5f11be2a6497e53ff2224507Peter Cudhea - Sun Microsystems - Burlington, MA United States *) mod_cache: Handle If-Range correctly if the cached resource was stale.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap PR 44579 [Ruediger Pluem]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_ldap: Correctly return all requested attribute values
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap when some attributes have a null value.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap PR 44560 [Anders Kaseorg <anders kaseorg.com>]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) core: check symlink ownership if both FollowSymlinks and
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap SymlinksIfOwnerMatch are set [Nick Kew]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) core: fix origin checking in SymlinksIfOwnerMatch
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap PR 36783 [Robert L Mathews <rob-apache.org.bugs tigertech.net>]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_proxy: Do not try a direct connection if the connection via a
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap remote proxy failed before and the request has a request body.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap [Ruediger Pluem]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) Added 'disablereuse' option for ProxyPass which, essentially,
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap disables connection pooling for the backend servers.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap [Jim Jagielski]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) Activate mod_cache, mod_file_cache and mod_disc_cache as part of the
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap 'most' set for '--enable-modules' and '--enable-shared-mods'. Include
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap mod_mem_cache in 'all' as well. [Dirk-Willem van Gulik]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) Also install mod_so.h, mod_rewrite.h and mod_cache.h; as these
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap contain public function declarations which are useful for
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap third party module authors. PR 42431 [Dirk-Willem van Gulik].
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_dir, mod_negotiation: pass the output filter information
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap to newly created sub requests; as these are later on used
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap as true requests with an internal redirect. This allows for
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap mod_cache et.al. to trap the results of the redirect.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap [Dirk-Willem van Gulik, Ruediger Pluem]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_proxy_ajp: Do not retry request in the case that we either failed to
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap sent a part of the request body or if the request is not idempotent.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap PR 44334 [Ruediger Pluem]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_ldap: Add support (taking advantage of the new APR capability)
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap for ldap rebind callback while chasing referrals. This allows direct
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap searches on LDAP servers (in particular MS Active Directory 2003+)
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap using referrals without the use of the global catalog.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap PRs 26538, 40268, and 42557 [Paul J. Reder]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) Support chroot on Unix-family platforms
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap PR 43596 [Dimitar Pashev <mitko banksoft-bg.com>]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_ssl: Added server name indication support (SNI, RFC 4366).
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap PR 34607. [Kaspar Brand <asfbugz velox.ch>]. A test configuration
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap can be created with test/make_sni.sh [Dirk-Willem van Gulik].
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) ApacheMonitor.exe: Introduce --kill argument for use by the
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap installer. This will permit the installation tool to remove
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap all running instances before attempting to remove the .exe.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap [William Rowe]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_proxy: Lower memory consumption for short lived connections.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap PR 44026. [Ruediger Pluem]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_proxy: Keep connections to the backend persistent in the HTTPS case.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap [Ruediger Pluem]
1d73e59f8caac41c539211070dbc51318da5c71ePriya Krishnan *) mod_ssl: Add support for OCSP validation of client certificates.
1d73e59f8caac41c539211070dbc51318da5c71ePriya Krishnan PR 41123. [Marc Stern <marc.stern approach.be>, Joe Orton]
1d73e59f8caac41c539211070dbc51318da5c71ePriya Krishnan *) mod_unique_id: Fix timestamp value in UNIQUE_ID.
1d73e59f8caac41c539211070dbc51318da5c71ePriya Krishnan PR 37064 [Kobayashi <kobayashi firstserver.co.jp>]
1d73e59f8caac41c539211070dbc51318da5c71ePriya Krishnan *) mod_serf: New module for Reverse Proxying. [Paul Querna]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) core: Add the option to keep aside a request body up to a certain
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap size that would otherwise be discarded, to be consumed by filters
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap such as mod_include. When enabled for a directory, POST requests
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap to shtml files can be passed through to embedded scripts as POST
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap requests, rather being downgraded to GET requests. [Graham Leggett]
cf8c0ebaf84c824d8f14486e47457119c138ce3cPeter Dunlap *) mod_ssl: Fix TLS upgrade (RFC 2817) support. PR 41231. [Joe Orton]
cf8c0ebaf84c824d8f14486e47457119c138ce3cPeter Dunlap *) scoreboard: Correctly declare ap_time_process_request.
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) core; scoreboard: ap_get_scoreboard_worker(sbh) now takes the sbh member
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap from the connection rec, ap_get_scoreboard_worker(proc, thread) will now
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap provide the unusual legacy lookup. [William Rowe]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mpm winnt: fix null pointer dereference
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap PR 42572 [Davi Arnaut]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) core: reinstate location walk to fix config for subrequests
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap PR 41960 [Jose Kahan <jose w3.org>]
30e7468f8f41aa30ada067b2c1d5d284046514daPeter Dunlap *) mod_authnz_ldap, mod_authn_dbd: Tidy up the code to expose authn
*) mod_ldap, mod_authnzldap: Add support for nested groups (i.e. the ability
[Filip Hanik <devlist hanik.com>]
[David Jones <oscaremma gmail.com>]
[David M. Lee <dmlee crossroads.com>]
[Niklas Edmundsson <nikke acc.umu.se>]
[Stijn Hoop <stijn sandcat.nl>]
[Darryl Miles <darryl darrylmiles.org>]
[Niklas Edmundsson <nikke acc.umu.se>]
PR 39713. [Owen Taylor <otaylor redhat.com>]
final name. [Davi Arnaut <davi haxent.com.br>]
[Markus Schiegl <ms schiegl.com>]
*) Remove incorrect comments from scoreboard.h regarding conditional
[Chris Darroch <chrisd pearsoncmg.com>]
in ap_init_scoreboard(). [Chris Darroch <chrisd pearsoncmg.com>]
[Chris Darroch <chrisd pearsoncmg.com>]
and 'Reject' to mod_authz_core. The new directives introduce 'AND/OR'
*) mod_authz_dbd: SQL authz with Login/Session support [Nick Kew]
Apache 2.2.xx tree as documented, and except as noted, below.]
Changes with Apache 2.2.x and later:
Changes with Apache 2.0.x and later:
Changes with Apache 1.3.x and later: