CHANGES revision 20e0c71be778348516719e1e58a9f55c8e78c570
f743002678eb67b99bbc29fee116b65d9530fec0wrowe -*- coding: utf-8 -*-
a34684a59b60a4173c25035d0c627ef17e6dc215rpluemChanges with Apache 2.3.12
1337c7673efc1f80f634139fbad7cbb98a0dc657ylavic *) MPM helper function ap_remove_pid() added. [Jeff Trawick]
1337c7673efc1f80f634139fbad7cbb98a0dc657ylavic *) Enable DEFAULT_REL_RUNTIMEDIR on Windows and NetWare. [various]
4da61833a1cbbca94094f9653fd970582b97a72etrawick *) Correct C++ incompatibility with http_log.h. [Stefan Fritsch, Jeff
4da61833a1cbbca94094f9653fd970582b97a72etrawick *) mod_log_config: Prevent segfault. PR 50861. [Torsten Förtsch
4789804be088bcd86ae637a29cdb7fda25169521jailletc *) core: AllowEncodedSlashes new option NoDecode to allow encoded slashes
4789804be088bcd86ae637a29cdb7fda25169521jailletc in request URL path info but not decode them. Change behavior of option
e50c3026198fd496f183cda4c32a202925476778covener "On" to decode the encoded slashes as 2.0 and 2.2 do. PR 35256,
e50c3026198fd496f183cda4c32a202925476778covener PR 46830. [Dan Poirier]
5b88c8507d5ef6d0c4cfbc78230294968175b638minfrin *) mod_ssl: Check SNI hostname against Host header case-insensitively.
5b88c8507d5ef6d0c4cfbc78230294968175b638minfrin PR 49491. [Mayank Agrawal <magrawal.08 gmail.com>]
6c3b9cebb551140fbb25d58bae08b539b3802133ylavic *) mod_ldap: Add LDAPConnectionPoolTTL to give control over lifetime
6c3b9cebb551140fbb25d58bae08b539b3802133ylavic of bound backend LDAP connections. PR47634 [Eric Covener]
4f29b65ab4b547ad5dbe506e2d0ff5d12ead9247ylavic *) mod_cache: Make CacheEnable and CacheDisable configurable per
0a0df13b7f1f4f1a74fe295253d89ca3911b301aylavic directory in addition to per server, making them work from within
0a0df13b7f1f4f1a74fe295253d89ca3911b301aylavic a LocationMatch. [Graham Leggett]
0a0df13b7f1f4f1a74fe295253d89ca3911b301aylavic *) worker, event, prefork: Correct several issues when built as
69301145375a889e7e37caf7cc7321ac0f91801erpluem DSOs; most notably, the scoreboard was reinitialized during graceful
69301145375a889e7e37caf7cc7321ac0f91801erpluem restart, such that processes of the previous generation were not
69301145375a889e7e37caf7cc7321ac0f91801erpluem observable. [Jeff Trawick]
506bfe33206b2fece40ef25f695af39dd4130facjkaluzaChanges with Apache 2.3.11
506bfe33206b2fece40ef25f695af39dd4130facjkaluza *) mod_proxy: balancer-manager now uses POST instead of GET.
d58a848a016d401b965111e50ef829e1641f7834minfrin [Jim Jagielski]
d58a848a016d401b965111e50ef829e1641f7834minfrin *) core: new util function: ap_parse_form_data(). Previously,
2e6f4d654c96c98b761fb012fd25c5d5b1558c44sf this capability was tucked away in mod_request. [Jim Jagielski]
2e6f4d654c96c98b761fb012fd25c5d5b1558c44sf *) core: new hook: ap_run_pre_read_request. [Jim Jagielski]
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavic *) mod_cache: When a request other than GET or HEAD arrives, we must
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavic invalidate existing cache entities as per RFC2616 13.10. PR 15868.
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavic [Graham Leggett]
e8bd80a4bb88199d2f9a24a50345688e52d9c116ylavic *) modules: Fix many modules that were not correctly initializing if they
e8bd80a4bb88199d2f9a24a50345688e52d9c116ylavic were not active during server startup but got enabled later during a
e8bd80a4bb88199d2f9a24a50345688e52d9c116ylavic graceful restart. [Stefan Fritsch]
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic *) core: Create new ap_state_query function that allows modules to determine
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic if the current configuration run is the initial one at server startup,
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic and if the server is started for testing/config dumping only.
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic [Stefan Fritsch]
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic *) mod_proxy: Runtime configuration of many parameters for existing
d7205b1a86c51c27b71a2c458dc453fd53a261c1covener balancers via the balancer-manager. [Jim Jagielski]
d7205b1a86c51c27b71a2c458dc453fd53a261c1covener *) mod_proxy: Runtime addition of new workers (BalancerMember) for existing
d7205b1a86c51c27b71a2c458dc453fd53a261c1covener balancers via the balancer-manager. [Jim Jagielski]
44ff304057225e944e220e981d434a046d14cf06covener *) mod_cache: When a bad Expires date is present, we need to behave as if
44ff304057225e944e220e981d434a046d14cf06covener the Expires is in the past, not as if the Expires is missing. PR 16521.
44ff304057225e944e220e981d434a046d14cf06covener [Co-Advisor <coad@measurement-factory.com>]
5d1ba75b8794925e67591c209085a49279791de9covener *) mod_cache: We must ignore quoted-string values that appear in a
5d1ba75b8794925e67591c209085a49279791de9covener Cache-Control header. PR 50199. [Graham Leggett]
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrand *) mod_dav: Revert change to send 501 error if unknown Content-* header is
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrand received for a PUT request. PR 42978. [Stefan Fritsch]
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrand *) mod_cache: Respect s-maxage as described by RFC2616 14.9.3, which must
caad2986f81ab263f7af41467dd622dc9add17f3ylavic take precedence if present. PR 35247. [Graham Leggett]
caad2986f81ab263f7af41467dd622dc9add17f3ylavic *) mod_ssl: Fix a possible startup failure if multiple SSL vhosts
caad2986f81ab263f7af41467dd622dc9add17f3ylavic are configured with the same ServerName and private key file.
45a10d38e6051fd7bdf9d742aaae633d97ff02abjailletc [Masahiro Matsuya <mmatsuya redhat.com>, Joe Orton]
f7317ff316c2b141feea31bddb74d5d3fa1584edjorton *) mod_socache_dc: Make module compile by fixing some typos.
2165214331e4afafca4048f66f303d0253d7b001covener PR 50735 [Mark Montague <mark catseye.org>]
a34684a59b60a4173c25035d0c627ef17e6dc215rpluem *) prefork: Update MPM state in children during a graceful stop or
1e2d421a36999d292042a5539971070d54aa6c63ylavic restart. PR 41743. [Andrew Punch <andrew.punch 247realmedia.com>]
1e2d421a36999d292042a5539971070d54aa6c63ylavic *) mod_mime: Ignore leading dots when looking for mime extensions.
fa7ed98b9dc94c5845cf845aea0a44ecacd290c9humbedooh PR 50434 [Stefan Fritsch]
fa7ed98b9dc94c5845cf845aea0a44ecacd290c9humbedooh *) core: Add support to set variables with the 'Define' directive. The
0b67eb8568cd58bb77082703951679b42cf098actrawick variables that can then be used in the config using the ${VAR} syntax
0b67eb8568cd58bb77082703951679b42cf098actrawick known from envvar interpolation. [Stefan Fritsch]
0b67eb8568cd58bb77082703951679b42cf098actrawick *) mod_proxy_http: make adding of X-Forwarded-* headers configurable.
5ef3c61605a3a021ff71f488983cb0065f8e1a79covener ProxyAddHeaders defaults to On. [Vincent Deffontaines]
09c87c777bed1655621bb20e1c46cb6b1a63279dcovener *) mod_slotmem_shm: Increase memory alignment for slotmem data.
6502b7b32f980cc2093bb3ebce37e5e4dc68fba4ylavic [Rainer Jung]
3060ce7f798fbda7999cd4ddf89b525d2b294185covener *) mod_ssl: Add config options for OCSP: SSLOCSPResponderTimeout,
c1a63b8fad09c419c1a64f75993feb8a343a6801ylavic SSLOCSPResponseMaxAge, SSLOCSPResponseTimeSkew.
c1a63b8fad09c419c1a64f75993feb8a343a6801ylavic [Kaspar Brand <httpd-dev.2011 velox.ch>]
e6b4bd1113567627ab6bb6c6a7105e1e01a7d889jailletc *) mod_ssl: Revamp output buffering to reduce network overhead for
e6b4bd1113567627ab6bb6c6a7105e1e01a7d889jailletc output fragmented into many buckets, such as chunked HTTP responses.
e466c40e1801982602ee0200c9e8b61cc148742djailletc [Joe Orton]
457468b82e59d01eba00dd9d0817309c8f5e414ejim *) core: Apply <If> sections to all requests, not only to file base requests.
457468b82e59d01eba00dd9d0817309c8f5e414ejim Allow to use <If> inside <Directory>, <Location>, and <Files> sections.
457468b82e59d01eba00dd9d0817309c8f5e414ejim The merging of <If> sections now happens after the merging of <Location>
04983e3bd1754764eec7d6bb772fe3b0bf391771jorton sections, even if an <If> section is embedded inside a <Directory> or
04983e3bd1754764eec7d6bb772fe3b0bf391771jorton <Files> section. [Stefan Fritsch]
15660979a30d251681463de2e0584853890082accovener *) mod_proxy: Refactor usage of shared data by dropping the scoreboard
15660979a30d251681463de2e0584853890082accovener and using slotmem. Create foundation for dynamic growth/changes of
49dacedb6c387b786b7911082ff35121a45f414bcovener members within a balancer. Remove BalancerNonce in favor of a
49dacedb6c387b786b7911082ff35121a45f414bcovener per-balancer 'nonce' parameter. [Jim Jagielski]
cfd9415521847b2f9394fad04fb701cfb955f503rjung *) mod_status: Don't show slots which are disabled by MaxClients as open.
cfd9415521847b2f9394fad04fb701cfb955f503rjung PR: 47022 [Jordi Prats <jordi prats gmail com>, Stefan Fritsch]
28c31fb73c1264bd1d0ff932573677030b024c7dwrowe *) mpm_prefork: Fix ap_mpm_query results for AP_MPMQ_MAX_DAEMONS and
28c31fb73c1264bd1d0ff932573677030b024c7dwrowe AP_MPMQ_MAX_THREADS.
28c31fb73c1264bd1d0ff932573677030b024c7dwrowe *) mod_authz_core: Fix bug in merging logic if user-based and non-user-based
8491e0600f69b0405e156ea8a419653c065c645bcovener authorization directives were mixed. [Stefan Fritsch]
63b9f1f5880391261705f696d7d65507bbe9ace3covener *) mod_authn_socache: change directive name from AuthnCacheProvider
63b9f1f5880391261705f696d7d65507bbe9ace3covener to AuthnCacheProvideFor. The term "provider" is overloaded in
49dacedb6c387b786b7911082ff35121a45f414bcovener this module, and we should avoid confusion between the provider
49dacedb6c387b786b7911082ff35121a45f414bcovener of a backend (AuthnCacheSOCache) and the authn provider(s) for
49dacedb6c387b786b7911082ff35121a45f414bcovener which this module provides cacheing (AuthnCacheProvideFor).
3c990331fc6702119e4f5b8ba9eae3021aea5265jim *) mod_proxy_http: Allocate the fake backend request from a child pool
3c990331fc6702119e4f5b8ba9eae3021aea5265jim of the backend connection, instead of misusing the pool of the frontend
3c990331fc6702119e4f5b8ba9eae3021aea5265jim request. Fixes a thread safety issue where buckets set aside in the
fc42512879dd0504532f52fe5d0d0383dda96a1eniq backend connection leak into other threads, and then disappear when
fc42512879dd0504532f52fe5d0d0383dda96a1eniq the frontend request is cleaned up, in turn causing corrupted buckets
fc42512879dd0504532f52fe5d0d0383dda96a1eniq to make other threads spin. [Graham Leggett]
0451df5dc50fa5d8b3e07d92ee6a92e36a1181a5niq *) mod_ssl: Change the format of the SSL_{CLIENT,SERVER}_{I,S}_DN variables
0451df5dc50fa5d8b3e07d92ee6a92e36a1181a5niq to be RFC 2253 compatible, convert non-ASCII characters to UTF8, and
da0442c0440caef34706e2c2f3af05cb65921cc0jailletc escape other special characters with backslashes. The old format can
983528026996668ea295be95aedb9c7a346af470ylavic still be used with the LegacyDNStringFormat argument to SSLOptions.
da0442c0440caef34706e2c2f3af05cb65921cc0jailletc *) core, mod_rewrite: Make the REQUEST_SCHEME variable available to
06b8f183140c8e02e0974e938a05078b511d1603covener scripts and mod_rewrite. [Stefan Fritsch]
06b8f183140c8e02e0974e938a05078b511d1603covener *) mod_rewrite: Allow to use arbitrary boolean expressions (ap_expr) in
15890c9306ba98f6fc243e15a3c4778ddc7d773erpluem RewriteCond. [Stefan Fritsch]
259878293a997ff49f5ddfc53d3739cbdc25444ecovener *) mod_rewrite: Allow to unset environment variables using E=!VAR.
259878293a997ff49f5ddfc53d3739cbdc25444ecovener PR 49512. [Mark Drayton <mark markdrayton info>, Stefan Fritsch]
15890c9306ba98f6fc243e15a3c4778ddc7d773erpluem *) mod_headers: Restore the 2.3.8 and earlier default for the first
b54b024c06a19926832d77d40ba35ad8c41e4d3dminfrin argument of the Header directive ("onsuccess"). [Eric Covener]
b54b024c06a19926832d77d40ba35ad8c41e4d3dminfrin *) core: Disallow the mixing of relative and absolute Options PR 33708.
65967d05f839dbf27cf91d91fa79585eeae19660minfrin [Sönke Tesch <st kino-fahrplan.de>]
65967d05f839dbf27cf91d91fa79585eeae19660minfrin *) core: When exporting request headers to HTTP_* environment variables,
65967d05f839dbf27cf91d91fa79585eeae19660minfrin drop variables whose names contain invalid characters. Describe in the
8152945ae46857b170cb227e79bb799f4fc7710dminfrin docs how to restore the old behaviour. [Malte S. Stretz <mss apache org>]
8152945ae46857b170cb227e79bb799f4fc7710dminfrin *) core: When selecting an IP-based virtual host, favor an exact match for
8152945ae46857b170cb227e79bb799f4fc7710dminfrin the port over a wildcard (or omitted) port instead of favoring the one
75f5c2db254c0167a0e396254460de09b775d203trawick that came first in the configuration file. [Eric Covener]
75f5c2db254c0167a0e396254460de09b775d203trawick *) core: Overlapping virtual host address/port combinations now implicitly
4f0358189bfa57b8e75bd6b94db264302a8f336amrumph enable name-based virtual hosting for that address. The NameVirtualHost
4f0358189bfa57b8e75bd6b94db264302a8f336amrumph directive has no effect, and _default_ is interpreted the same as "*".
4f0358189bfa57b8e75bd6b94db264302a8f336amrumph [Eric Covener]
5716f9c6daa92dde5f2f9d11ed63f7c9549c223atrawick *) core: In the absence of any Options directives, the default is now
5716f9c6daa92dde5f2f9d11ed63f7c9549c223atrawick "FollowSymlinks" instead of "All". [Igor Galić]
54d750a84a175d8e338880514d440773eb986b50covener *) rotatelogs: Add -e option to write logs through to stdout for optional
54d750a84a175d8e338880514d440773eb986b50covener further processing. [Graham Leggett]
54d750a84a175d8e338880514d440773eb986b50covener *) mod_ssl: Correctly read full lines in input filter when the line is
54d750a84a175d8e338880514d440773eb986b50covener incomplete during first read. PR 50481. [Ruediger Pluem]
54d750a84a175d8e338880514d440773eb986b50covener *) mod_authz_core: Add AuthzSendForbiddenOnFailure directive to allow
54d750a84a175d8e338880514d440773eb986b50covener sending '403 FORBIDDEN' instead of '401 UNAUTHORIZED' if authorization
7a3aa12f0eda24793ee26d6a179bd53132e9dae8covener fails for an authenticated user. PR 40721. [Stefan Fritsch]
54d750a84a175d8e338880514d440773eb986b50covenerChanges with Apache 2.3.10
4e30ef014533a7e93c92d88306291f5e49c9692ftrawick *) mod_rewrite: Don't implicitly URL-escape the original query string
83b50288fa7d306324bba68832011ea08f5c7832covener when no substitution has changed it. PR 50447. [Eric Covener]
5f066f496cd9f20a2a701255bc67d44e7cb46daetrawick *) core: Honor 'AcceptPathInfo OFF' during internal redirects,
5f066f496cd9f20a2a701255bc67d44e7cb46daetrawick such as per-directory mod_rewrite substitutions. PR 50349.
2e15620d724fb8e3a5be183b917359a2fd6e9468covener [Eric Covener]
2e15620d724fb8e3a5be183b917359a2fd6e9468covener *) mod_rewrite: Add 'RewriteOptions InheritBefore' to put the base
2e15620d724fb8e3a5be183b917359a2fd6e9468covener rules/conditions before the overridden rules/conditions. PR 39313.
1b988c41ee505962781d110a3e4c2c90f1ea0aa4covener *) mod_autoindex: add IndexIgnoreReset to reset the list of IndexIgnored
1b988c41ee505962781d110a3e4c2c90f1ea0aa4covener filenames in higher precedence configuration sections. PR 24243.
b8efdc95bec9cf089aa1be0bfd07d46aa1137a7acovener [Eric Covener]
b8efdc95bec9cf089aa1be0bfd07d46aa1137a7acovener *) mod_cgid: RLimit* directive support for mod_cgid. PR 42135
f06e7c4b1bce6b6491e5de0b7998d3f5696b293dchrisd [Eric Covener]
f06e7c4b1bce6b6491e5de0b7998d3f5696b293dchrisd *) core: Fail startup when the argument to ServerName looks like a glob
179565be4043d7e5f9161aa75271fa0a001866d9covener or a regular expression instead of a hostname (*?[]). PR 39863
111436a32ba1254291e4883292fb116d15fe8f64covener *) mod_userdir: Add merging of enable, disable, and filename arguments
fce4949fb0b309a5744afcd503c6ed2d35621ee2covener to UserDir directive, leaving enable/disable of userlists unmerged.
fce4949fb0b309a5744afcd503c6ed2d35621ee2covener PR 44076 [Eric Covener]
fce4949fb0b309a5744afcd503c6ed2d35621ee2covener *) httpd: When no -k option is provided on the httpd command line, the server
7b7430e701e9a31ce809da7c220bb8dfcf68c86etrawick was starting without checking for an existing pidfile. PR 50350
7b7430e701e9a31ce809da7c220bb8dfcf68c86etrawick [Eric Covener]
ccc20788c1e5fc973f36df634399c89acb70deaejerenkrantz *) mod_proxy: Put the worker in error state if the SSL handshake with the
ccc20788c1e5fc973f36df634399c89acb70deaejerenkrantz backend fails. PR 50332.
ccc20788c1e5fc973f36df634399c89acb70deaejerenkrantz [Daniel Ruggeri <DRuggeri primary.net>, Ruediger Pluem]
273e512f20f262e5e2aa8e0e83371d1929fb76adjkaluza *) mod_cache_disk: Fix Windows build which was broken after renaming
273e512f20f262e5e2aa8e0e83371d1929fb76adjkaluza the module. [Gregg L. Smith]
fe83f60b41477b14a37edcfcd1f7f5c5a1ebfe44minfrinChanges with Apache 2.3.9
fe83f60b41477b14a37edcfcd1f7f5c5a1ebfe44minfrin *) SECURITY: CVE-2010-1623 (cve.mitre.org)
993d1261a278d7322bccef219101220b7b4fb8c5jkaluza Fix a denial of service attack against mod_reqtimeout.
993d1261a278d7322bccef219101220b7b4fb8c5jkaluza [Stefan Fritsch]
ba050a6f942b9fa0e81ed73437588005c569655ccovener *) mod_headers: Change default first argument of Header directive
ba050a6f942b9fa0e81ed73437588005c569655ccovener from "onsuccess" to "always". [Eric Covener]
ba050a6f942b9fa0e81ed73437588005c569655ccovener *) mod_include: Add the onerror attribute to the include element,
135ddda3a989215d2bedbcf1529bfb269c3eda23niq allowing an URL to be specified to include on error. [Graham
001a44c352f89c9ec332ffd3e0a6927dcd19432chumbedooh *) mod_cache_disk: mod_disk_cache renamed to mod_cache_disk, to be
001a44c352f89c9ec332ffd3e0a6927dcd19432chumbedooh consistent with the naming of other modules. [Graham Leggett]
efe780dcf13b2b95effabf897d694d8f23feac74trawick *) mod_setenvif: Add SetEnvIfExpr directive to set env var depending on
793214f67dede32edfd9ee96c664ead04d175cbbjfclere expression. [Stefan Fritsch]
9b0076ddd1103e5fa9c1f9bafde4b06ce244fbaecovener *) mod_proxy: Fix ProxyPassInterpolateEnv directive. PR 50292.
9b0076ddd1103e5fa9c1f9bafde4b06ce244fbaecovener [Stefan Fritsch]
249d09d51808cb7981af99762c3b3736ca126cd5jkaluza *) suEXEC: Add Suexec directive to disable suEXEC without renaming the
249d09d51808cb7981af99762c3b3736ca126cd5jkaluza binary (Suexec Off), or force startup failure if suEXEC is required
249d09d51808cb7981af99762c3b3736ca126cd5jkaluza but not supported (Suexec On). Change SuexecUserGroup to fail
249d09d51808cb7981af99762c3b3736ca126cd5jkaluza startup instead of just printing a warning if suEXEC is disabled.
56589be3d7a3e9343370df240010c6928cc78b39jkaluza [Jeff Trawick]
56589be3d7a3e9343370df240010c6928cc78b39jkaluza *) core: Add Error directive for aborting startup or htaccess processing
77ca16c5676da23155311e13cee61e7eaba9fa3ejailletc with a specified error message. [Jeff Trawick]
77ca16c5676da23155311e13cee61e7eaba9fa3ejailletc *) mod_rewrite: Fix the RewriteEngine directive to work within a
77ca16c5676da23155311e13cee61e7eaba9fa3ejailletc location. Previously, once RewriteEngine was switched on globally,
f87299dab99bc04b51a6b8cad51b6795db862c0atrawick it was impossible to switch off. [Graham Leggett]
f87299dab99bc04b51a6b8cad51b6795db862c0atrawick *) core, mod_include, mod_ssl: Move the expression parser derived from
4d12805e6c18253040223ea637acd6b3b3c18f60jorton mod_include back into mod_include. Replace ap_expr with a parser
4d12805e6c18253040223ea637acd6b3b3c18f60jorton derived from mod_ssl's parser. Make mod_ssl use the new parser. Rework
4d12805e6c18253040223ea637acd6b3b3c18f60jorton ap_expr's public interface and provide hooks for modules to add variables
85eacfc96a04547ef25aabbc06440039715084c2jorton and functions. [Stefan Fritsch]
e5d909f2b06bd880fb3675cd49363df981caa631trawick *) core: Do the hook sorting earlier so that the hooks are properly sorted
a4df2cd1e1391575a327c2a90ba4315f805a0a78covener for the pre_config hook and during parsing the config. [Stefan Fritsch]
a4df2cd1e1391575a327c2a90ba4315f805a0a78covener *) core: In the absence of any AllowOverride directives, the default is now
cb666b29f81df1d11d65002250153353568021fccovener "None" instead of "All". PR49823 [Eric Covener]
cb666b29f81df1d11d65002250153353568021fccovener *) mod_proxy: Don't allow ProxyPass or ProxyPassReverse in
6a80c3c6f4b8ea7ba5e89402b8b779b09ce020e0covener <Directory> or <Files>. PR47765 [Eric Covener]
6a80c3c6f4b8ea7ba5e89402b8b779b09ce020e0covener *) prefork/worker/event MPMS: default value (when no directive is present)
75a230a728338d84dcfe81edd375352f34de22d0covener of MaxConnectionsPerChild/MaxRequestsPerChild is changed to 0 from 10000
75a230a728338d84dcfe81edd375352f34de22d0covener to match default configuration and manual. PR47782 [Eric Covener]
1f50dc34ae069adeed20b2986e5ffdefa5c410e0covener *) proxy_connect: Don't give up in the middle of a CONNECT tunnel
1f50dc34ae069adeed20b2986e5ffdefa5c410e0covener when the child process is starting to exit. PR50220. [Eric Covener]
63a5ea80bddcc84a462e40f402b4f330e0e05411covener *) mod_autoindex: Fix inheritance of mod_autoindex directives into
63a5ea80bddcc84a462e40f402b4f330e0e05411covener contexts that don't have any mod_autoindex directives. PR47766.
63a5ea80bddcc84a462e40f402b4f330e0e05411covener [Eric Covener]
65a4e663b82f8bce28ac22ab2edfd7502de36998sf *) mod_rewrite: Add END flag for RewriteRule to prevent further rounds
65a4e663b82f8bce28ac22ab2edfd7502de36998sf of rewrite processing when a per-directory substitution occurs.
65a4e663b82f8bce28ac22ab2edfd7502de36998sf [Eric Covener]
c7de1955eb0eaeabf7042902476397692672d549sf *) mod_ssl: Make sure to always log an error if loading of CA certificates
74e7f6c55fd67b10cb400b3f6d1dc718a303d944minfrin fails. PR 40312. [Paul Tiemann <issues apache org ourdetour com>]
74e7f6c55fd67b10cb400b3f6d1dc718a303d944minfrin *) mod_dav: Send 501 error if unknown Content-* header is received for a PUT
74e7f6c55fd67b10cb400b3f6d1dc718a303d944minfrin request (RFC 2616 9.6). PR 42978. [Stefan Fritsch]
a511a29faf2ff7ead3b67680154a624effb31aafminfrin *) mod_dav: Send 400 error if malformed Content-Range header is received for
a511a29faf2ff7ead3b67680154a624effb31aafminfrin a put request (RFC 2616 14.16). PR 49825. [Stefan Fritsch]
a511a29faf2ff7ead3b67680154a624effb31aafminfrin *) mod_proxy: Release the backend connection as soon as EOS is detected,
63921358ef93fcb41bc71d9894221ba3d7fbb87bminfrin so the backend isn't forced to wait for the client to eventually
63921358ef93fcb41bc71d9894221ba3d7fbb87bminfrin acknowledge the data. [Graham Leggett]
deec48c67d4786bc77112ffbf3a4e70b931097edminfrin *) mod_proxy: Optimise ProxyPass within a Location so that it is stored
6d601599d3d65df0410eae6e573e75b2dbfb1fb4minfrin per-directory, and chosen during the location walk. Make ProxyPass
6d601599d3d65df0410eae6e573e75b2dbfb1fb4minfrin work correctly from within a LocationMatch. [Graham Leggett]
6d601599d3d65df0410eae6e573e75b2dbfb1fb4minfrin *) core: Fix segfault if per-module LogLevel is on virtual host
684e0cfc200f66287a93bbd1708d1dd8a92a7eefcovener scope. PR 50117. [Stefan Fritsch]
5c43d2fb853f84497b5ece2d414ef9484aa87e5fsf *) mod_proxy: Move the ProxyErrorOverride directive to have per
05a5a9c3e16f21566e1b61f4bd68025ce1b741ccjoes directory scope. [Graham Leggett]
ef82e8fa164e0a1f8b813f7deb6b7ead96018c94niq *) mod_allowmethods: New module to deny certain HTTP methods without
26c5829347f6a355c00f1ba0301d575056b69536niq interfering with authentication/authorization. [Paul Querna,
ef82e8fa164e0a1f8b813f7deb6b7ead96018c94niq Igor Galić, Stefan Fritsch]
ef82e8fa164e0a1f8b813f7deb6b7ead96018c94niq *) mod_ssl: Log certificate information and improve error message if client
ef82e8fa164e0a1f8b813f7deb6b7ead96018c94niq cert verification fails. PR 50093, PR 50094. [Lassi Tuura <lat cern ch>,
ef82e8fa164e0a1f8b813f7deb6b7ead96018c94niq Stefan Fritsch]
413ee814748f37be168ff12407fa6dba0ceeabe6trawick *) htcacheclean: Teach htcacheclean to limit cache size by number of
c12917da693bae4028a1d5a5e8224bceed8c739dsf inodes in addition to size of files. Prevents a cache disk from
c12917da693bae4028a1d5a5e8224bceed8c739dsf running out of space when many small files are cached.
eafcc0ebf263d0ba69855b6e10958c4c1a2361bdsf [Graham Leggett]
eafcc0ebf263d0ba69855b6e10958c4c1a2361bdsf *) core: Rename MaxRequestsPerChild to MaxConnectionsPerChild, which
eafcc0ebf263d0ba69855b6e10958c4c1a2361bdsf describes more accurately what the directive does. The old name
eafcc0ebf263d0ba69855b6e10958c4c1a2361bdsf still works but logs a warning. [Stefan Fritsch]
d7ffd2da16d58b1a0de212e4d56f7aebb72bef26sf *) mod_cache: Optionally serve stale data when a revalidation returns a
d7ffd2da16d58b1a0de212e4d56f7aebb72bef26sf 5xx response, controlled by the CacheStaleOnError directive.
4576c1a9ef54cd1e5555ee07d016a7f559f80338sf [Graham Leggett]
4576c1a9ef54cd1e5555ee07d016a7f559f80338sf *) htcacheclean: Allow the listing of valid URLs within the cache, with
9811aed12bbc71783d2e544ccb5fecd193843eadsf the option to list entry metadata such as sizes and times. [Graham
88fac54d9d64f85bbdab5d7010816f4377f95bd7rjung *) mod_cache: correctly parse quoted strings in cache headers.
88fac54d9d64f85bbdab5d7010816f4377f95bd7rjung PR 50199 [Nick Kew]
bd3f5647b96d378d9c75c954e3f13582af32c643sf *) mod_cache: Allow control over the base URL of reverse proxied requests
bd3f5647b96d378d9c75c954e3f13582af32c643sf using the CacheKeyBaseURL directive, so that the cache key can be
bd3f5647b96d378d9c75c954e3f13582af32c643sf calculated from the endpoint URL instead of the server URL. [Graham
2a7beea91d46beb41f043a84eaad060047ee04aafabien *) mod_cache: CacheLastModifiedFactor, CacheStoreNoStore, CacheStorePrivate,
2a7beea91d46beb41f043a84eaad060047ee04aafabien CacheStoreExpired, CacheIgnoreNoLastMod, CacheDefaultExpire,
2a7beea91d46beb41f043a84eaad060047ee04aafabien CacheMinExpire and CacheMaxExpire can be set per directory/location.
584a85dd4047e38d3ed3a29b6662fcc9d100ae4csf [Graham Leggett]
584a85dd4047e38d3ed3a29b6662fcc9d100ae4csf *) mod_disk_cache: CacheMaxFileSize, CacheMinFileSize, CacheReadSize and
f21e9e3d0bfb7a507ecc5bc963f2159d693503d1sf CacheReadTime can be set per directory/location. [Graham Leggett]
f21e9e3d0bfb7a507ecc5bc963f2159d693503d1sf *) core: Speed up config parsing if using a very large number of config
f6b9c755a0b793e8a3a3aebd327ca20a86478117sf files. PR 50002 [andrew cloudaccess net]
f6b9c755a0b793e8a3a3aebd327ca20a86478117sf *) mod_cache: Support the caching of HEAD requests. [Graham Leggett]
132ee6ac1c26d6e8953836316ba50734eefab47bsf *) htcacheclean: Allow the option to round up file sizes to a given
132ee6ac1c26d6e8953836316ba50734eefab47bsf block size, improving the accuracy of disk usage. [Graham Leggett]
85eacfc96a04547ef25aabbc06440039715084c2jorton *) mod_ssl: Add authz providers for use with mod_authz_core and its
85eacfc96a04547ef25aabbc06440039715084c2jorton RequireAny/RequireAll containers: 'ssl' (equivalent to SSLRequireSSL),
536d2e7cd1fdec1255b8c3bdf41fdc714c506a54trawick 'ssl-verify-client' (for use with 'SSLVerifyClient optional'), and
536d2e7cd1fdec1255b8c3bdf41fdc714c506a54trawick 'ssl-require' (expressions with same syntax as SSLRequire).
536d2e7cd1fdec1255b8c3bdf41fdc714c506a54trawick [Stefan Fritsch]
79c5787b92ac5f0e1cc82393816c77a006399316trawick *) mod_ssl: Make the ssl expression parser thread-safe. It now requires
79c5787b92ac5f0e1cc82393816c77a006399316trawick bison instead of yacc. [Stefan Fritsch]
79c5787b92ac5f0e1cc82393816c77a006399316trawick *) mod_disk_cache: Change on-disk header file format to support the
c967bf3bc89e8aa60dbd30d9da388e448ddc1cc4trawick link of the device/inode of the data file to the matching header
79c5787b92ac5f0e1cc82393816c77a006399316trawick file, and to support the option of not writing a data file when
79c5787b92ac5f0e1cc82393816c77a006399316trawick the data file is empty. [Graham Leggett]
79c5787b92ac5f0e1cc82393816c77a006399316trawick *) core/mod_unique_id: Add generate_log_id hook to allow to use
79c5787b92ac5f0e1cc82393816c77a006399316trawick the ID generated by mod_unique_id as error log ID for requests.
7b395e4e878c28a4784919cfd2e704ddd14a3390jorton [Stefan Fritsch]
7b395e4e878c28a4784919cfd2e704ddd14a3390jorton *) mod_cache: Make sure that we never allow a 304 Not Modified response
7b395e4e878c28a4784919cfd2e704ddd14a3390jorton that we asked for to leak to the client should the 304 response be
536e48c08d674acac5d44929318f2ad928edc361jorton uncacheable. PR45341 [Graham Leggett]
e81785da447b469da66f218b3f0244aab507958djorton *) mod_cache: Add the cache_status hook to register the final cache
e81785da447b469da66f218b3f0244aab507958djorton decision hit/miss/revalidate. Add optional support for an X-Cache
3e4e54d4e3fc0123c63d57aa84ac7ad7a8c73ff8jorton and/or an X-Cache-Detail header to add the cache status to the
3e4e54d4e3fc0123c63d57aa84ac7ad7a8c73ff8jorton response. PR48241 [Graham Leggett]
53e9b27aba029b18be814df40bcf6f0428771d1efuankg *) mod_authz_host: Add 'local' provider that matches connections originating
53e9b27aba029b18be814df40bcf6f0428771d1efuankg on the local host. PR 19938. [Stefan Fritsch]
53e9b27aba029b18be814df40bcf6f0428771d1efuankg *) Event MPM: Fix crash accessing pollset on worker thread when child
53e9b27aba029b18be814df40bcf6f0428771d1efuankg process is exiting. [Jeff Trawick]
6bb524f1895f30265a1431afc460977d391cb36bsf *) core: For process invocation (cgi, fcgid, piped loggers and so forth)
ca61ccd0c306c2c72df153688ba1b49f3eceed80sf pass the system library path (LD_LIBRARY_PATH or platform-specific
6bb524f1895f30265a1431afc460977d391cb36bsf variables) along with the system PATH, by default. Both should be
e6dd71992459d05a676b98b7963423dc5dc1e24aminfrin overridden together as desired using PassEnv etc; see mod_env.
e6dd71992459d05a676b98b7963423dc5dc1e24aminfrin [William Rowe]
e6dd71992459d05a676b98b7963423dc5dc1e24aminfrin *) mod_cache: Introduce CacheStoreExpired, to allow administrators to
23f1535d6a60817d2846bac0aea230ea475d7dccminfrin capture a stale backend response, perform If-Modified-Since requests
23f1535d6a60817d2846bac0aea230ea475d7dccminfrin against the backend, and serving from the cache all 304 responses.
23f1535d6a60817d2846bac0aea230ea475d7dccminfrin This restores pre-2.2.4 cache behavior. [William Rowe]
ec7520b24cd80d34d82bbcaca153cbb23cc04bc0rjung *) mod_rewrite: Introduce <=, >= string comparison operators, and integer
ec7520b24cd80d34d82bbcaca153cbb23cc04bc0rjung comparators -lt, -le, -eq, -ge, and -gt. To help bash users and drop
ec7520b24cd80d34d82bbcaca153cbb23cc04bc0rjung the ambiguity of the symlink test "-ltest", introduce -h or -L as
ec7520b24cd80d34d82bbcaca153cbb23cc04bc0rjung symlink test operators. [William Rowe]
ec7520b24cd80d34d82bbcaca153cbb23cc04bc0rjung *) mod_cache: Give the cache provider the opportunity to choose to cache
ec7520b24cd80d34d82bbcaca153cbb23cc04bc0rjung or not cache based on the buckets present in the brigade, such as the
ec7520b24cd80d34d82bbcaca153cbb23cc04bc0rjung presence of a FILE bucket.
6249dfa569d3b4f1f539665b979a80c6e335d93etrawick [Graham Leggett]
0827cb14e550f6f65018431c22c2c913631c8f25kbrand *) mod_authz_core: Allow authz providers to check args while reading the
6249dfa569d3b4f1f539665b979a80c6e335d93etrawick config and allow to cache parsed args. Move 'all' and 'env' authz
ae600ca541efc686b34f8b1f21bd3d0741d37674covener providers from mod_authz_host to mod_authz_core. Add 'method' authz
6249dfa569d3b4f1f539665b979a80c6e335d93etrawick provider depending on the HTTP method. [Stefan Fritsch]
74499a117b3b2cd9666715a14f90c0e5d1a4ee8ajim *) mod_include: Move the request_rec within mod_include to be
cfa64348224b66dd1c9979b809406c4d15b1c137fielding exposed within include_ctx_t. [Graham Leggett]
cfa64348224b66dd1c9979b809406c4d15b1c137fielding *) mod_include: Reinstate support for UTF-8 character sets by allowing a
74499a117b3b2cd9666715a14f90c0e5d1a4ee8ajim variable being echoed or set to be decoded and then encoded as separate
cfa64348224b66dd1c9979b809406c4d15b1c137fielding steps. PR47686 [Graham Leggett]
cfa64348224b66dd1c9979b809406c4d15b1c137fielding *) mod_cache: Add a discrete commit_entity() provider function within the
<dan listening-station.net; trunk version Nick Kew]
[Daniel Ruggeri <DRuggeri primary.net>]
*) SECURITY: CVE-2010-1452 (cve.mitre.org)
*) core/mod_authz_core: Introduce new access_checker_ex hook that enables
IP address/env var/... [Stefan Fritsch]
PR 49616 [Andrey Chernov <ache nagual.pp.ru>]
*) SECURITY: CVE-2009-3555 (cve.mitre.org)
*) SECURITY: CVE-2009-3555 (cve.mitre.org)
configuration which requires renegotiation for per-directory/location
*) SECURITY: CVE-2010-0408 (cve.mitre.org)
*) SECURITY: CVE-2010-0425 (cve.mitre.org)
[Brett Gervasoni <brettg senseofsecurity.com>, Jeff Trawick]
APR Util 1.x crypto. [Rainer Jung]
mod_rewrite: Replace RewriteLog/RewriteLogLevel with trace log levels.
mod_ssl/mod_proxy*: Adjust loglevels to be less verbose at levels info
PR 49369 [Matthew Steele <mdsteele google.com>]
to use the HTTP username/pass instead of an anonymous or hard-coded
[Bryn Dole <dole blekko.com>]
to control/set the nonce used in the balancer-manager application.
code from a backend. PR 48939. [Daniel Ruggeri <DRuggeri primary.net>]
PR 48944. [Mark Drayton mark markdrayton.info]
[Dr Stephen Henson <steve openssl.org>, William Rowe]
[Ruediger Pluem, Mark Montague <markmont umich.edu>]
*) support/rotatelogs: Add -L option to create a link to the current
log file. PR 48761 [<lyndon orthanc.ca>, Dan Poirier]
*) mod_ldap: LDAPTrustedClientCert now accepts CA_DER/CA_BASE64 argument
PR 33112 [Joergen Thomsen <apache jth.net>]
*) support/rotatelogs: Support the simplest log rotation case, log
*) support/htcacheclean: Teach it how to write a pid file (modelled on
[Philippe Dutrueux <lilas evidian.com>, Rainer Jung]
*) apxs: Fix -A and -a options to ignore whitespace in httpd.conf
request. [Christian Folini <christian.folini netnea com>]
[Johannes MĂĽller <joh_m gmx.de>, Stefan Fritsch]
*) SECURITY: CVE-2010-0434 (cve.mitre.org)
[Dodou Wang <wangdong.08 gmail.com>, Ruediger Pluem]
PR 41887 [Jan van den Berg <janvdberg gmail.com>]
PR 48416 [Dmitry Bakshaev <dab18 izhnet.ru>, Nick Kew]
(See util_mutex.h.) Build-time setting DEFAULT_LOCKFILE is no longer
*) SECURITY: CVE-2009-3095 (cve.mitre.org)
[Stefan Fritsch <sf fritsch.de>, Joe Orton]
*) SECURITY: CVE-2009-3094 (cve.mitre.org)
[Stefan Fritsch <sf fritsch.de>, Joe Orton]
instead of substrings. PR 28037. [Dan Franklin <dan dan-franklin.com>,
[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>]
*) New module mod_sed: filter Request/Response bodies through sed
null value. [David Shane Holden <dpejesh apache.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.
*) ApacheMonitor.exe: Introduce --kill argument for use by the
*) mod_ldap, mod_authnz_ldap: Add support for nested groups (i.e. the ability
[David M. Lee <dmlee crossroads.com>]
[Niklas Edmundsson <nikke acc.umu.se>]
[Niklas Edmundsson <nikke acc.umu.se>]
[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: