CHANGES revision 59d316b83d42d2a07e25c20d8c35a07b369618bd
4d237bbe075b1d2c19428cd954d721d65b31f67cwrowe -*- coding: utf-8 -*-
1a5f954324f2584984fc9cee7a7a8ebe8ef39aeajimChanges with Apache 2.3.11
fd279fe992f7171dc3f6d4d40d6db5bb74f2d96eminfrin *) modules: Fix many modules that were not correctly initializing if they
fd279fe992f7171dc3f6d4d40d6db5bb74f2d96eminfrin were not active during server startup but got enabled later during a
fd279fe992f7171dc3f6d4d40d6db5bb74f2d96eminfrin graceful restart. [Stefan Fritsch]
fed63d1b62cc7e56aad77b70ee5b5cc7f5c6aademinfrin *) core: Create new ap_state_query function that allows modules to determine
fed63d1b62cc7e56aad77b70ee5b5cc7f5c6aademinfrin if the current configuration run is the initial one at server startup,
fed63d1b62cc7e56aad77b70ee5b5cc7f5c6aademinfrin and if the server is started for testing/config dumping only.
fed63d1b62cc7e56aad77b70ee5b5cc7f5c6aademinfrin [Stefan Fritsch]
abe0d0e38b9705f21a13ac8748bce1e3ed35e488minfrin *) mod_cache: When a bad Expires date is present, we need to behave as if
abe0d0e38b9705f21a13ac8748bce1e3ed35e488minfrin the Expires is in the past, not as if the Expires is missing. PR 16521.
abe0d0e38b9705f21a13ac8748bce1e3ed35e488minfrin [Co-Advisor <coad@measurement-factory.com>]
abe0d0e38b9705f21a13ac8748bce1e3ed35e488minfrin *) mod_cache: We must ignore quoted-string values that appear in a
fb8ee8b7a3a2503b95bf47685f9083e0b9834e6fminfrin Cache-Control header. PR 50199. [Graham Leggett]
fb8ee8b7a3a2503b95bf47685f9083e0b9834e6fminfrin *) mod_dav: Revert change to send 501 error if unknown Content-* header is
fb8ee8b7a3a2503b95bf47685f9083e0b9834e6fminfrin received for a PUT request. PR 42978. [Stefan Fritsch]
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd *) mod_cache: Respect s-maxage as described by RFC2616 14.9.3, which must
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd take precedence if present. PR 35247. [Graham Leggett]
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd *) mod_ssl: Fix a possible startup failure if multiple SSL vhosts
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd are configured with the same ServerName and private key file.
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd [Masahiro Matsuya <mmatsuya redhat.com>, Joe Orton]
5c5e7695fc1e44bebba6b339494a2df4e69b86fcjim *) mod_socache_dc: Make module compile by fixing some typos.
5c5e7695fc1e44bebba6b339494a2df4e69b86fcjim PR 50735 [Mark Montague <mark catseye.org>]
4228aba3de67f3d9cce68f7a915d5435faa43adarpluem *) prefork: Update MPM state in children during a graceful stop or
4228aba3de67f3d9cce68f7a915d5435faa43adarpluem restart. PR 41743. [Andrew Punch <andrew.punch 247realmedia.com>]
78a20a6e7ad3a0229900ee54c7d11a65f647b663niq *) mod_mime: Ignore leading dots when looking for mime extensions.
9582ad6e149d28b118d4e8571101ecb6f85e0191niq PR 50434 [Stefan Fritsch]
9582ad6e149d28b118d4e8571101ecb6f85e0191niq *) core: Add support to set variables with the 'Define' directive. The
78a20a6e7ad3a0229900ee54c7d11a65f647b663niq variables that can then be used in the config using the ${VAR} syntax
d56bacbfefa5aa883ce5162a115747372fc38d13chrisd known from envvar interpolation. [Stefan Fritsch]
d56bacbfefa5aa883ce5162a115747372fc38d13chrisd *) mod_proxy_http: make adding of X-Forwarded-* headers configurable.
d56bacbfefa5aa883ce5162a115747372fc38d13chrisd ProxyAddHeaders defaults to On. [Vincent Deffontaines]
e1a26e8050bf62459a7ef1c5064b714811767417rpluem *) mod_slotmem_shm: Increase memory alignment for slotmem data.
e1a26e8050bf62459a7ef1c5064b714811767417rpluem [Rainer Jung]
fcee7ee83b1e48f2655c79f176d1ea7627e19937chrisd *) mod_ssl: Add config options for OCSP: SSLOCSPResponderTimeout,
fcee7ee83b1e48f2655c79f176d1ea7627e19937chrisd SSLOCSPResponseMaxAge, SSLOCSPResponseTimeSkew.
fcee7ee83b1e48f2655c79f176d1ea7627e19937chrisd [Kaspar Brand <httpd-dev.2011 velox.ch>]
53feccc94b923e12db1df6f7069676590097ba2frpluem *) mod_ssl: Revamp output buffering to reduce network overhead for
53feccc94b923e12db1df6f7069676590097ba2frpluem output fragmented into many buckets, such as chunked HTTP responses.
53feccc94b923e12db1df6f7069676590097ba2frpluem [Joe Orton]
b39ba1ea90cd1940dcd9e8d0f18c1ff02c187ac1jim *) core: Apply <If> sections to all requests, not only to file base requests.
b39ba1ea90cd1940dcd9e8d0f18c1ff02c187ac1jim Allow to use <If> inside <Directory>, <Location>, and <Files> sections.
b39ba1ea90cd1940dcd9e8d0f18c1ff02c187ac1jim The merging of <If> sections now happens after the merging of <Location>
d64dd2fd4516c2b1b664c5e59c0628d9aff26984covener sections, even if an <If> section is embedded inside a <Directory> or
d64dd2fd4516c2b1b664c5e59c0628d9aff26984covener <Files> section. [Stefan Fritsch]
ed0d39878e79220baaa50c15b79b1fdf877cb919niq *) mod_proxy: Refactor usage of shared data by dropping the scoreboard
1e911973bcb9df6701a4c16c037771ecf25ade13niq and using slotmem. Create foundation for dynamic growth/changes of
1e911973bcb9df6701a4c16c037771ecf25ade13niq members within a balancer. Remove BalancerNonce in favor of a
1e911973bcb9df6701a4c16c037771ecf25ade13niq per-balancer 'nonce' parameter. [Jim Jagielski]
1e911973bcb9df6701a4c16c037771ecf25ade13niq *) mod_status: Don't show slots which are disabled by MaxClients as open.
1e911973bcb9df6701a4c16c037771ecf25ade13niq PR: 47022 [Jordi Prats <jordi prats gmail com>, Stefan Fritsch]
a55905a382027bdcc3a29248db4176527d36aa9ajim *) mpm_prefork: Fix ap_mpm_query results for AP_MPMQ_MAX_DAEMONS and
a55905a382027bdcc3a29248db4176527d36aa9ajim AP_MPMQ_MAX_THREADS.
5fbd1e97905738791e7359ccbc9b02e913948d2erpluem *) mod_authz_core: Fix bug in merging logic if user-based and non-user-based
5fbd1e97905738791e7359ccbc9b02e913948d2erpluem authorization directives were mixed. [Stefan Fritsch]
5fbd1e97905738791e7359ccbc9b02e913948d2erpluem *) mod_authn_socache: change directive name from AuthnCacheProvider
ca33b922ae8ad1b24a8235b656b0ac6f82915355jim to AuthnCacheProvideFor. The term "provider" is overloaded in
e74519466f1905e7a1b3d34396fbb82717153c90jim this module, and we should avoid confusion between the provider
e74519466f1905e7a1b3d34396fbb82717153c90jim of a backend (AuthnCacheSOCache) and the authn provider(s) for
e74519466f1905e7a1b3d34396fbb82717153c90jim which this module provides cacheing (AuthnCacheProvideFor).
ca33b922ae8ad1b24a8235b656b0ac6f82915355jim [Nick Kew]
b842b65e0618c5535233b197f03dc917d184adb3jim *) mod_proxy_http: Allocate the fake backend request from a child pool
b842b65e0618c5535233b197f03dc917d184adb3jim of the backend connection, instead of misusing the pool of the frontend
b842b65e0618c5535233b197f03dc917d184adb3jim request. Fixes a thread safety issue where buckets set aside in the
b842b65e0618c5535233b197f03dc917d184adb3jim backend connection leak into other threads, and then disappear when
e47d58d5d983426584c8d16416c50f5c58070746dirkx the frontend request is cleaned up, in turn causing corrupted buckets
e47d58d5d983426584c8d16416c50f5c58070746dirkx to make other threads spin. [Graham Leggett]
e47d58d5d983426584c8d16416c50f5c58070746dirkx *) mod_ssl: Change the format of the SSL_{CLIENT,SERVER}_{I,S}_DN variables
33aad3911b15cb5d523075f7df829274fe298a13dirkx to be RFC 2253 compatible, convert non-ASCII characters to UTF8, and
33aad3911b15cb5d523075f7df829274fe298a13dirkx escape other special characters with backslashes. The old format can
76f68128bb8fcea0f772d522c05dc7ec872040c2dirkx still be used with the LegacyDNStringFormat argument to SSLOptions.
433dcb1fbaae82d36634f5120bff71a04296904ddirkx *) core, mod_rewrite: Make the REQUEST_SCHEME variable available to
433dcb1fbaae82d36634f5120bff71a04296904ddirkx scripts and mod_rewrite. [Stefan Fritsch]
433dcb1fbaae82d36634f5120bff71a04296904ddirkx *) mod_rewrite: Allow to use arbitrary boolean expressions (ap_expr) in
433dcb1fbaae82d36634f5120bff71a04296904ddirkx RewriteCond. [Stefan Fritsch]
46a47c67296c52323632d5ae9d7c86bf87027a5frpluem *) mod_rewrite: Allow to unset environment variables using E=!VAR.
46a47c67296c52323632d5ae9d7c86bf87027a5frpluem PR 49512. [Mark Drayton <mark markdrayton info>, Stefan Fritsch]
edb2ad8387e30473e5be09714189441ef94d7f29rpluem *) mod_headers: Restore the 2.3.8 and earlier default for the first
edb2ad8387e30473e5be09714189441ef94d7f29rpluem argument of the Header directive ("onsuccess"). [Eric Covener]
edb2ad8387e30473e5be09714189441ef94d7f29rpluem *) core: Disallow the mixing of relative and absolute Options PR 33708.
56d3f6035b11f7d2074bcb8368dca5dfd12f9087jim [Sönke Tesch <st kino-fahrplan.de>]
64bf71725ee015894b1724bc0dd198e5e24424ecrpluem *) core: When exporting request headers to HTTP_* environment variables,
64bf71725ee015894b1724bc0dd198e5e24424ecrpluem drop variables whose names contain invalid characters. Describe in the
64bf71725ee015894b1724bc0dd198e5e24424ecrpluem docs how to restore the old behaviour. [Malte S. Stretz <mss apache org>]
d7fcc79b0bee660d71b0cccfe9bbc2765ee6420erederpj *) core: When selecting an IP-based virtual host, favor an exact match for
d7fcc79b0bee660d71b0cccfe9bbc2765ee6420erederpj the port over a wildcard (or omitted) port instead of favoring the one
d7fcc79b0bee660d71b0cccfe9bbc2765ee6420erederpj that came first in the configuration file. [Eric Covener]
d7fcc79b0bee660d71b0cccfe9bbc2765ee6420erederpj *) core: Overlapping virtual host address/port combinations now implicitly
5e48e0ef81c0736649fd7d2884837b32ed678750rpluem enable name-based virtual hosting for that address. The NameVirtualHost
5e48e0ef81c0736649fd7d2884837b32ed678750rpluem directive has no effect, and _default_ is interpreted the same as "*".
5e48e0ef81c0736649fd7d2884837b32ed678750rpluem [Eric Covener]
cb9999606fbbda475b7b40e164699731521e9eb1niq *) core: In the absence of any Options directives, the default is now
cb9999606fbbda475b7b40e164699731521e9eb1niq "FollowSymlinks" instead of "All". [Igor Galić]
33159d1d1291b676697c154830134500e793e66bcovener *) rotatelogs: Add -e option to write logs through to stdout for optional
33159d1d1291b676697c154830134500e793e66bcovener further processing. [Graham Leggett]
c002c44ee5c7e7258f4ba5c162461c24a0c179c2dirkx *) mod_ssl: Correctly read full lines in input filter when the line is
c002c44ee5c7e7258f4ba5c162461c24a0c179c2dirkx incomplete during first read. PR 50481. [Ruediger Pluem]
40beb03c240a9c60805388592f1005d9bf9d2362fuankg *) mod_authz_core: Add AuthzSendForbiddenOnFailure directive to allow
65cb7f00eca6689c8a89dc809359991ade1285bcwrowe sending '403 FORBIDDEN' instead of '401 UNAUTHORIZED' if authorization
65cb7f00eca6689c8a89dc809359991ade1285bcwrowe fails for an authenticated user. PR 40721. [Stefan Fritsch]
65cb7f00eca6689c8a89dc809359991ade1285bcwroweChanges with Apache 2.3.10
475311484e1d0f01d41e0f48bfecf1f4bca2ff07rpluem *) mod_rewrite: Don't implicitly URL-escape the original query string
475311484e1d0f01d41e0f48bfecf1f4bca2ff07rpluem when no substitution has changed it. PR 50447. [Eric Covener]
ef79eba84348e4f8c99402de06afa2237a856049rpluem *) core: Honor 'AcceptPathInfo OFF' during internal redirects,
ef79eba84348e4f8c99402de06afa2237a856049rpluem such as per-directory mod_rewrite substitutions. PR 50349.
ef79eba84348e4f8c99402de06afa2237a856049rpluem [Eric Covener]
0d529159d06aec095a1e0612e2d629c98dc75512rpluem *) mod_rewrite: Add 'RewriteOptions InheritBefore' to put the base
0d529159d06aec095a1e0612e2d629c98dc75512rpluem rules/conditions before the overridden rules/conditions. PR 39313.
39c7699ec0799d394d3f67145d4a12ed82f587b8jorton *) mod_autoindex: add IndexIgnoreReset to reset the list of IndexIgnored
3511969853863eeb6e80018afe63831e5bf81447rpluem filenames in higher precedence configuration sections. PR 24243.
3511969853863eeb6e80018afe63831e5bf81447rpluem [Eric Covener]
c6d33447e28403a90ad817dba4df75fae785be28pquerna *) mod_cgid: RLimit* directive support for mod_cgid. PR 42135
c6d33447e28403a90ad817dba4df75fae785be28pquerna [Eric Covener]
439ccf2a084e1da566548931c585cbcc3a9e7f4cminfrin *) core: Fail startup when the argument to ServerName looks like a glob
439ccf2a084e1da566548931c585cbcc3a9e7f4cminfrin or a regular expression instead of a hostname (*?[]). PR 39863
439ccf2a084e1da566548931c585cbcc3a9e7f4cminfrin *) mod_userdir: Add merging of enable, disable, and filename arguments
4ede070ca63bd4c48045e35a7192582769770290jorton to UserDir directive, leaving enable/disable of userlists unmerged.
4ede070ca63bd4c48045e35a7192582769770290jorton PR 44076 [Eric Covener]
795c9499a77c25695bcb9710ed67bbe51492e181rpluem *) httpd: When no -k option is provided on the httpd command line, the server
795c9499a77c25695bcb9710ed67bbe51492e181rpluem was starting without checking for an existing pidfile. PR 50350
a72ba68ecbbc61e4b513e50d6000245c33f753dcwrowe [Eric Covener]
7a079e0cd696baca90ac43e325f64582e2945c68wrowe *) mod_proxy: Put the worker in error state if the SSL handshake with the
a72ba68ecbbc61e4b513e50d6000245c33f753dcwrowe backend fails. PR 50332.
62c53a0dab4c85bfc6a5ab9abfb1b269d9f7458dniq [Daniel Ruggeri <DRuggeri primary.net>, Ruediger Pluem]
62c53a0dab4c85bfc6a5ab9abfb1b269d9f7458dniq *) mod_cache_disk: Fix Windows build which was broken after renaming
11a0edf478ca9c59d80bf73491d89cf019259feeniq the module. [Gregg L. Smith]
11a0edf478ca9c59d80bf73491d89cf019259feeniqChanges with Apache 2.3.9
06446302a0a3e40cd8807bb25467c8f776cf2fbatrawick *) SECURITY: CVE-2010-1623 (cve.mitre.org)
06446302a0a3e40cd8807bb25467c8f776cf2fbatrawick Fix a denial of service attack against mod_reqtimeout.
06446302a0a3e40cd8807bb25467c8f776cf2fbatrawick [Stefan Fritsch]
ecc1538af1c08282fc2773d2eb3f1a54251862f9minfrin *) mod_headers: Change default first argument of Header directive
ecc1538af1c08282fc2773d2eb3f1a54251862f9minfrin from "onsuccess" to "always". [Eric Covener]
3f5585f7f4a7d74f2f94ec729ea8c1879d419e35rederpj *) mod_include: Add the onerror attribute to the include element,
3f5585f7f4a7d74f2f94ec729ea8c1879d419e35rederpj allowing an URL to be specified to include on error. [Graham
3f5585f7f4a7d74f2f94ec729ea8c1879d419e35rederpj *) mod_cache_disk: mod_disk_cache renamed to mod_cache_disk, to be
e4b96ba15dc8b2b27d251d53e29b86da32cd5066pquerna consistent with the naming of other modules. [Graham Leggett]
81bd9331da3bd0f53255d52b1475480ff3a4b395trawick *) mod_setenvif: Add SetEnvIfExpr directive to set env var depending on
81bd9331da3bd0f53255d52b1475480ff3a4b395trawick expression. [Stefan Fritsch]
cd3bbd6d2df78d6c75e5d159a81ef8bdd5f70df9trawick *) mod_proxy: Fix ProxyPassInterpolateEnv directive. PR 50292.
cd3bbd6d2df78d6c75e5d159a81ef8bdd5f70df9trawick [Stefan Fritsch]
cd3bbd6d2df78d6c75e5d159a81ef8bdd5f70df9trawick *) suEXEC: Add Suexec directive to disable suEXEC without renaming the
108ebbb87b2a46f4416ec507824471a483c39fe1sctemme binary (Suexec Off), or force startup failure if suEXEC is required
108ebbb87b2a46f4416ec507824471a483c39fe1sctemme but not supported (Suexec On). Change SuexecUserGroup to fail
108ebbb87b2a46f4416ec507824471a483c39fe1sctemme startup instead of just printing a warning if suEXEC is disabled.
108ebbb87b2a46f4416ec507824471a483c39fe1sctemme [Jeff Trawick]
7abe34dd5a20fc8fde09dca9116b88e6ddfd55ddjorton *) core: Add Error directive for aborting startup or htaccess processing
7abe34dd5a20fc8fde09dca9116b88e6ddfd55ddjorton with a specified error message. [Jeff Trawick]
10d486b9267800c5e376c22f6c0d45dc2ae86f67chrisd *) mod_rewrite: Fix the RewriteEngine directive to work within a
10d486b9267800c5e376c22f6c0d45dc2ae86f67chrisd location. Previously, once RewriteEngine was switched on globally,
10d486b9267800c5e376c22f6c0d45dc2ae86f67chrisd it was impossible to switch off. [Graham Leggett]
3e155218733389e7b1ea3a9ffd0aea533fd929cechrisd *) core, mod_include, mod_ssl: Move the expression parser derived from
3e155218733389e7b1ea3a9ffd0aea533fd929cechrisd mod_include back into mod_include. Replace ap_expr with a parser
3e155218733389e7b1ea3a9ffd0aea533fd929cechrisd derived from mod_ssl's parser. Make mod_ssl use the new parser. Rework
dd6199828976e6c7850ca6abd7a1ceba99e9ed16chrisd ap_expr's public interface and provide hooks for modules to add variables
dd6199828976e6c7850ca6abd7a1ceba99e9ed16chrisd and functions. [Stefan Fritsch]
dd6199828976e6c7850ca6abd7a1ceba99e9ed16chrisd *) core: Do the hook sorting earlier so that the hooks are properly sorted
ab43b4a17b2ac31ccb1cf280be8c42a8a314cecbjorton for the pre_config hook and during parsing the config. [Stefan Fritsch]
ab43b4a17b2ac31ccb1cf280be8c42a8a314cecbjorton *) core: In the absence of any AllowOverride directives, the default is now
67139e2d50d1e11558d87f7042f61cb04bb0d1d2jim "None" instead of "All". PR49823 [Eric Covener]
67139e2d50d1e11558d87f7042f61cb04bb0d1d2jim *) mod_proxy: Don't allow ProxyPass or ProxyPassReverse in
67139e2d50d1e11558d87f7042f61cb04bb0d1d2jim <Directory> or <Files>. PR47765 [Eric Covener]
a4ab95921be8ce5de50913cd6505d41b672eb375minfrin *) prefork/worker/event MPMS: default value (when no directive is present)
a4ab95921be8ce5de50913cd6505d41b672eb375minfrin of MaxConnectionsPerChild/MaxRequestsPerChild is changed to 0 from 10000
a4ab95921be8ce5de50913cd6505d41b672eb375minfrin to match default configuration and manual. PR47782 [Eric Covener]
e605dd6afa940f799c873ffeaa5e25fa4ea9a2c8minfrin *) proxy_connect: Don't give up in the middle of a CONNECT tunnel
e605dd6afa940f799c873ffeaa5e25fa4ea9a2c8minfrin when the child process is starting to exit. PR50220. [Eric Covener]
e605dd6afa940f799c873ffeaa5e25fa4ea9a2c8minfrin *) mod_autoindex: Fix inheritance of mod_autoindex directives into
e605dd6afa940f799c873ffeaa5e25fa4ea9a2c8minfrin contexts that don't have any mod_autoindex directives. PR47766.
50c06405bc48121db2913925549407fd3e79bcedmturk [Eric Covener]
dec02391360e503cd3437d16bed765dc653b9de5minfrin *) mod_rewrite: Add END flag for RewriteRule to prevent further rounds
dec02391360e503cd3437d16bed765dc653b9de5minfrin of rewrite processing when a per-directory substitution occurs.
dec02391360e503cd3437d16bed765dc653b9de5minfrin [Eric Covener]
dec02391360e503cd3437d16bed765dc653b9de5minfrin *) mod_ssl: Make sure to always log an error if loading of CA certificates
1b27a3a26f18191db7ecb4d536cb121ba9520a8eniq fails. PR 40312. [Paul Tiemann <issues apache org ourdetour com>]
686ce4eade942e515b1725d0c9751da36b759a6ctrawick *) mod_dav: Send 501 error if unknown Content-* header is received for a PUT
686ce4eade942e515b1725d0c9751da36b759a6ctrawick request (RFC 2616 9.6). PR 42978. [Stefan Fritsch]
1ce78cf71b5baaf2c1ab48e818cb1f2397df5010trawick *) mod_dav: Send 400 error if malformed Content-Range header is received for
4bd465052c4a0c8d41e573ee7a90c312d980355fchrisd a put request (RFC 2616 14.16). PR 49825. [Stefan Fritsch]
4bd465052c4a0c8d41e573ee7a90c312d980355fchrisd *) mod_proxy: Release the backend connection as soon as EOS is detected,
4bd465052c4a0c8d41e573ee7a90c312d980355fchrisd so the backend isn't forced to wait for the client to eventually
4bd465052c4a0c8d41e573ee7a90c312d980355fchrisd acknowledge the data. [Graham Leggett]
4bd465052c4a0c8d41e573ee7a90c312d980355fchrisd *) mod_proxy: Optimise ProxyPass within a Location so that it is stored
27b38d4191d5f638165e2a77ec6e6f567bd7784dniq per-directory, and chosen during the location walk. Make ProxyPass
27b38d4191d5f638165e2a77ec6e6f567bd7784dniq work correctly from within a LocationMatch. [Graham Leggett]
a87e2a23083aa62229307482afbb3b802a0c2105mturk *) core: Fix segfault if per-module LogLevel is on virtual host
a87e2a23083aa62229307482afbb3b802a0c2105mturk scope. PR 50117. [Stefan Fritsch]
a87e2a23083aa62229307482afbb3b802a0c2105mturk *) mod_proxy: Move the ProxyErrorOverride directive to have per
a87e2a23083aa62229307482afbb3b802a0c2105mturk directory scope. [Graham Leggett]
8fd638698262130d00458b2c95548f6f94875847rpluem *) mod_allowmethods: New module to deny certain HTTP methods without
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem interfering with authentication/authorization. [Paul Querna,
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem Igor Galić, Stefan Fritsch]
e99dfd55d29a7b4209b814efc7270d0b74ccee74niq *) mod_ssl: Log certificate information and improve error message if client
c3c8103039e36494987aff50451896459826a361rpluem cert verification fails. PR 50093, PR 50094. [Lassi Tuura <lat cern ch>,
e99dfd55d29a7b4209b814efc7270d0b74ccee74niq Stefan Fritsch]
127aef4ce9f7b6b32a95c5ed9a93b796d18755e6rpluem *) htcacheclean: Teach htcacheclean to limit cache size by number of
127aef4ce9f7b6b32a95c5ed9a93b796d18755e6rpluem inodes in addition to size of files. Prevents a cache disk from
127aef4ce9f7b6b32a95c5ed9a93b796d18755e6rpluem running out of space when many small files are cached.
79d4b708d021714647aab8b138ae671ed24765cewrowe [Graham Leggett]
79d4b708d021714647aab8b138ae671ed24765cewrowe *) core: Rename MaxRequestsPerChild to MaxConnectionsPerChild, which
79d4b708d021714647aab8b138ae671ed24765cewrowe describes more accurately what the directive does. The old name
79d4b708d021714647aab8b138ae671ed24765cewrowe still works but logs a warning. [Stefan Fritsch]
88d0e50f16b21d4d0af0a48da7ad28fb5991834crpluem *) mod_cache: Optionally serve stale data when a revalidation returns a
88d0e50f16b21d4d0af0a48da7ad28fb5991834crpluem 5xx response, controlled by the CacheStaleOnError directive.
88d0e50f16b21d4d0af0a48da7ad28fb5991834crpluem [Graham Leggett]
15264721069299ec26493e21d56bf8ff7faf6f0drpluem *) htcacheclean: Allow the listing of valid URLs within the cache, with
15264721069299ec26493e21d56bf8ff7faf6f0drpluem the option to list entry metadata such as sizes and times. [Graham
25a81ea1bca1c89cda713c4d23660e487b1488a0rpluem *) mod_cache: correctly parse quoted strings in cache headers.
25a81ea1bca1c89cda713c4d23660e487b1488a0rpluem PR 50199 [Nick Kew]
48fa058fe468025347930610ac2473094fa0f4e4chrisd *) mod_cache: Allow control over the base URL of reverse proxied requests
48fa058fe468025347930610ac2473094fa0f4e4chrisd using the CacheKeyBaseURL directive, so that the cache key can be
3ec4328f079d8867cc323155e59678ad9437914frooneg calculated from the endpoint URL instead of the server URL. [Graham
de0d0b50c96fae59c28e09fed61b0d15cfa4147bchrisd *) mod_cache: CacheLastModifiedFactor, CacheStoreNoStore, CacheStorePrivate,
de0d0b50c96fae59c28e09fed61b0d15cfa4147bchrisd CacheStoreExpired, CacheIgnoreNoLastMod, CacheDefaultExpire,
de0d0b50c96fae59c28e09fed61b0d15cfa4147bchrisd CacheMinExpire and CacheMaxExpire can be set per directory/location.
de0d0b50c96fae59c28e09fed61b0d15cfa4147bchrisd [Graham Leggett]
de0d0b50c96fae59c28e09fed61b0d15cfa4147bchrisd *) mod_disk_cache: CacheMaxFileSize, CacheMinFileSize, CacheReadSize and
de0d0b50c96fae59c28e09fed61b0d15cfa4147bchrisd CacheReadTime can be set per directory/location. [Graham Leggett]
db78659055df54243bca678c35bd2ce7e31a9237rooneg *) core: Speed up config parsing if using a very large number of config
edf6757df85878dc8ce11fb3840ee4cde6de5b2frooneg files. PR 50002 [andrew cloudaccess net]
95817edd05387a5276f51fcd5db79fc21b89b55brooneg *) mod_cache: Support the caching of HEAD requests. [Graham Leggett]
95817edd05387a5276f51fcd5db79fc21b89b55brooneg *) htcacheclean: Allow the option to round up file sizes to a given
63689d77e084e36b8194fb6df5adfc0344965e01trawick block size, improving the accuracy of disk usage. [Graham Leggett]
63689d77e084e36b8194fb6df5adfc0344965e01trawick *) mod_ssl: Add authz providers for use with mod_authz_core and its
63689d77e084e36b8194fb6df5adfc0344965e01trawick RequireAny/RequireAll containers: 'ssl' (equivalent to SSLRequireSSL),
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes 'ssl-verify-client' (for use with 'SSLVerifyClient optional'), and
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes 'ssl-require' (expressions with same syntax as SSLRequire).
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes [Stefan Fritsch]
a1a615ca49b162d71d88089210395c9a9cfeb539rpluem *) mod_ssl: Make the ssl expression parser thread-safe. It now requires
8b67b9d3ce40755d1b58971198a02b2749d8e13dbnicholes bison instead of yacc. [Stefan Fritsch]
8b67b9d3ce40755d1b58971198a02b2749d8e13dbnicholes *) mod_disk_cache: Change on-disk header file format to support the
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes link of the device/inode of the data file to the matching header
a1a615ca49b162d71d88089210395c9a9cfeb539rpluem file, and to support the option of not writing a data file when
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes the data file is empty. [Graham Leggett]
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes *) core/mod_unique_id: Add generate_log_id hook to allow to use
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes the ID generated by mod_unique_id as error log ID for requests.
a1a615ca49b162d71d88089210395c9a9cfeb539rpluem [Stefan Fritsch]
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes *) mod_cache: Make sure that we never allow a 304 Not Modified response
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes that we asked for to leak to the client should the 304 response be
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes uncacheable. PR45341 [Graham Leggett]
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes *) mod_cache: Add the cache_status hook to register the final cache
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes decision hit/miss/revalidate. Add optional support for an X-Cache
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes and/or an X-Cache-Detail header to add the cache status to the
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes response. PR48241 [Graham Leggett]
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes *) mod_authz_host: Add 'local' provider that matches connections originating
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes on the local host. PR 19938. [Stefan Fritsch]
a1a615ca49b162d71d88089210395c9a9cfeb539rpluem *) Event MPM: Fix crash accessing pollset on worker thread when child
1b0dce86d7fc8a5aa4c89b05255be26e508c615crpluem process is exiting. [Jeff Trawick]
1b0dce86d7fc8a5aa4c89b05255be26e508c615crpluem *) core: For process invocation (cgi, fcgid, piped loggers and so forth)
1b0dce86d7fc8a5aa4c89b05255be26e508c615crpluem pass the system library path (LD_LIBRARY_PATH or platform-specific
edc5389f50ce4153e6192740f3c7a188c8cf8d67niq variables) along with the system PATH, by default. Both should be
edc5389f50ce4153e6192740f3c7a188c8cf8d67niq overridden together as desired using PassEnv etc; see mod_env.
6c05afd314b4ddd545d63b4ff5de822cc30eec79trawick [William Rowe]
6c05afd314b4ddd545d63b4ff5de822cc30eec79trawick *) mod_cache: Introduce CacheStoreExpired, to allow administrators to
13cd67e9c1dacbd6b9f040bda337c725cedd98f3brianp capture a stale backend response, perform If-Modified-Since requests
13cd67e9c1dacbd6b9f040bda337c725cedd98f3brianp against the backend, and serving from the cache all 304 responses.
a623efbff95aab78da9e030524b0fa69b054f6d0brianp This restores pre-2.2.4 cache behavior. [William Rowe]
a623efbff95aab78da9e030524b0fa69b054f6d0brianp *) mod_rewrite: Introduce <=, >= string comparison operators, and integer
a623efbff95aab78da9e030524b0fa69b054f6d0brianp comparators -lt, -le, -eq, -ge, and -gt. To help bash users and drop
a623efbff95aab78da9e030524b0fa69b054f6d0brianp the ambiguity of the symlink test "-ltest", introduce -h or -L as
a623efbff95aab78da9e030524b0fa69b054f6d0brianp symlink test operators. [William Rowe]
0b4b04d8621478ba59f0a6ba2950ddc02ab92b58colm *) mod_cache: Give the cache provider the opportunity to choose to cache
0b4b04d8621478ba59f0a6ba2950ddc02ab92b58colm or not cache based on the buckets present in the brigade, such as the
2f1bb5376c5c4022383bb729679ca751dd75a2eabrianp presence of a FILE bucket.
2f1bb5376c5c4022383bb729679ca751dd75a2eabrianp [Graham Leggett]
ad862ab5716726a2d72a292ba1dfb29566c86153brianp *) mod_authz_core: Allow authz providers to check args while reading the
ad862ab5716726a2d72a292ba1dfb29566c86153brianp config and allow to cache parsed args. Move 'all' and 'env' authz
17d53ea32c4968e47733f1c2c063ae07d280efd6jerenkrantz providers from mod_authz_host to mod_authz_core. Add 'method' authz
17d53ea32c4968e47733f1c2c063ae07d280efd6jerenkrantz provider depending on the HTTP method. [Stefan Fritsch]
2d5532b13110a8d85653da92e97795b09cc25cc2trawick *) mod_include: Move the request_rec within mod_include to be
b38565306421ff53e9f7499bc728d6df5cec294dpquerna exposed within include_ctx_t. [Graham Leggett]
b38565306421ff53e9f7499bc728d6df5cec294dpquerna *) mod_include: Reinstate support for UTF-8 character sets by allowing a
b38565306421ff53e9f7499bc728d6df5cec294dpquerna variable being echoed or set to be decoded and then encoded as separate
74499a117b3b2cd9666715a14f90c0e5d1a4ee8ajim steps. PR47686 [Graham Leggett]
cfa64348224b66dd1c9979b809406c4d15b1c137fielding *) mod_cache: Add a discrete commit_entity() provider function within the
74499a117b3b2cd9666715a14f90c0e5d1a4ee8ajim mod_cache provider interface which is called to indicate to the
cfa64348224b66dd1c9979b809406c4d15b1c137fielding provider that caching is complete, giving the provider the opportunity
74499a117b3b2cd9666715a14f90c0e5d1a4ee8ajim to commit temporary files permanently to the cache in an atomic
cfa64348224b66dd1c9979b809406c4d15b1c137fielding fashion. Replace the inconsistent use of error cleanups with a formal
74499a117b3b2cd9666715a14f90c0e5d1a4ee8ajim set of pool cleanups attached to a subpool, which is destroyed on error.
cfa64348224b66dd1c9979b809406c4d15b1c137fielding [Graham Leggett]
cfa64348224b66dd1c9979b809406c4d15b1c137fielding *) mod_cache: Change the signature of the store_body() provider function
74499a117b3b2cd9666715a14f90c0e5d1a4ee8ajim within the mod_cache provider interface to support an "in" brigade
cfa64348224b66dd1c9979b809406c4d15b1c137fielding and an "out" brigade instead of just a single input brigade. This
74499a117b3b2cd9666715a14f90c0e5d1a4ee8ajim gives a cache provider the option to consume only part of the brigade
<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:
Changes with Apache 1.3.x and later: