CHANGES revision 20e0c71be778348516719e1e58a9f55c8e78c570
842ae4bd224140319ae7feec1872b93dfd491143fielding -*- coding: utf-8 -*-
842ae4bd224140319ae7feec1872b93dfd491143fieldingChanges with Apache 2.3.12
842ae4bd224140319ae7feec1872b93dfd491143fielding *) MPM helper function ap_remove_pid() added. [Jeff Trawick]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) Enable DEFAULT_REL_RUNTIMEDIR on Windows and NetWare. [various]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) Correct C++ incompatibility with http_log.h. [Stefan Fritsch, Jeff
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd *) mod_log_config: Prevent segfault. PR 50861. [Torsten Förtsch
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd *) core: AllowEncodedSlashes new option NoDecode to allow encoded slashes
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd in request URL path info but not decode them. Change behavior of option
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd "On" to decode the encoded slashes as 2.0 and 2.2 do. PR 35256,
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd PR 46830. [Dan Poirier]
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd *) mod_ssl: Check SNI hostname against Host header case-insensitively.
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd PR 49491. [Mayank Agrawal <magrawal.08 gmail.com>]
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd *) mod_ldap: Add LDAPConnectionPoolTTL to give control over lifetime
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd of bound backend LDAP connections. PR47634 [Eric Covener]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) mod_cache: Make CacheEnable and CacheDisable configurable per
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse directory in addition to per server, making them work from within
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse a LocationMatch. [Graham Leggett]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) worker, event, prefork: Correct several issues when built as
e18e68b42830409bf48de0df9eed3fe363664aa7aaron DSOs; most notably, the scoreboard was reinitialized during graceful
70535d6421eb979ac79d8f49d31cd94d75dd8b2fjorton restart, such that processes of the previous generation were not
8464a9c46b967001e38fe3c8afff51a649e9de51dougm observable. [Jeff Trawick]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrseChanges with Apache 2.3.11
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) mod_proxy: balancer-manager now uses POST instead of GET.
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse [Jim Jagielski]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) core: new util function: ap_parse_form_data(). Previously,
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse this capability was tucked away in mod_request. [Jim Jagielski]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) core: new hook: ap_run_pre_read_request. [Jim Jagielski]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) mod_cache: When a request other than GET or HEAD arrives, we must
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse invalidate existing cache entities as per RFC2616 13.10. PR 15868.
05413593151a238718198cc04ca849b2426be106rse [Graham Leggett]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) modules: Fix many modules that were not correctly initializing if they
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse were not active during server startup but got enabled later during a
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse graceful restart. [Stefan Fritsch]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) core: Create new ap_state_query function that allows modules to determine
434ad3e8e769a6a7a78c15f3ae2f7ae3adbfbb49wrowe if the current configuration run is the initial one at server startup,
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse and if the server is started for testing/config dumping only.
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse [Stefan Fritsch]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) mod_proxy: Runtime configuration of many parameters for existing
05413593151a238718198cc04ca849b2426be106rse balancers via the balancer-manager. [Jim Jagielski]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) mod_proxy: Runtime addition of new workers (BalancerMember) for existing
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse balancers via the balancer-manager. [Jim Jagielski]
87a1c79b7b37702a254920ca5214fb282a4fb085dougm *) mod_cache: When a bad Expires date is present, we need to behave as if
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse the Expires is in the past, not as if the Expires is missing. PR 16521.
bb0b94431dc9a1591a0a38a6c48925c6d9213c83rse [Co-Advisor <coad@measurement-factory.com>]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) mod_cache: We must ignore quoted-string values that appear in a
e8f95a682820a599fe41b22977010636be5c2717jim Cache-Control header. PR 50199. [Graham Leggett]
e8f95a682820a599fe41b22977010636be5c2717jim *) mod_dav: Revert change to send 501 error if unknown Content-* header is
bb0b94431dc9a1591a0a38a6c48925c6d9213c83rse received for a PUT request. PR 42978. [Stefan Fritsch]
e8f95a682820a599fe41b22977010636be5c2717jim *) mod_cache: Respect s-maxage as described by RFC2616 14.9.3, which must
bb0b94431dc9a1591a0a38a6c48925c6d9213c83rse take precedence if present. PR 35247. [Graham Leggett]
bb0b94431dc9a1591a0a38a6c48925c6d9213c83rse *) mod_ssl: Fix a possible startup failure if multiple SSL vhosts
bb0b94431dc9a1591a0a38a6c48925c6d9213c83rse are configured with the same ServerName and private key file.
bb0b94431dc9a1591a0a38a6c48925c6d9213c83rse [Masahiro Matsuya <mmatsuya redhat.com>, Joe Orton]
87a1c79b7b37702a254920ca5214fb282a4fb085dougm *) mod_socache_dc: Make module compile by fixing some typos.
bb0b94431dc9a1591a0a38a6c48925c6d9213c83rse PR 50735 [Mark Montague <mark catseye.org>]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) prefork: Update MPM state in children during a graceful stop or
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse restart. PR 41743. [Andrew Punch <andrew.punch 247realmedia.com>]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) mod_mime: Ignore leading dots when looking for mime extensions.
bb0b94431dc9a1591a0a38a6c48925c6d9213c83rse PR 50434 [Stefan Fritsch]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) core: Add support to set variables with the 'Define' directive. The
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse variables that can then be used in the config using the ${VAR} syntax
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse known from envvar interpolation. [Stefan Fritsch]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) mod_proxy_http: make adding of X-Forwarded-* headers configurable.
87a1c79b7b37702a254920ca5214fb282a4fb085dougm ProxyAddHeaders defaults to On. [Vincent Deffontaines]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) mod_slotmem_shm: Increase memory alignment for slotmem data.
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse [Rainer Jung]
87a1c79b7b37702a254920ca5214fb282a4fb085dougm *) mod_ssl: Add config options for OCSP: SSLOCSPResponderTimeout,
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse SSLOCSPResponseMaxAge, SSLOCSPResponseTimeSkew.
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse [Kaspar Brand <httpd-dev.2011 velox.ch>]
87a1c79b7b37702a254920ca5214fb282a4fb085dougm *) mod_ssl: Revamp output buffering to reduce network overhead for
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse output fragmented into many buckets, such as chunked HTTP responses.
87a1c79b7b37702a254920ca5214fb282a4fb085dougm [Joe Orton]
bb0b94431dc9a1591a0a38a6c48925c6d9213c83rse *) core: Apply <If> sections to all requests, not only to file base requests.
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse Allow to use <If> inside <Directory>, <Location>, and <Files> sections.
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse The merging of <If> sections now happens after the merging of <Location>
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse sections, even if an <If> section is embedded inside a <Directory> or
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse <Files> section. [Stefan Fritsch]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) mod_proxy: Refactor usage of shared data by dropping the scoreboard
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse and using slotmem. Create foundation for dynamic growth/changes of
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse members within a balancer. Remove BalancerNonce in favor of a
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse per-balancer 'nonce' parameter. [Jim Jagielski]
03181bdde77be8e10ed297a02db5d8f98ecb703ewrowe *) mod_status: Don't show slots which are disabled by MaxClients as open.
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse PR: 47022 [Jordi Prats <jordi prats gmail com>, Stefan Fritsch]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) mpm_prefork: Fix ap_mpm_query results for AP_MPMQ_MAX_DAEMONS and
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse AP_MPMQ_MAX_THREADS.
e8f95a682820a599fe41b22977010636be5c2717jim *) mod_authz_core: Fix bug in merging logic if user-based and non-user-based
bb0b94431dc9a1591a0a38a6c48925c6d9213c83rse authorization directives were mixed. [Stefan Fritsch]
bb0b94431dc9a1591a0a38a6c48925c6d9213c83rse *) mod_authn_socache: change directive name from AuthnCacheProvider
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse to AuthnCacheProvideFor. The term "provider" is overloaded in
bb0b94431dc9a1591a0a38a6c48925c6d9213c83rse this module, and we should avoid confusion between the provider
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse of a backend (AuthnCacheSOCache) and the authn provider(s) for
bb0b94431dc9a1591a0a38a6c48925c6d9213c83rse which this module provides cacheing (AuthnCacheProvideFor).
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse [Nick Kew]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) mod_proxy_http: Allocate the fake backend request from a child pool
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse of the backend connection, instead of misusing the pool of the frontend
e8f95a682820a599fe41b22977010636be5c2717jim request. Fixes a thread safety issue where buckets set aside in the
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse backend connection leak into other threads, and then disappear when
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse the frontend request is cleaned up, in turn causing corrupted buckets
14099c5540ce39114b5501a71ff96e40f48efc4bmartin to make other threads spin. [Graham Leggett]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) mod_ssl: Change the format of the SSL_{CLIENT,SERVER}_{I,S}_DN variables
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse to be RFC 2253 compatible, convert non-ASCII characters to UTF8, and
14099c5540ce39114b5501a71ff96e40f48efc4bmartin escape other special characters with backslashes. The old format can
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse still be used with the LegacyDNStringFormat argument to SSLOptions.
e8f95a682820a599fe41b22977010636be5c2717jim *) core, mod_rewrite: Make the REQUEST_SCHEME variable available to
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse scripts and mod_rewrite. [Stefan Fritsch]
e8f95a682820a599fe41b22977010636be5c2717jim *) mod_rewrite: Allow to use arbitrary boolean expressions (ap_expr) in
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse RewriteCond. [Stefan Fritsch]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) mod_rewrite: Allow to unset environment variables using E=!VAR.
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse PR 49512. [Mark Drayton <mark markdrayton info>, Stefan Fritsch]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) mod_headers: Restore the 2.3.8 and earlier default for the first
14099c5540ce39114b5501a71ff96e40f48efc4bmartin argument of the Header directive ("onsuccess"). [Eric Covener]
14099c5540ce39114b5501a71ff96e40f48efc4bmartin *) core: Disallow the mixing of relative and absolute Options PR 33708.
14099c5540ce39114b5501a71ff96e40f48efc4bmartin [Sönke Tesch <st kino-fahrplan.de>]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) core: When exporting request headers to HTTP_* environment variables,
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse drop variables whose names contain invalid characters. Describe in the
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse docs how to restore the old behaviour. [Malte S. Stretz <mss apache org>]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) core: When selecting an IP-based virtual host, favor an exact match for
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse the port over a wildcard (or omitted) port instead of favoring the one
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse that came first in the configuration file. [Eric Covener]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) core: Overlapping virtual host address/port combinations now implicitly
e8f95a682820a599fe41b22977010636be5c2717jim enable name-based virtual hosting for that address. The NameVirtualHost
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse directive has no effect, and _default_ is interpreted the same as "*".
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse [Eric Covener]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) core: In the absence of any Options directives, the default is now
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse "FollowSymlinks" instead of "All". [Igor Galić]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) rotatelogs: Add -e option to write logs through to stdout for optional
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse further processing. [Graham Leggett]
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse *) mod_ssl: Correctly read full lines in input filter when the line is
cc003103e52ff9d5fe9bed567ef9438613ab4fbfrse incomplete during first read. PR 50481. [Ruediger Pluem]
a0e0d20b666cfc453ac76506079eb50e03997eefdougm *) mod_authz_core: Add AuthzSendForbiddenOnFailure directive to allow
a0e0d20b666cfc453ac76506079eb50e03997eefdougm sending '403 FORBIDDEN' instead of '401 UNAUTHORIZED' if authorization
a0e0d20b666cfc453ac76506079eb50e03997eefdougm fails for an authenticated user. PR 40721. [Stefan Fritsch]
a0e0d20b666cfc453ac76506079eb50e03997eefdougmChanges with Apache 2.3.10
a0e0d20b666cfc453ac76506079eb50e03997eefdougm *) mod_rewrite: Don't implicitly URL-escape the original query string
a0e0d20b666cfc453ac76506079eb50e03997eefdougm when no substitution has changed it. PR 50447. [Eric Covener]
a0e0d20b666cfc453ac76506079eb50e03997eefdougm *) core: Honor 'AcceptPathInfo OFF' during internal redirects,
a0e0d20b666cfc453ac76506079eb50e03997eefdougm such as per-directory mod_rewrite substitutions. PR 50349.
a0e0d20b666cfc453ac76506079eb50e03997eefdougm [Eric Covener]
a0e0d20b666cfc453ac76506079eb50e03997eefdougm *) mod_rewrite: Add 'RewriteOptions InheritBefore' to put the base
a0e0d20b666cfc453ac76506079eb50e03997eefdougm rules/conditions before the overridden rules/conditions. PR 39313.
a0e0d20b666cfc453ac76506079eb50e03997eefdougm *) mod_autoindex: add IndexIgnoreReset to reset the list of IndexIgnored
a0e0d20b666cfc453ac76506079eb50e03997eefdougm filenames in higher precedence configuration sections. PR 24243.
a0e0d20b666cfc453ac76506079eb50e03997eefdougm [Eric Covener]
a0e0d20b666cfc453ac76506079eb50e03997eefdougm *) mod_cgid: RLimit* directive support for mod_cgid. PR 42135
a0e0d20b666cfc453ac76506079eb50e03997eefdougm [Eric Covener]
a0e0d20b666cfc453ac76506079eb50e03997eefdougm *) core: Fail startup when the argument to ServerName looks like a glob
a0e0d20b666cfc453ac76506079eb50e03997eefdougm or a regular expression instead of a hostname (*?[]). PR 39863
a0e0d20b666cfc453ac76506079eb50e03997eefdougm *) mod_userdir: Add merging of enable, disable, and filename arguments
a0e0d20b666cfc453ac76506079eb50e03997eefdougm to UserDir directive, leaving enable/disable of userlists unmerged.
a0e0d20b666cfc453ac76506079eb50e03997eefdougm PR 44076 [Eric Covener]
a0e0d20b666cfc453ac76506079eb50e03997eefdougm *) httpd: When no -k option is provided on the httpd command line, the server
a0e0d20b666cfc453ac76506079eb50e03997eefdougm was starting without checking for an existing pidfile. PR 50350
a0e0d20b666cfc453ac76506079eb50e03997eefdougm [Eric Covener]
a0e0d20b666cfc453ac76506079eb50e03997eefdougm *) mod_proxy: Put the worker in error state if the SSL handshake with the
a0e0d20b666cfc453ac76506079eb50e03997eefdougm backend fails. PR 50332.
a0e0d20b666cfc453ac76506079eb50e03997eefdougm [Daniel Ruggeri <DRuggeri primary.net>, Ruediger Pluem]
a0e0d20b666cfc453ac76506079eb50e03997eefdougm *) mod_cache_disk: Fix Windows build which was broken after renaming
a0e0d20b666cfc453ac76506079eb50e03997eefdougm the module. [Gregg L. Smith]
a0e0d20b666cfc453ac76506079eb50e03997eefdougmChanges with Apache 2.3.9
a0e0d20b666cfc453ac76506079eb50e03997eefdougm *) SECURITY: CVE-2010-1623 (cve.mitre.org)
a0e0d20b666cfc453ac76506079eb50e03997eefdougm Fix a denial of service attack against mod_reqtimeout.
a0e0d20b666cfc453ac76506079eb50e03997eefdougm [Stefan Fritsch]
a0e0d20b666cfc453ac76506079eb50e03997eefdougm *) mod_headers: Change default first argument of Header directive
a0e0d20b666cfc453ac76506079eb50e03997eefdougm from "onsuccess" to "always". [Eric Covener]
a0e0d20b666cfc453ac76506079eb50e03997eefdougm *) mod_include: Add the onerror attribute to the include element,
a0e0d20b666cfc453ac76506079eb50e03997eefdougm allowing an URL to be specified to include on error. [Graham
a0e0d20b666cfc453ac76506079eb50e03997eefdougm *) mod_cache_disk: mod_disk_cache renamed to mod_cache_disk, to be
a0e0d20b666cfc453ac76506079eb50e03997eefdougm consistent with the naming of other modules. [Graham Leggett]
a0e0d20b666cfc453ac76506079eb50e03997eefdougm *) mod_setenvif: Add SetEnvIfExpr directive to set env var depending on
a0e0d20b666cfc453ac76506079eb50e03997eefdougm expression. [Stefan Fritsch]
a0e0d20b666cfc453ac76506079eb50e03997eefdougm *) mod_proxy: Fix ProxyPassInterpolateEnv directive. PR 50292.
a0e0d20b666cfc453ac76506079eb50e03997eefdougm [Stefan Fritsch]
22357f10585a847ebf7b084cbe1db07ba071aeb6dougm *) suEXEC: Add Suexec directive to disable suEXEC without renaming the
dd7c683f683624b082d430935b594df7406782c2dougm binary (Suexec Off), or force startup failure if suEXEC is required
22357f10585a847ebf7b084cbe1db07ba071aeb6dougm but not supported (Suexec On). Change SuexecUserGroup to fail
22357f10585a847ebf7b084cbe1db07ba071aeb6dougm startup instead of just printing a warning if suEXEC is disabled.
22357f10585a847ebf7b084cbe1db07ba071aeb6dougm [Jeff Trawick]
22357f10585a847ebf7b084cbe1db07ba071aeb6dougm *) core: Add Error directive for aborting startup or htaccess processing
dd7c683f683624b082d430935b594df7406782c2dougm with a specified error message. [Jeff Trawick]
22357f10585a847ebf7b084cbe1db07ba071aeb6dougm *) mod_rewrite: Fix the RewriteEngine directive to work within a
dd7c683f683624b082d430935b594df7406782c2dougm location. Previously, once RewriteEngine was switched on globally,
dd7c683f683624b082d430935b594df7406782c2dougm it was impossible to switch off. [Graham Leggett]
dd7c683f683624b082d430935b594df7406782c2dougm *) core, mod_include, mod_ssl: Move the expression parser derived from
dd7c683f683624b082d430935b594df7406782c2dougm mod_include back into mod_include. Replace ap_expr with a parser
dd7c683f683624b082d430935b594df7406782c2dougm derived from mod_ssl's parser. Make mod_ssl use the new parser. Rework
dd7c683f683624b082d430935b594df7406782c2dougm ap_expr's public interface and provide hooks for modules to add variables
dd7c683f683624b082d430935b594df7406782c2dougm and functions. [Stefan Fritsch]
176c2742db03fcb7b7d13e6408dd967d87e542e9ben *) core: Do the hook sorting earlier so that the hooks are properly sorted
176c2742db03fcb7b7d13e6408dd967d87e542e9ben for the pre_config hook and during parsing the config. [Stefan Fritsch]
e0c3fda9f782aee1140d83fbce32672ac299f2a4ben *) core: In the absence of any AllowOverride directives, the default is now
176c2742db03fcb7b7d13e6408dd967d87e542e9ben "None" instead of "All". PR49823 [Eric Covener]
176c2742db03fcb7b7d13e6408dd967d87e542e9ben *) mod_proxy: Don't allow ProxyPass or ProxyPassReverse in
176c2742db03fcb7b7d13e6408dd967d87e542e9ben <Directory> or <Files>. PR47765 [Eric Covener]
e0c3fda9f782aee1140d83fbce32672ac299f2a4ben *) prefork/worker/event MPMS: default value (when no directive is present)
176c2742db03fcb7b7d13e6408dd967d87e542e9ben of MaxConnectionsPerChild/MaxRequestsPerChild is changed to 0 from 10000
176c2742db03fcb7b7d13e6408dd967d87e542e9ben to match default configuration and manual. PR47782 [Eric Covener]
176c2742db03fcb7b7d13e6408dd967d87e542e9ben *) proxy_connect: Don't give up in the middle of a CONNECT tunnel
e0c3fda9f782aee1140d83fbce32672ac299f2a4ben when the child process is starting to exit. PR50220. [Eric Covener]
e0c3fda9f782aee1140d83fbce32672ac299f2a4ben *) mod_autoindex: Fix inheritance of mod_autoindex directives into
e0c3fda9f782aee1140d83fbce32672ac299f2a4ben contexts that don't have any mod_autoindex directives. PR47766.
176c2742db03fcb7b7d13e6408dd967d87e542e9ben [Eric Covener]
176c2742db03fcb7b7d13e6408dd967d87e542e9ben *) mod_rewrite: Add END flag for RewriteRule to prevent further rounds
176c2742db03fcb7b7d13e6408dd967d87e542e9ben of rewrite processing when a per-directory substitution occurs.
e0c3fda9f782aee1140d83fbce32672ac299f2a4ben [Eric Covener]
176c2742db03fcb7b7d13e6408dd967d87e542e9ben *) mod_ssl: Make sure to always log an error if loading of CA certificates
176c2742db03fcb7b7d13e6408dd967d87e542e9ben fails. PR 40312. [Paul Tiemann <issues apache org ourdetour com>]
e0c3fda9f782aee1140d83fbce32672ac299f2a4ben *) mod_dav: Send 501 error if unknown Content-* header is received for a PUT
176c2742db03fcb7b7d13e6408dd967d87e542e9ben request (RFC 2616 9.6). PR 42978. [Stefan Fritsch]
e0c3fda9f782aee1140d83fbce32672ac299f2a4ben *) mod_dav: Send 400 error if malformed Content-Range header is received for
e0c3fda9f782aee1140d83fbce32672ac299f2a4ben a put request (RFC 2616 14.16). PR 49825. [Stefan Fritsch]
176c2742db03fcb7b7d13e6408dd967d87e542e9ben *) mod_proxy: Release the backend connection as soon as EOS is detected,
176c2742db03fcb7b7d13e6408dd967d87e542e9ben so the backend isn't forced to wait for the client to eventually
176c2742db03fcb7b7d13e6408dd967d87e542e9ben acknowledge the data. [Graham Leggett]
e0c3fda9f782aee1140d83fbce32672ac299f2a4ben *) mod_proxy: Optimise ProxyPass within a Location so that it is stored
e0c3fda9f782aee1140d83fbce32672ac299f2a4ben per-directory, and chosen during the location walk. Make ProxyPass
176c2742db03fcb7b7d13e6408dd967d87e542e9ben work correctly from within a LocationMatch. [Graham Leggett]
e0c3fda9f782aee1140d83fbce32672ac299f2a4ben *) core: Fix segfault if per-module LogLevel is on virtual host
e0c3fda9f782aee1140d83fbce32672ac299f2a4ben scope. PR 50117. [Stefan Fritsch]
176c2742db03fcb7b7d13e6408dd967d87e542e9ben *) mod_proxy: Move the ProxyErrorOverride directive to have per
176c2742db03fcb7b7d13e6408dd967d87e542e9ben directory scope. [Graham Leggett]
6a26d195dfba3a91f8352cabd4547afa77675bb1aaron *) mod_allowmethods: New module to deny certain HTTP methods without
d94fd18ee21dc9b8c1f422144a881e941687d41fdougm interfering with authentication/authorization. [Paul Querna,
d94fd18ee21dc9b8c1f422144a881e941687d41fdougm Igor Galić, Stefan Fritsch]
d94fd18ee21dc9b8c1f422144a881e941687d41fdougm *) mod_ssl: Log certificate information and improve error message if client
e18e68b42830409bf48de0df9eed3fe363664aa7aaron cert verification fails. PR 50093, PR 50094. [Lassi Tuura <lat cern ch>,
3c65aa88903de7330a07e133dfda779842fadad4wrowe Stefan Fritsch]
a1696119fa668c01957eea97a616fcbe95da9492wrowe *) htcacheclean: Teach htcacheclean to limit cache size by number of
b40799adcfd0f0a2a465c2934585986f7bbc9bbcwrowe inodes in addition to size of files. Prevents a cache disk from
b40799adcfd0f0a2a465c2934585986f7bbc9bbcwrowe running out of space when many small files are cached.
6b441532f6ac4ebd1c4867ab5f8a0165247b178ewrowe [Graham Leggett]
b40799adcfd0f0a2a465c2934585986f7bbc9bbcwrowe *) core: Rename MaxRequestsPerChild to MaxConnectionsPerChild, which
6b441532f6ac4ebd1c4867ab5f8a0165247b178ewrowe describes more accurately what the directive does. The old name
b40799adcfd0f0a2a465c2934585986f7bbc9bbcwrowe still works but logs a warning. [Stefan Fritsch]
d54a31567fc49f1841d27a14796ae726016c54aadougm *) mod_cache: Optionally serve stale data when a revalidation returns a
3c65aa88903de7330a07e133dfda779842fadad4wrowe 5xx response, controlled by the CacheStaleOnError directive.
b40799adcfd0f0a2a465c2934585986f7bbc9bbcwrowe [Graham Leggett]
3c65aa88903de7330a07e133dfda779842fadad4wrowe *) htcacheclean: Allow the listing of valid URLs within the cache, with
3c65aa88903de7330a07e133dfda779842fadad4wrowe the option to list entry metadata such as sizes and times. [Graham
3c65aa88903de7330a07e133dfda779842fadad4wrowe *) mod_cache: correctly parse quoted strings in cache headers.
3c65aa88903de7330a07e133dfda779842fadad4wrowe PR 50199 [Nick Kew]
b40799adcfd0f0a2a465c2934585986f7bbc9bbcwrowe *) mod_cache: Allow control over the base URL of reverse proxied requests
a1696119fa668c01957eea97a616fcbe95da9492wrowe using the CacheKeyBaseURL directive, so that the cache key can be
b40799adcfd0f0a2a465c2934585986f7bbc9bbcwrowe calculated from the endpoint URL instead of the server URL. [Graham
b40799adcfd0f0a2a465c2934585986f7bbc9bbcwrowe *) mod_cache: CacheLastModifiedFactor, CacheStoreNoStore, CacheStorePrivate,
b40799adcfd0f0a2a465c2934585986f7bbc9bbcwrowe CacheStoreExpired, CacheIgnoreNoLastMod, CacheDefaultExpire,
b40799adcfd0f0a2a465c2934585986f7bbc9bbcwrowe CacheMinExpire and CacheMaxExpire can be set per directory/location.
d94fd18ee21dc9b8c1f422144a881e941687d41fdougm [Graham Leggett]
d94fd18ee21dc9b8c1f422144a881e941687d41fdougm *) mod_disk_cache: CacheMaxFileSize, CacheMinFileSize, CacheReadSize and
dd9940ba9b4d9c09f034b910d1569db4a5111c75dougm CacheReadTime can be set per directory/location. [Graham Leggett]
e8f95a682820a599fe41b22977010636be5c2717jim *) core: Speed up config parsing if using a very large number of config
e8f95a682820a599fe41b22977010636be5c2717jim files. PR 50002 [andrew cloudaccess net]
98f81eac9530d487f05013cda9df99755bb59689trawick *) mod_cache: Support the caching of HEAD requests. [Graham Leggett]
98f81eac9530d487f05013cda9df99755bb59689trawick *) htcacheclean: Allow the option to round up file sizes to a given
98f81eac9530d487f05013cda9df99755bb59689trawick block size, improving the accuracy of disk usage. [Graham Leggett]
98f81eac9530d487f05013cda9df99755bb59689trawick *) mod_ssl: Add authz providers for use with mod_authz_core and its
98f81eac9530d487f05013cda9df99755bb59689trawick RequireAny/RequireAll containers: 'ssl' (equivalent to SSLRequireSSL),
98f81eac9530d487f05013cda9df99755bb59689trawick 'ssl-verify-client' (for use with 'SSLVerifyClient optional'), and
98f81eac9530d487f05013cda9df99755bb59689trawick 'ssl-require' (expressions with same syntax as SSLRequire).
e62985c7a1b46a5036a247f35bddac1308985758dougm [Stefan Fritsch]
e62985c7a1b46a5036a247f35bddac1308985758dougm *) mod_ssl: Make the ssl expression parser thread-safe. It now requires
e62985c7a1b46a5036a247f35bddac1308985758dougm bison instead of yacc. [Stefan Fritsch]
d94fd18ee21dc9b8c1f422144a881e941687d41fdougm *) mod_disk_cache: Change on-disk header file format to support the
d94fd18ee21dc9b8c1f422144a881e941687d41fdougm link of the device/inode of the data file to the matching header
462f3213ebe7eb2a3527530497d0428e2298a034jorton file, and to support the option of not writing a data file when
8464a9c46b967001e38fe3c8afff51a649e9de51dougm the data file is empty. [Graham Leggett]
3c65aa88903de7330a07e133dfda779842fadad4wrowe *) core/mod_unique_id: Add generate_log_id hook to allow to use
d94fd18ee21dc9b8c1f422144a881e941687d41fdougm the ID generated by mod_unique_id as error log ID for requests.
d94fd18ee21dc9b8c1f422144a881e941687d41fdougm [Stefan Fritsch]
3c65aa88903de7330a07e133dfda779842fadad4wrowe *) mod_cache: Make sure that we never allow a 304 Not Modified response
d94fd18ee21dc9b8c1f422144a881e941687d41fdougm that we asked for to leak to the client should the 304 response be
3c65aa88903de7330a07e133dfda779842fadad4wrowe uncacheable. PR45341 [Graham Leggett]
3c65aa88903de7330a07e133dfda779842fadad4wrowe *) mod_cache: Add the cache_status hook to register the final cache
3c65aa88903de7330a07e133dfda779842fadad4wrowe decision hit/miss/revalidate. Add optional support for an X-Cache
8464a9c46b967001e38fe3c8afff51a649e9de51dougm and/or an X-Cache-Detail header to add the cache status to the
3c65aa88903de7330a07e133dfda779842fadad4wrowe response. PR48241 [Graham Leggett]
d94fd18ee21dc9b8c1f422144a881e941687d41fdougm *) mod_authz_host: Add 'local' provider that matches connections originating
d94fd18ee21dc9b8c1f422144a881e941687d41fdougm on the local host. PR 19938. [Stefan Fritsch]
9e530d1e49062250c345bfd45810e145b4f435eddougm *) Event MPM: Fix crash accessing pollset on worker thread when child
e62985c7a1b46a5036a247f35bddac1308985758dougm process is exiting. [Jeff Trawick]
3c65aa88903de7330a07e133dfda779842fadad4wrowe *) core: For process invocation (cgi, fcgid, piped loggers and so forth)
3c65aa88903de7330a07e133dfda779842fadad4wrowe pass the system library path (LD_LIBRARY_PATH or platform-specific
d94fd18ee21dc9b8c1f422144a881e941687d41fdougm variables) along with the system PATH, by default. Both should be
6a26d195dfba3a91f8352cabd4547afa77675bb1aaron overridden together as desired using PassEnv etc; see mod_env.
<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: