CHANGES revision 47ae8ca3c79d279b2e5424d6b8cf5e4e61ea968f
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync -*- coding: utf-8 -*-
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsyncChanges with Apache 2.3.11
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_proxy: Refactor usage of shared data by dropping the scoreboard
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync and using slotmem. Create foundation for dynamic growth/changes of
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync members within a balancer. Remove BalancerNonce in favor of a
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync per-balancer 'nonce' parameter. [Jim Jagielski]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_status: Don't show slots which are disabled by MaxClients as open.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync PR: 47022 [Jordi Prats <jordi prats gmail com>, Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mpm_prefork: Fix ap_mpm_query results for AP_MPMQ_MAX_DAEMONS and
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync AP_MPMQ_MAX_THREADS.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_authz_core: Fix bug in merging logic if user-based and non-user-based
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync authorization directives were mixed. [Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_authn_socache: change directive name from AuthnCacheProvider
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync to AuthnCacheProvideFor. The term "provider" is overloaded in
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync this module, and we should avoid confusion between the provider
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync of a backend (AuthnCacheSOCache) and the authn provider(s) for
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync which this module provides cacheing (AuthnCacheProvideFor).
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_proxy_http: Allocate the fake backend request from a child pool
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync of the backend connection, instead of misusing the pool of the frontend
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync request. Fixes a thread safety issue where buckets set aside in the
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync backend connection leak into other threads, and then disappear when
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync the frontend request is cleaned up, in turn causing corrupted buckets
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync to make other threads spin. [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_ssl: Change the format of the SSL_{CLIENT,SERVER}_{I,S}_DN variables
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync to be RFC 2253 compatible, convert non-ASCII characters to UTF8, and
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync escape other special characters with backslashes. The old format can
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync still be used with the LegacyDNStringFormat argument to SSLOptions.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) core, mod_rewrite: Make the REQUEST_SCHEME variable available to
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync scripts and mod_rewrite. [Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_rewrite: Allow to use arbitrary boolean expressions (ap_expr) in
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync RewriteCond. [Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_rewrite: Allow to unset environment variables using E=!VAR.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync PR 49512. [Mark Drayton <mark markdrayton info>, Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_headers: Restore the 2.3.8 and earlier default for the first
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync argument of the Header directive ("onsuccess"). [Eric Covener]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) core: Disallow the mixing of relative and absolute Options PR 33708.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync [Sönke Tesch <st kino-fahrplan.de>]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) core: When exporting request headers to HTTP_* environment variables,
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync drop variables whose names contain invalid characters. Describe in the
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync docs how to restore the old behaviour. [Malte S. Stretz <mss apache org>]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) core: When selecting an IP-based virtual host, favor an exact match for
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync the port over a wildcard (or omitted) port instead of favoring the one
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync that came first in the configuration file. [Eric Covener]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) core: Overlapping virtual host address/port combinations now implicitly
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync enable name-based virtual hosting for that address. The NameVirtualHost
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync directive has no effect, and _default_ is interpreted the same as "*".
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync [Eric Covener]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) core: In the absence of any Options directives, the default is now
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync "FollowSymlinks" instead of "All". [Igor Galić]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) rotatelogs: Add -e option to write logs through to stdout for optional
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync further processing. [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_ssl: Correctly read full lines in input filter when the line is
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync incomplete during first read. PR 50481. [Ruediger Pluem]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_authz_core: Add AuthzSendForbiddenOnFailure directive to allow
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync sending '403 FORBIDDEN' instead of '401 UNAUTHORIZED' if authorization
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync fails for an authenticated user. PR 40721. [Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsyncChanges with Apache 2.3.10
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_rewrite: Don't implicitly URL-escape the original query string
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync when no substitution has changed it. PR 50447. [Eric Covener]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) core: Honor 'AcceptPathInfo OFF' during internal redirects,
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync such as per-directory mod_rewrite substitutions. PR 50349.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync [Eric Covener]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_rewrite: Add 'RewriteOptions InheritBefore' to put the base
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync rules/conditions before the overridden rules/conditions. PR 39313.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_autoindex: add IndexIgnoreReset to reset the list of IndexIgnored
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync filenames in higher precedence configuration sections. PR 24243.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync [Eric Covener]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_cgid: RLimit* directive support for mod_cgid. PR 42135
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync [Eric Covener]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) core: Fail startup when the argument to ServerName looks like a glob
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync or a regular expression instead of a hostname (*?[]). PR 39863
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_userdir: Add merging of enable, disable, and filename arguments
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync to UserDir directive, leaving enable/disable of userlists unmerged.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync PR 44076 [Eric Covener]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) httpd: When no -k option is provided on the httpd command line, the server
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync was starting without checking for an existing pidfile. PR 50350
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync [Eric Covener]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_proxy: Put the worker in error state if the SSL handshake with the
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync backend fails. PR 50332.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync [Daniel Ruggeri <DRuggeri primary.net>, Ruediger Pluem]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_cache_disk: Fix Windows build which was broken after renaming
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync the module. [Gregg L. Smith]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsyncChanges with Apache 2.3.9
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) SECURITY: CVE-2010-1623 (cve.mitre.org)
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync Fix a denial of service attack against mod_reqtimeout.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync [Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_headers: Change default first argument of Header directive
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync from "onsuccess" to "always". [Eric Covener]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_include: Add the onerror attribute to the include element,
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync allowing an URL to be specified to include on error. [Graham
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_cache_disk: mod_disk_cache renamed to mod_cache_disk, to be
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync consistent with the naming of other modules. [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_setenvif: Add SetEnvIfExpr directive to set env var depending on
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync expression. [Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_proxy: Fix ProxyPassInterpolateEnv directive. PR 50292.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync [Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) suEXEC: Add Suexec directive to disable suEXEC without renaming the
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync binary (Suexec Off), or force startup failure if suEXEC is required
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync but not supported (Suexec On). Change SuexecUserGroup to fail
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync startup instead of just printing a warning if suEXEC is disabled.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync [Jeff Trawick]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) core: Add Error directive for aborting startup or htaccess processing
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync with a specified error message. [Jeff Trawick]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_rewrite: Fix the RewriteEngine directive to work within a
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync location. Previously, once RewriteEngine was switched on globally,
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync it was impossible to switch off. [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) core, mod_include, mod_ssl: Move the expression parser derived from
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync mod_include back into mod_include. Replace ap_expr with a parser
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync derived from mod_ssl's parser. Make mod_ssl use the new parser. Rework
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync ap_expr's public interface and provide hooks for modules to add variables
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync and functions. [Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) core: Do the hook sorting earlier so that the hooks are properly sorted
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync for the pre_config hook and during parsing the config. [Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) core: In the absence of any AllowOverride directives, the default is now
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync "None" instead of "All". PR49823 [Eric Covener]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_proxy: Don't allow ProxyPass or ProxyPassReverse in
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync <Directory> or <Files>. PR47765 [Eric Covener]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) prefork/worker/event MPMS: default value (when no directive is present)
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync of MaxConnectionsPerChild/MaxRequestsPerChild is changed to 0 from 10000
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync to match default configuration and manual. PR47782 [Eric Covener]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) proxy_connect: Don't give up in the middle of a CONNECT tunnel
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync when the child process is starting to exit. PR50220. [Eric Covener]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_autoindex: Fix inheritance of mod_autoindex directives into
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync contexts that don't have any mod_autoindex directives. PR47766.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync [Eric Covener]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_rewrite: Add END flag for RewriteRule to prevent further rounds
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync of rewrite processing when a per-directory substitution occurs.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync [Eric Covener]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_ssl: Make sure to always log an error if loading of CA certificates
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync fails. PR 40312. [Paul Tiemann <issues apache org ourdetour com>]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_dav: Send 501 error if unknown Content-* header is received for a PUT
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync request (RFC 2616 9.6). PR 42978. [Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_dav: Send 400 error if malformed Content-Range header is received for
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync a put request (RFC 2616 14.16). PR 49825. [Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_proxy: Release the backend connection as soon as EOS is detected,
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync so the backend isn't forced to wait for the client to eventually
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync acknowledge the data. [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_proxy: Optimise ProxyPass within a Location so that it is stored
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync per-directory, and chosen during the location walk. Make ProxyPass
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync work correctly from within a LocationMatch. [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) core: Fix segfault if per-module LogLevel is on virtual host
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync scope. PR 50117. [Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_proxy: Move the ProxyErrorOverride directive to have per
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync directory scope. [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_allowmethods: New module to deny certain HTTP methods without
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync interfering with authentication/authorization. [Paul Querna,
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync Igor Galić, Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_ssl: Log certificate information and improve error message if client
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync cert verification fails. PR 50093, PR 50094. [Lassi Tuura <lat cern ch>,
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) htcacheclean: Teach htcacheclean to limit cache size by number of
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync inodes in addition to size of files. Prevents a cache disk from
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync running out of space when many small files are cached.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) core: Rename MaxRequestsPerChild to MaxConnectionsPerChild, which
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync describes more accurately what the directive does. The old name
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync still works but logs a warning. [Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_cache: Optionally serve stale data when a revalidation returns a
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync 5xx response, controlled by the CacheStaleOnError directive.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) htcacheclean: Allow the listing of valid URLs within the cache, with
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync the option to list entry metadata such as sizes and times. [Graham
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_cache: correctly parse quoted strings in cache headers.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync PR 50199 [Nick Kew]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_cache: Allow control over the base URL of reverse proxied requests
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync using the CacheKeyBaseURL directive, so that the cache key can be
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync calculated from the endpoint URL instead of the server URL. [Graham
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_cache: CacheLastModifiedFactor, CacheStoreNoStore, CacheStorePrivate,
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync CacheStoreExpired, CacheIgnoreNoLastMod, CacheDefaultExpire,
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync CacheMinExpire and CacheMaxExpire can be set per directory/location.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_disk_cache: CacheMaxFileSize, CacheMinFileSize, CacheReadSize and
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync CacheReadTime can be set per directory/location. [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) core: Speed up config parsing if using a very large number of config
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync files. PR 50002 [andrew cloudaccess net]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_cache: Support the caching of HEAD requests. [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) htcacheclean: Allow the option to round up file sizes to a given
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync block size, improving the accuracy of disk usage. [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_ssl: Add authz providers for use with mod_authz_core and its
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync RequireAny/RequireAll containers: 'ssl' (equivalent to SSLRequireSSL),
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync 'ssl-verify-client' (for use with 'SSLVerifyClient optional'), and
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync 'ssl-require' (expressions with same syntax as SSLRequire).
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync [Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_ssl: Make the ssl expression parser thread-safe. It now requires
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync bison instead of yacc. [Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_disk_cache: Change on-disk header file format to support the
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync link of the device/inode of the data file to the matching header
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync file, and to support the option of not writing a data file when
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync the data file is empty. [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) core/mod_unique_id: Add generate_log_id hook to allow to use
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync the ID generated by mod_unique_id as error log ID for requests.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync [Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_cache: Make sure that we never allow a 304 Not Modified response
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync that we asked for to leak to the client should the 304 response be
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync uncacheable. PR45341 [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_cache: Add the cache_status hook to register the final cache
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync decision hit/miss/revalidate. Add optional support for an X-Cache
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync and/or an X-Cache-Detail header to add the cache status to the
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync response. PR48241 [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_authz_host: Add 'local' provider that matches connections originating
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync on the local host. PR 19938. [Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) Event MPM: Fix crash accessing pollset on worker thread when child
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync process is exiting. [Jeff Trawick]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) core: For process invocation (cgi, fcgid, piped loggers and so forth)
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync pass the system library path (LD_LIBRARY_PATH or platform-specific
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync variables) along with the system PATH, by default. Both should be
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync overridden together as desired using PassEnv etc; see mod_env.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync [William Rowe]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_cache: Introduce CacheStoreExpired, to allow administrators to
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync capture a stale backend response, perform If-Modified-Since requests
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync against the backend, and serving from the cache all 304 responses.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync This restores pre-2.2.4 cache behavior. [William Rowe]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_rewrite: Introduce <=, >= string comparison operators, and integer
43ec799dbc8971afca055dd7f8fd479b7b72f338vboxsync comparators -lt, -le, -eq, -ge, and -gt. To help bash users and drop
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync the ambiguity of the symlink test "-ltest", introduce -h or -L as
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync symlink test operators. [William Rowe]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_cache: Give the cache provider the opportunity to choose to cache
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync or not cache based on the buckets present in the brigade, such as the
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync presence of a FILE bucket.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_authz_core: Allow authz providers to check args while reading the
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync config and allow to cache parsed args. Move 'all' and 'env' authz
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync providers from mod_authz_host to mod_authz_core. Add 'method' authz
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync provider depending on the HTTP method. [Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_include: Move the request_rec within mod_include to be
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync exposed within include_ctx_t. [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_include: Reinstate support for UTF-8 character sets by allowing a
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync variable being echoed or set to be decoded and then encoded as separate
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync steps. PR47686 [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_cache: Add a discrete commit_entity() provider function within the
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync mod_cache provider interface which is called to indicate to the
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync provider that caching is complete, giving the provider the opportunity
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync to commit temporary files permanently to the cache in an atomic
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync fashion. Replace the inconsistent use of error cleanups with a formal
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync set of pool cleanups attached to a subpool, which is destroyed on error.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_cache: Change the signature of the store_body() provider function
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync within the mod_cache provider interface to support an "in" brigade
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync and an "out" brigade instead of just a single input brigade. This
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync gives a cache provider the option to consume only part of the brigade
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync passed to it, rather than the whole brigade as was required before.
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync This fixes an out of memory and a request timeout condition that would
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync occur when the original document was a large file. Introduce
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync CacheReadSize and CacheReadTime directives to mod_disk_cache to control
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync the amount of data to attempt to cache at a time. [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) core: Add ErrorLogFormat to allow configuring error log format, including
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync additional information that is logged once per connection or request. Add
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync error log IDs for connections and request to allow correlating error log
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync lines and the corresponding access log entry. [Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) core: Disable sendfile by default. [Stefan Fritsch]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_cache: Check the request to determine whether we are allowed
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync to return cached content at all, and respect a "Cache-Control:
7cd80e06bc5ef884a25b341861ded29e18c5112evboxsync no-cache" header from a client. Previously, "no-cache" would
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync behave like "max-age=0". [Graham Leggett]
0f5a2d28e3dd2fda96e1cefa8429502629344652vboxsync *) mod_cache: Use a proper filter context to hold filter data instead
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync of misusing the per-request configuration. Fixes a segfault on trunk
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync when the normal handler is used. [Graham Leggett]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_cgid: Log a warning if the ScriptSock path is truncated because
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync it is too long. PR 49388. [Stefan Fritsch]
bd513a3eb96be356f9178227f7f44b7cdf910d18vboxsync *) vhosts: Do not allow _default_ in NameVirtualHost, or mixing *
bd513a3eb96be356f9178227f7f44b7cdf910d18vboxsync and non-* ports on NameVirtualHost, or multiple NameVirtualHost
bd513a3eb96be356f9178227f7f44b7cdf910d18vboxsync directives for the same address:port, or NameVirtualHost
bd513a3eb96be356f9178227f7f44b7cdf910d18vboxsync directives with no matching VirtualHosts, or multiple ip-based
bd513a3eb96be356f9178227f7f44b7cdf910d18vboxsync VirtualHost sections for the same address:port. These were
bd513a3eb96be356f9178227f7f44b7cdf910d18vboxsync previously accepted with a warning, but the behavior was
bd513a3eb96be356f9178227f7f44b7cdf910d18vboxsync undefined. [Dan Poirier]
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync *) mod_remoteip: Fix a segfault when using mod_remoteip in conjunction with
e0e0c19eefceaf5d4ec40f9466b58a771f50e799vboxsync Allow/Deny. PR 49838. [Andrew Skalski <voltara gmail.com>]
<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: