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