CHANGES revision 4ea8055e720d18f386b8026b546e5836ecccba4a
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina -*- coding: utf-8 -*-
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel BřezinaChanges with Apache 2.3.7
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_proxy, mod_proxy_http: Support remote https proxies
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina by using HTTP CONNECT.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina PR 19188. [Philippe Dutrueux <lilas evidian.com>, Rainer Jung]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel BřezinaChanges with Apache 2.3.6
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) worker: Don't report server has reached MaxClients until it has.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina Add message when server gets within MinSpareThreads of MaxClients.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina PR 46996. [Dan Poirier]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_session: Session expiry was being initialised, but not updated
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina on each session save, resulting in timed out sessions when there
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina should not have been. Fixed. [Graham Leggett]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_log_config: Add the R option to log the handler used within the
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina request. [Christian Folini <christian.folini netnea com>]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) Allow fine control over the removal of Last-Modified and ETag headers
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina within the INCLUDES filter, making it possible to cache responses if
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina desired. Fix the default value of the SSIAccessEnable directive.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina [Graham Leggett]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) Add new UnDefine directive to undefine a variable. PR 35350.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina [Stefan Fritsch]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) Make ap_pregsub(), used by AliasMatch and friends, use the same syntax
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina for regex backreferences as mod_rewrite and mod_include: Remove the use
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina of '&' as an alias for '$0' and allow to escape any character with a
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina backslash. PR 48351. [Stefan Fritsch]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_authnz_ldap: If AuthLDAPCharsetConfig is set, also convert the
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina password to UTF-8. PR 45318.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina [Johannes Müller <joh_m gmx.de>, Stefan Fritsch]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) ab: Fix calculation of requests per second in HTML output. PR 48594.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina [Stefan Fritsch]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_authnz_ldap: Failures to map a username to a DN, or to check a user
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina password now result in an informational level log entry instead of
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina warning level. [Eric Covener]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel BřezinaChanges with Apache 2.3.5
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) Ensure each subrequest has a shallow copy of headers_in so that the
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina parent request headers are not corrupted. Elimiates a problematic
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina optimization in the case of no request body. PR 48359
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina [Jake Scott, William Rowe, Ruediger Pluem]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) Turn static function get_server_name_for_url() into public
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina ap_get_server_name_for_url() and use it where appropriate. This
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina fixes mod_rewrite generating invalid URLs for redirects to IPv6
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina literal addresses. [Stefan Fritsch]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_ldap: Introduce new config option LDAPTimeout to set the timeout
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina for LDAP operations like bind and search. [Stefan Fritsch]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_proxy, mod_proxy_ftp: Move ProxyFtpDirCharset from mod_proxy to
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina mod_proxy_ftp. [Takashi Sato]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_proxy, mod_proxy_connect: Move AllowCONNECT from mod_proxy to
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina mod_proxy_connect. [Takashi Sato]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_cache: Do an exact match of the keys defined by
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina CacheIgnoreURLSessionIdentifiers against the querystring instead of
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina a partial match. PR 48401.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina [Dodou Wang <wangdong.08 gmail.com>, Ruediger Pluem]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_proxy_balancer: Fix crash in balancer-manager. [Rainer Jung]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) Core HTTP: disable keepalive when the Client has sent
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina Expect: 100-continue
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina but we respond directly with a non-100 response.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina Keepalive here led to data from clients continuing being treated as
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina a new request.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina PR 47087 [Nick Kew]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) Core: reject NULLs in request line or request headers.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina PR 43039 [Nick Kew]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) Core: (re)-introduce -T commandline option to suppress documentroot
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina check at startup.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina PR 41887 [Jan van den Berg <janvdberg gmail.com>]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_autoindex: support XHTML as equivalent to HTML in IndexOptions,
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina ScanHTMLTitles, ReadmeName, HeaderName
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina PR 48416 [Dmitry Bakshaev <dab18 izhnet.ru>, Nick Kew]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) Proxy: Fix ProxyPassReverse with relative URL
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina Derived (slightly erroneously) from PR 38864 [Nick Kew]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_headers: align Header Edit with Header Set when used on Content-Type
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina PR 48422 [Cyril Bonté <cyril.bonte free.fr>, Nick Kew>]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_headers: Enable multi-match-and-replace edit option
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina PR 47066 [Nick Kew]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_filter: enable it to act on non-200 responses.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina PR 48377 [Nick Kew]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel BřezinaChanges with Apache 2.3.4
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) Replace AcceptMutex, LockFile, RewriteLock, SSLMutex, SSLStaplingMutex,
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina and WatchdogMutexPath with a single Mutex directive. Add APIs to
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina simplify setup and user customization of APR proc and global mutexes.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina (See util_mutex.h.) Build-time setting DEFAULT_LOCKFILE is no longer
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina respected; set DEFAULT_REL_RUNTIMEDIR instead. [Jeff Trawick]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) http_core: KeepAlive no longer accepts other than On|Off.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina [Takashi Sato]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_dav: Remove errno from dav_error interface. Calls to dav_new_error()
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina and dav_new_error_tag() must be adjusted to add an apr_status_t parameter.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina [Jeff Trawick]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_authnz_ldap: Add AuthLDAPBindAuthoritative to allow Authentication to
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina try other providers in the case of an LDAP bind failure.
35fa5a83ce8badf6bc868937047f44c3f32b7c28Sumit Bose PR 46608 [Justin Erenkrantz, Joe Schaefer, Tony Stevenson]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) Build: fix --with-module to work as documented
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina PR 43881 [Gez Saunders <gez.saunders virgin.net>]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel BřezinaChanges with Apache 2.3.3
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) SECURITY: CVE-2009-3095 (cve.mitre.org)
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina mod_proxy_ftp: sanity check authn credentials.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina [Stefan Fritsch <sf fritsch.de>, Joe Orton]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) SECURITY: CVE-2009-3094 (cve.mitre.org)
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina mod_proxy_ftp: NULL pointer dereference on error paths.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina [Stefan Fritsch <sf fritsch.de>, Joe Orton]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_ssl: enable support for ECC keys and ECDH ciphers. Tested against
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina OpenSSL 1.0.0b3. [Vipul Gupta <vipul.gupta sun.com>, Sander Temme]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_dav: Include uri when logging a PUT error due to connection abort.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina PR 38149. [Stefan Fritsch]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_dav: Return 409 instead of 500 for a LOCK request if the parent
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina resource does not exist or is not a collection. PR 43465. [Stefan Fritsch]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_dav_fs: Return 409 instead of 500 for Litmus test case copy_nodestcoll
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina (a COPY request where the parent of the destination resource does not
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina exist). PR 39299. [Stefan Fritsch]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_dav_fs: Don't delete the whole file if a PUT with content-range failed.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina PR 42896. [Stefan Fritsch]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_dav_fs: Make PUT create files atomically and no longer destroy the
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina old file if the transfer aborted. PR 39815. [Paul Querna, Stefan Fritsch]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_dav_fs: Remove inode keyed locking as this conflicts with atomically
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina creating files. On systems with inode numbers, this is a format change of
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina the DavLockDB. The old DavLockDB must be deleted on upgrade.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina [Stefan Fritsch]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) mod_log_config: Make ${cookie}C correctly match whole cookie names
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina instead of substrings. PR 28037. [Dan Franklin <dan dan-franklin.com>,
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina Stefan Fritsch]
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina *) vhost: A purely-numeric Host: header should not be treated as a port.
d3dee2a07f1a8ee9ae6f94e149ced754ef76c248Pavel Březina PR 44979 [Nick Kew]
[Dr Stephen Henson <shenson oss-institute.org>]
PR 47178. [Philipp Hagemeister <oss phihag.de>]
Brian France <brian brianfrance.com>]
modules to avoid segmentation fault. PR 47951. [hirose31 gmail.com]
*) mod_logio/core: Report more accurate byte counts in mod_status if
for the default values of 1024 for LdapCacheEntries/LdapOpCacheEntries.
the request is a CONNECT request. [Bill Zajac <billz consultla.com>]
[Peter Grandi <pg_asf asf.for.sabi.co.uk>, Graham Leggett]
Log 408 errors in access log as was done in Apache 1.3.x.
PR 39785 [Nobutaka Mantani <nobutaka nobutaka.org>,
Stefan Fritsch <sf fritsch.de>, Dan Poirier]
Brian France <brian brianfrance.com>]
Brian France <brian brianfrance.com>]
[Stefan Fritsch <sf sfritsch.de>]
*) mod_session.c: Prevent a segfault when session is added but not
definition. [Stefan Fritsch sf sfritsch.de]
*) Add support for HTTP PUT to ab. [Jeff Barnes <jbarnesweb yahoo.com>]
PR 46971 [evanc nortel.com]
[Stefan Fritsch <sf sfritsch.de>]
for a file is missing. PR 47682 [Peter Poeml <poeml suse.de>]
*) SECURITY: CVE-2009-1890 (cve.mitre.org)
*) SECURITY: CVE-2009-1191 (cve.mitre.org)
by the client. PR 33098 [ Stefan Fritsch <sf sfritsch.de>]
PR 42175 [Jim Radford <radford blackbean.org>]
type. PR 45107. [Michael Ströder <michael stroeder.com>,
PR 44020 [Håkon Stordahl <hakon stordahl.org>]
CGI process. PR 47335 [Kornél Pál <kornelpal gmail.com>]
PR 46942 [Dan Poirier <poirier pobox.com>]
PR 44729 [Sönke Tesch <st kino-fahrplan.de>, Jim Jagielski]
PR 47177 [Carlos Garcia Braschi <cgbraschi gmail.com>]
PR 45082 [Vitaly Polonetsky <m_vitaly topixoft.com>]
[Marko Kevac <mkevac gmail.com>]
as A/UX, Next, and Tandem. [Jeff Trawick]
directory listing. PR 46789 [Dan Poirier <poirier pobox.com>]
of module state across unload/load. [Jeff Trawick]
[Dan Poirier <poirier pobox.com>]
[Geoff Keating <geoffk apple.com>]
with kqueue (BSD/OS X) and excessive CPU with event ports (Solaris).
a media type has not been configured via mime.types, AddType,
[Ryan Phillips <ryan-apache trolocsis.com>]
[<tlhackque yahoo.com>]
*) prefork: Fix child process hang during graceful restart/stop in
*) core/utils: Enhance ap_escape_html API to support escaping non-ASCII chars
PR 45529 [Bob Ionescu <bobsiegen googlemail.com>]
times out before returning status line/headers.
PR 39332 [Masaoki Kobayashi <masaoki techfirm.co.jp>]
[Theo Schlossnagle <jesus omniti.com>, Paul Querna]
modules/proxy/balancers [Jim Jagielski]
privileges and Unix user/group IDs [Nick Kew]
logic replicate 2.2.x authz logic, and replace <Satisfy*>, Reject,
*) unixd: turn existing code into a module, and turn the set user/group
Suggested By André Warnier <aw ice-sa.com> [Eric Covener]
*) mod_ssl: Send Content-Type application/ocsp-request for POST requests to
OSCP responders. PR 46014 [Dr Stephen Henson <steve openssl.org>]
*) Export and install the mod_rewrite.h header to ensure the optional
*) New module mod_sed: filter Request/Response bodies through sed
null value. [David Shane Holden <dpejesh apache.org>]
*) ab: Make ab.c compile on VC6. PR 45024 [Ruediger Pluem]
*) configure: Don't reject libtool 2.x
overwritten. PR 44262 [Michał Grzędzicki <lazy iq.pl>]
PR 44799 [Christian Wenz <christian wenz.org>]
both inside and outside the location/directory sections, as
form request with the type of application/x-www-form-urlencoded.
*) mod_authz_dbd: When redirecting after successful login/logout per
PR 44560 [Anders Kaseorg <anders kaseorg.com>]
mod_cache et.al. to trap the results of the redirect.
PR 34607. [Kaspar Brand <asfbugz velox.ch>]. A test configuration
can be created with test/make_sni.sh [Dirk-Willem van Gulik].
*) ApacheMonitor.exe: Introduce --kill argument for use by the
*) mod_ldap, mod_authnzldap: Add support for nested groups (i.e. the ability
[David Jones <oscaremma gmail.com>]
[David M. Lee <dmlee crossroads.com>]
[Niklas Edmundsson <nikke acc.umu.se>]
[Stijn Hoop <stijn sandcat.nl>]
[Niklas Edmundsson <nikke acc.umu.se>]
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: