CHANGES revision d23bf04157b2769eebb47aeddbc3fda3d8144e0f
a78048ccbdb6256da15e6b0e7e95355e480c2301nd -*- coding: utf-8 -*-
a78048ccbdb6256da15e6b0e7e95355e480c2301ndChanges with Apache 2.3.0
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) log core: ensure we use a special pool for stderr logging, so that
a78048ccbdb6256da15e6b0e7e95355e480c2301nd the stderr channel remains valid from the time plog is destroyed,
a78048ccbdb6256da15e6b0e7e95355e480c2301nd until the time the open_logs hook is called again. [William Rowe]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) main core: Emit errors during the initial apr_app_initialize()
a78048ccbdb6256da15e6b0e7e95355e480c2301nd or apr_pool_create() (when apr-based error reporting is not ready).
a78048ccbdb6256da15e6b0e7e95355e480c2301nd [William Rowe]
2e545ce2450a9953665f701bb05350f0d3f26275nd *) mpm_winnt: Prevent the parent-child pipe from leaking into other
d29d9ab4614ff992b0e8de6e2b88d52b6f1f153erbowen spawned processes, and ensure we have a /Device/null handle for
d29d9ab4614ff992b0e8de6e2b88d52b6f1f153erbowen stdout when running as-a-service. [William Rowe]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) log core: fix the new piped logger case where we couldn't connect
a78048ccbdb6256da15e6b0e7e95355e480c2301nd the replacement stderr logger's stderr to the NULL stdout stream.
af33a4994ae2ff15bc67d19ff1a7feb906745bf8rbowen Continue in this case, since the previous alternative of no error
3f08db06526d6901aa08c110b5bc7dde6bc39905nd logging at all (/dev/null) is far worse. [William Rowe]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_ldap: Avoid possible crashes, hangs, and busy loops due to
a78048ccbdb6256da15e6b0e7e95355e480c2301nd improper merging of the cache lock in vhost config
3f08db06526d6901aa08c110b5bc7dde6bc39905nd PR 43164 [Eric Covener]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_negotiation: preserve Query String in resolving a type map
a78048ccbdb6256da15e6b0e7e95355e480c2301nd PR 33112 [Jørgen Thomsen <apache jth.net>, Nick Kew]
11495c9f0bd33e51a25b4d532beadfbcf9b944a3nilgun *) mod_deflate: fix content_encoding detection in inflate_out filter
a78048ccbdb6256da15e6b0e7e95355e480c2301nd when it's not in response headers table.
f3ec420152ca921e4c1ce77782f51b53f659018dnd PR 42993 [Nick Kew]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_proxy: Improve network performance by setting APR_TCP_NODELAY
4b575a6b6704b516f22d65a3ad35696d7b9ba372rpluem (disable Nagle algorithm) on sockets if implemented.
4b575a6b6704b516f22d65a3ad35696d7b9ba372rpluem PR 42871 [Christian BOITEL <christian_boitel yahoo.fr>, Jim Jagielski]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_info: mod_info outputs invalid XHTML 1.0 transitional.
a78048ccbdb6256da15e6b0e7e95355e480c2301nd PR 42847 [Rici Lake <rici ricilake.net>]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mime.types: add registered Apple installer type
a78048ccbdb6256da15e6b0e7e95355e480c2301nd PR 40379 [Peter Bierman <pmb+apache apple.com>]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_ldap, mod_authnzldap: Add support for nested groups (i.e. the ability
a78048ccbdb6256da15e6b0e7e95355e480c2301nd to authorize an authenticated user via a "require ldap-group X" directive
a78048ccbdb6256da15e6b0e7e95355e480c2301nd where the user is not in group X, but is in a subgroup contained in X.
a78048ccbdb6256da15e6b0e7e95355e480c2301nd PR 42891 [Paul J. Reder]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_deflate: don't try to process metadata buckets as data. what should
a78048ccbdb6256da15e6b0e7e95355e480c2301nd have been a 413 error was logged as a 500 and a blank screen appeared
a78048ccbdb6256da15e6b0e7e95355e480c2301nd at the browser.
a78048ccbdb6256da15e6b0e7e95355e480c2301nd [Greg Ames, Ruediger Pluem]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) SECURITY: CVE-2007-3304 (cve.mitre.org)
a78048ccbdb6256da15e6b0e7e95355e480c2301nd prefork, worker, event MPMs: Ensure that the parent process cannot
a78048ccbdb6256da15e6b0e7e95355e480c2301nd be forced to kill processes outside its process group. [Joe Orton]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) SECURITY: CVE-2006-5752 (cve.mitre.org)
a78048ccbdb6256da15e6b0e7e95355e480c2301nd mod_status: Fix a possible XSS attack against a site with a public
a78048ccbdb6256da15e6b0e7e95355e480c2301nd server-status page and ExtendedStatus enabled, for browsers which
a78048ccbdb6256da15e6b0e7e95355e480c2301nd perform charset "detection". Reported by Stefan Esser. [Joe Orton]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) Event MPM: Add support for running under mod_ssl, by reverting to the
a78048ccbdb6256da15e6b0e7e95355e480c2301nd Worker MPM behaviors, when run under an input filter that buffers
a78048ccbdb6256da15e6b0e7e95355e480c2301nd its own data. [Paul Querna]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_ssl: Add support for caching SSL Sessions in memcached. [Paul Querna]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) SECURITY: CVE-2007-1862 (cve.mitre.org)
a78048ccbdb6256da15e6b0e7e95355e480c2301nd mod_mem_cache: Copy headers into longer lived storage; header names and
a78048ccbdb6256da15e6b0e7e95355e480c2301nd values could previously point to cleaned up storage
a78048ccbdb6256da15e6b0e7e95355e480c2301nd PR 41551 [Davi Arnaut <davi haxent.com.br>]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_cache: Do not set Date or Expires when they are missing from
a78048ccbdb6256da15e6b0e7e95355e480c2301nd the original response or are invalid. [Justin Erenkrantz]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_cache: Correctly handle HEAD requests on expired cache content.
a78048ccbdb6256da15e6b0e7e95355e480c2301nd PR 41230. [Niklas Edmundsson]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_proxy: Added ProxyPassMatch directive, which is similar
a78048ccbdb6256da15e6b0e7e95355e480c2301nd to ProxyPass but takes a regex local path prefix. [Jim Jagielski]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_so: Solve dev's confusion by reporting expected/seen module
a78048ccbdb6256da15e6b0e7e95355e480c2301nd magic signatures when failing with a 'garbled' message, and solve
a78048ccbdb6256da15e6b0e7e95355e480c2301nd user's confusion by pointing out 'perhaps compiled for a different
a78048ccbdb6256da15e6b0e7e95355e480c2301nd version of apache?'. [William Rowe]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_ssl: Version reporting update; displays 'compiled against'
a78048ccbdb6256da15e6b0e7e95355e480c2301nd Apache and build-time SSL Library versions at loglevel [info],
a78048ccbdb6256da15e6b0e7e95355e480c2301nd while reporting the run-time SSL Library version in the server
a78048ccbdb6256da15e6b0e7e95355e480c2301nd info tags. Helps to identify a mod_ssl built against one flavor
a78048ccbdb6256da15e6b0e7e95355e480c2301nd of OpenSSL but running against another (also adds SSL-C version
a78048ccbdb6256da15e6b0e7e95355e480c2301nd number reporting.) [William Rowe]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) core: Change etag generation to produce identical results on
a78048ccbdb6256da15e6b0e7e95355e480c2301nd 32-bit and 64-bit platforms. PR 40064. [Joe Orton]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) ab: Add -r option to continue after socket receive errors.
a78048ccbdb6256da15e6b0e7e95355e480c2301nd [Filip Hanik <devlist hanik.com>]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_ldap: Fix the search limit parameter to ldap_search_ext_s()
a78048ccbdb6256da15e6b0e7e95355e480c2301nd for SDKs that define LDAP_NO_LIMIT to something other than -1.
a78048ccbdb6256da15e6b0e7e95355e480c2301nd [David Jones <oscaremma gmail.com>]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_dbd: Introduce configuration groups to allow inheritance by virtual
a78048ccbdb6256da15e6b0e7e95355e480c2301nd hosts of database configurations from the main server. Determine the
a78048ccbdb6256da15e6b0e7e95355e480c2301nd minimal set of distinct configurations and share connection pools
a78048ccbdb6256da15e6b0e7e95355e480c2301nd whenever possible. Allow virtual hosts to override inherited SQL
a78048ccbdb6256da15e6b0e7e95355e480c2301nd statements. PR 41302. [Chris Darroch]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) core: Fix broken chunk filtering that causes all non blocking reads to be
a78048ccbdb6256da15e6b0e7e95355e480c2301nd converted into blocking reads. PR 41056. [Jean-Frederic Clere, Jim Jagielski]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) apxs: Enhance -q flag to print all known variables and their values
a78048ccbdb6256da15e6b0e7e95355e480c2301nd when invoked without variable name(s).
a78048ccbdb6256da15e6b0e7e95355e480c2301nd [William Rowe, Sander Temme]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_dbd: Create memory sub-pools for each DB connection and close
a78048ccbdb6256da15e6b0e7e95355e480c2301nd DB connections in a pool cleanup function. Ensure prepared statements
a78048ccbdb6256da15e6b0e7e95355e480c2301nd are destroyed before DB connection is closed. When using reslists,
a78048ccbdb6256da15e6b0e7e95355e480c2301nd prevent segfaults when child processes exit, and stop memory leakage
a78048ccbdb6256da15e6b0e7e95355e480c2301nd of ap_dbd_t structures. Avoid use of global s->process->pool, which
a78048ccbdb6256da15e6b0e7e95355e480c2301nd isn't destroyed by exiting child processes in most multi-process MPMs.
a78048ccbdb6256da15e6b0e7e95355e480c2301nd PR 39985. [Chris Darroch, Nick Kew]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) apxs: Eliminate run-time check for mod_so. PR 40653.
a78048ccbdb6256da15e6b0e7e95355e480c2301nd [David M. Lee <dmlee crossroads.com>]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) beos MPM: Create pmain pool and run modules' child_init hooks when
a78048ccbdb6256da15e6b0e7e95355e480c2301nd entering ap_mpm_run(), then destroy pmain when exiting ap_mpm_run().
a78048ccbdb6256da15e6b0e7e95355e480c2301nd [Chris Darroch]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) netware MPM: Destroy pmain pool when exiting ap_mpm_run() so that
a78048ccbdb6256da15e6b0e7e95355e480c2301nd cleanups registered in modules' child_init hooks are performed.
a78048ccbdb6256da15e6b0e7e95355e480c2301nd [Chris Darroch]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_dbd: Handle error conditions in dbd_construct() properly.
a78048ccbdb6256da15e6b0e7e95355e480c2301nd Simplify ap_dbd_open() and use correct arguments to apr_dbd_error()
a78048ccbdb6256da15e6b0e7e95355e480c2301nd when non-threaded. Register correct cleanup data in non-threaded
a78048ccbdb6256da15e6b0e7e95355e480c2301nd ap_dbd_acquire() and ap_dbd_cacquire(). Clean up configuration data
a78048ccbdb6256da15e6b0e7e95355e480c2301nd and merge function. Use ap_log_error() wherever possible.
a78048ccbdb6256da15e6b0e7e95355e480c2301nd [Chris Darroch, Nick Kew]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) core: Do not replace a Date header set by a proxied backend server.
a78048ccbdb6256da15e6b0e7e95355e480c2301nd PR 40232. [Ruediger Pluem]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_proxy: Ensure that at least scheme://hostname[:port] matches between
a78048ccbdb6256da15e6b0e7e95355e480c2301nd worker and URL when searching for the best fitting worker for a given URL.
a78048ccbdb6256da15e6b0e7e95355e480c2301nd PR 40910. [Ruediger Pluem]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_cache: Remove expired content from cache that cannot be revalidated.
a78048ccbdb6256da15e6b0e7e95355e480c2301nd PR 30370. [Ruediger Pluem]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_dbd: Stash DBD connections in request_config of initial request
a78048ccbdb6256da15e6b0e7e95355e480c2301nd only, or else sub-requests and internal redirections may cause
a78048ccbdb6256da15e6b0e7e95355e480c2301nd entire DBD pool to be stashed in a single HTTP request. [Chris Darroch]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_proxy: Add a missing assignment in an error checking code path.
a78048ccbdb6256da15e6b0e7e95355e480c2301nd PR 40865. [Andrew Rucker Jones <arjones simultan.dyndns.org>]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_mem_cache: Increase the minimum and default value for
a78048ccbdb6256da15e6b0e7e95355e480c2301nd MCacheMinObjectSize from 0 to 1, as a MCacheMinObjectSize of 0 does not
a78048ccbdb6256da15e6b0e7e95355e480c2301nd make sense and leads to a division by zero. PR 40576.
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) Fix issue which could cause error messages to be written to access logs
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) The LockFile directive, which specifies the location of
a78048ccbdb6256da15e6b0e7e95355e480c2301nd the accept() mutex lockfile, is deprecated. Instead, the
a78048ccbdb6256da15e6b0e7e95355e480c2301nd AcceptMutex directive now takes an optional lockfile
a78048ccbdb6256da15e6b0e7e95355e480c2301nd location parameter, ala SSLMutex. [Jim Jagielski]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mod_authn_dbd: Export any additional columns queried in the SQL select
a78048ccbdb6256da15e6b0e7e95355e480c2301nd into the environment with the name AUTHENTICATE_<COLUMN>. This brings
a78048ccbdb6256da15e6b0e7e95355e480c2301nd mod_authn_dbd behaviour in line with mod_authnz_ldap. [Graham Leggett]
11495c9f0bd33e51a25b4d532beadfbcf9b944a3nilgun *) mod_dbd: Key the storage of prepared statements on the hex string
a78048ccbdb6256da15e6b0e7e95355e480c2301nd value of server_rec, rather than the server name, as the server name
f3ec420152ca921e4c1ce77782f51b53f659018dnd may change (eg when the server name is set) at any time, causing
f086b4b402fa9a2fefc7dda85de2a3cc1cd0a654rjung weird behaviour in modules dependent on mod_dbd. [Graham Leggett]
0d0ba3a410038e179b695446bb149cce6264e0abnd *) mod_proxy_fcgi: Added win32 build. [Mladen Turk]
cc7e1025de9ac63bd4db6fe7f71c158b2cf09fe4humbedooh *) sendfile_nonblocking() takes the _brigade_ as an argument, gets
0d0ba3a410038e179b695446bb149cce6264e0abnd the first bucket from the brigade, finds it not to be a FILE
cc7e1025de9ac63bd4db6fe7f71c158b2cf09fe4humbedooh bucket and barfs. The fix is to pass a bucket rather than a brigade.
727872d18412fc021f03969b8641810d8896820bhumbedooh [Niklas Edmundsson <nikke acc.umu.se>]
0d0ba3a410038e179b695446bb149cce6264e0abnd *) mod_rewrite: support rewritemap by SQL query [Nick Kew]
ac082aefa89416cbdc9a1836eaf3bed9698201c8humbedooh *) ap_get_server_version() has been removed. Third-party modules must
0d0ba3a410038e179b695446bb149cce6264e0abnd now use ap_get_server_banner() or ap_get_server_description().
0d0ba3a410038e179b695446bb149cce6264e0abnd [Jeff Trawick]
727872d18412fc021f03969b8641810d8896820bhumbedooh *) All MPMs: Introduce a check_config phase between pre_config and
0d0ba3a410038e179b695446bb149cce6264e0abnd open_logs, to allow modules to review interdependent configuration
0d0ba3a410038e179b695446bb149cce6264e0abnd directive values and adjust them while messages can still be logged
30471a4650391f57975f60bbb6e4a90be7b284bfhumbedooh to the console. Handle relevant MPM directives during this phase
07dc96d063d49299da433f84b5c5681da9bbdf68rbowen and format messages for both the console and the error log, as
af33a4994ae2ff15bc67d19ff1a7feb906745bf8rbowen appropriate. [Chris Darroch]
7fec19672a491661b2fe4b29f685bc7f4efa64d4nd *) mod_proxy: don't URLencode tilde in path component
7fec19672a491661b2fe4b29f685bc7f4efa64d4nd [Stijn Hoop <stijn sandcat.nl>]
a78048ccbdb6256da15e6b0e7e95355e480c2301nd *) mpm_winnt: Fix return values from wait_for_many_objects.
[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>]
wildcard certificates. PR 37911. [Nick Burch <nick torchbox.com>]
and 'Reject' to mod_authz_core. The new directives introduce 'AND/OR'
*) mod_authz_dbd: SQL authz with Login/Session support [Nick Kew]
PR 40299 [Dave Hodder <dmh dmh.org.uk>]
PR 42186 [Issac Goldstand <margol beamartyr.net>]
ProxyPass directives. PR 40439. [serai lans-tv.com]
[Jeff Trawick, Bart van der Schans <schans hippo.nl>]
PR 20951. [adunn at ncipher.com]
*) ab.c: Correct behavior of HTTP request headers sent by ab
*) ab.c: The apr_port_t type is unsigned, but ab was using a
[Takashi Sato <serai lans-tv.com>]
*) core: Correct a regression since 2.0.x in the handling of AllowOverride
[Ruediger Pluem, toadie <toadie643 gmail.com>]
ProxyTimeout). PR 11540. [Stuart Children <stuart terminus.co.uk>]
[Eric Covener <covener gmail.com>]
*) Win32: Makefile.win will now build with MS VC 8 (Visual Studio 2005)
PR: 40573. [Matt Eaton <asf divinehawk.com>]
*) Allow htcacheclean, httxt2dbm, and fcgistarter to link apr/apr-util
[Eric Covener <covener gmail.com>]
*) core: Fix NONBLOCK status of listening sockets on restart/graceful
PR 37680. [Darius Davis <darius-abz free-range.com.au>]
[Davi Arnaut <davi haxent.com.br>]
[Davi Arnaut <davi haxent.com.br>]
AP_FILTER_ERROR. [Niklas Edmundsson <nikke acc.umu.se>]
[Brian <brectanu gmail.com>]
[Olivier BOEL <ob dorrboel.com>]
[Ruediger Pluem, Tomokazu Harada <harada sysrdc.ns-sol.co.jp>]
*) mod_proxy_ajp: Added cping/cpong support for the AJP protocol.
[Davi Arnaut <davi haxent.com.br>]
previously cached. [Davi Arnaut <davi haxent.com.br>]
config file. PR39380. [Niklas Edmundsson <nikke acc.umu.se>]
PR 29098. [Brock Bland <bbland serena.com>]
PR 30022, 40470. [William Rowe, Matt Eaton <asf divinehawk.com>]
PR 16637 30033 28089. [Matt Lewandowsky <matt iamcode.net>, William Rowe]
[Larry Cipriani <lvc lucent.com>]
[Larry Cipriani <lvc lucent.com>]
fails. PR 40310. [Ian Abel <ianabel mxtelecom.com>]
PR 38962. [Christian Boitel <cboitel lfdj.com>]
*) SECURITY: CVE-2006-3747 (cve.mitre.org)
and ignore other misspellings [Olivier Thereaux <ot w3.org>]
[Greg Ames, Jeff Trawick, Chris Darroch <chrisd pearsoncmg.com> ]
PR 38910. [Robby Griffin <rmg terc.edu>]
[Brian J. France <list firehawksystems.com>]
PR 38793. [Ruediger Pluem, matthias <mk-asf gigacodes.de>]
protocol input. PR 39282. [Davi Arnaut <davi haxent.com.br>]
<thiango nstalker.com>. [Mark Cox]
where it wouldn't work with the server (i.e., anywhere that has
*) SECURITY: CVE-2005-3357 (cve.mitre.org)
*) SECURITY: CVE-2005-3352 (cve.mitre.org)
*) Add APR/APR-Util Compiled and Runtime Version numbers to the
PR 38340. [Aleksey Pesternikov <apesternikov yahoo.com>]
when srclib/apr[-util] are symlinks rather than directories proper.
*) Fix syntax error in httpd.h with strict compilers. PR 38740.
[Per Olausson <pao darkheim.freeserve.co.uk>]
[Chris Darroch <chrisd pearsoncmg.com>]
[Ruediger Pluem, Ghassan Misherghi <ghassanm ucdavis.edu>]
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: