CHANGES revision 65f6e321663b3fd0f93d8b47b4df05f189de6cf1
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner -*- coding: utf-8 -*-
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
43b4c41fbb07705c9df321221ab9cb9832460407Christian MaederChanges with Apache 2.3.15
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) configure: Enable ldap modules in 'all' and 'most' selections if ldap
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner is compiled into apr-util. [Stefan Fritsch]
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) core: Add ap_check_cmd_context()-check if a command is executed in
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder .htaccess file. [Stefan Fritsch]
d23ecf32e56cce69bc42eb5c96dddf7909c623abjelmd
d23ecf32e56cce69bc42eb5c96dddf7909c623abjelmd *) mod_deflate: Fix endless loop if first bucket is metadata. PR 51590.
d23ecf32e56cce69bc42eb5c96dddf7909c623abjelmd [Torsten Foertsch <torsten foertsch gmx net>]
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder
a84a8d508a0778b13a4d097a6dd34b95feae78acJens ElknerChanges with Apache 2.3.14
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_proxy_ajp: Improve trace logging. [Rainer Jung]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
7d0ee72ee91ec305408688b969c43f07b9667c80Christian Maeder *) mod_proxy_ajp: Respect "reuse" flag in END_REPONSE packets.
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder [Rainer Jung]
0e5b095a19790411e5352fa7cf57cb0388e70472Christian Maeder
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_proxy: enable absolute URLs to be rewritten with ProxyPassReverse,
d23ecf32e56cce69bc42eb5c96dddf7909c623abjelmd e.g. to reverse proxy "Location: https://other-internal-server/login"
c9a7e6af169a2adfb92f42331cd578065ed83a2bChristian Maeder [Nick Kew]
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder *) prefork, worker, event: Make sure crashes are logged to the error log if
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner httpd has already detached from the console. [Stefan Fritsch]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) prefork, worker, event: Reduce period during startup/restart where a
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner successive signal may be lost. PR 43696. [Arun Bhalla <arun shme net>]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_allowmethods: Correct Merging of "reset" and do not allow an
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner empty parameter list for the AllowMethods directive. [Rainer Jung]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) configure: Update selection of modules for 'all' and 'most'. 'all' will
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner now enable all modules except for example and test modules. Make the
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner selection for 'most' more useful (including ssl and proxy). Both 'all'
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner and 'most' will now disable modules if dependencies are missing instead
f8597aabc9db75dcf504e3151faf220a165c90d1Eugen Kuksa of aborting. If a specific module is requested with --enable-XXX=yes,
f8597aabc9db75dcf504e3151faf220a165c90d1Eugen Kuksa missing dependencies will still cause configure to exit with an error.
f8597aabc9db75dcf504e3151faf220a165c90d1Eugen Kuksa [Stefan Fritsch]
f8597aabc9db75dcf504e3151faf220a165c90d1Eugen Kuksa
ab4256496e72886018b78571057331f373da6883Eugen Kuksa *) mod_ldap: Revert the integration of apr-ldap as ap_ldap which was done
f8597aabc9db75dcf504e3151faf220a165c90d1Eugen Kuksa in 2.3.13. [Stefan Fritsch]
f8597aabc9db75dcf504e3151faf220a165c90d1Eugen Kuksa
f8597aabc9db75dcf504e3151faf220a165c90d1Eugen Kuksa *) core: For '*' or '_default_' vhosts, use a wildcard address of any
a389e88e0acb83d8489bdc5e55bc5522b152bbecEugen Kuksa address family, rather than IPv4 only. [Joe Orton]
a389e88e0acb83d8489bdc5e55bc5522b152bbecEugen Kuksa
f8597aabc9db75dcf504e3151faf220a165c90d1Eugen Kuksa *) core, mod_rewrite, mod_ssl, mod_nw_ssl: Make the SERVER_NAME variable
f8597aabc9db75dcf504e3151faf220a165c90d1Eugen Kuksa include [ ] for literal IPv6 addresses, as mandated by RFC 3875.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner PR 26005. [Stefan Fritsch]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_negotiation: Fix parsing of Content-Length in type maps. PR 42203.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Nagae Hidetake <nagae eagan jp>]
60e6795dd310e10194e12bb660575aadf941328bEugen Kuksa
60e6795dd310e10194e12bb660575aadf941328bEugen Kuksa *) core: Add more logging to ap_scan_script_header_err* functions. Add
60e6795dd310e10194e12bb660575aadf941328bEugen Kuksa ap_scan_script_header_err*_ex functions that take a module index for
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner logging.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner mod_cgi, mod_cgid, mod_proxy_fcgi, mod_proxy_scgi, mod_isapi: Use the
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner new functions in order to make logging configurable per-module.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Stefan Fritsch]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_dir: Add DirectoryIndexRedirect to send an external redirect to
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner the proper index. [Eric Covener]
60e6795dd310e10194e12bb660575aadf941328bEugen Kuksa
c9a7e6af169a2adfb92f42331cd578065ed83a2bChristian Maeder *) mod_deflate: Don't try to compress requests with a zero sized body.
e7757995211bd395dc79d26fe017d99375f7d2a6Christian Maeder PR 51350. [Stefan Fritsch]
e7757995211bd395dc79d26fe017d99375f7d2a6Christian Maeder
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder *) core: Fix startup on IP6-only systems. PR 50592. [Joe Orton,
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder <root linkage white-void net>]
c0c2380bced8159ff0297ece14eba948bd236471Christian Maeder
404166b9366552e9ec5abb87a37c76ec8a815fb7Klaus Luettich *) suexec: Add environment variables CONTEXT_DOCUMENT_ROOT, CONTEXT_PREFIX,
b1f59a4ea7c96f4c03a4d7cfcb9c5e66871cfbbbChristian Maeder REDIRECT_ERROR_NOTES, REDIRECT_SCRIPT_FILENAME, REQUEST_SCHEME to the
ad270004874ce1d0697fb30d7309f180553bb315Christian Maeder whitelist in suexec. PR 51499. [Graham Laverty <graham reg ca>,
404166b9366552e9ec5abb87a37c76ec8a815fb7Klaus Luettich Stefan Fritsch]
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder *) mod_rewrite: Fix regexp RewriteCond with NoCase. [Stefan Fritsch]
1a38107941725211e7c3f051f7a8f5e12199f03acmaeder
ce5b44277ea06257548ff625e928cb1290c6d297cmaeder *) mod_log_debug: New module that allows to log custom messages at various
bab2d88d650448628730ed3b65c9f99c52500e8cChristian Maeder phases in the request processing. [Stefan Fritsch]
fa8878c6145f652f615a04a5e9c15a1d1327bc92cmaeder
ce5b44277ea06257548ff625e928cb1290c6d297cmaeder *) mod_ssl: Add some debug logging when loading server certificates.
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder PR 37912. [Nick Burch <nick burch alfresco com>]
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder *) configure: Support reallyall option also for --enable-mods-static.
3dde4051c307b609159a097f08a05108fdd036efJonathan von Schroeder [Rainer Jung]
3dde4051c307b609159a097f08a05108fdd036efJonathan von Schroeder
3dde4051c307b609159a097f08a05108fdd036efJonathan von Schroeder *) mod_socache_dc: add --with-distcache to configure for choosing
3dde4051c307b609159a097f08a05108fdd036efJonathan von Schroeder the distcache installation directory. [Rainer Jung]
3dde4051c307b609159a097f08a05108fdd036efJonathan von Schroeder
3dde4051c307b609159a097f08a05108fdd036efJonathan von Schroeder *) mod_socache_dc: use correct build variable MOD_SOCACHE_DC_LDADD
3dde4051c307b609159a097f08a05108fdd036efJonathan von Schroeder instead of MOD_SOCACHE_LDADD in build macro. [Rainer Jung]
3dde4051c307b609159a097f08a05108fdd036efJonathan von Schroeder
3dde4051c307b609159a097f08a05108fdd036efJonathan von Schroeder *) mod_lua, mod_deflate: respect platform specific runpath linker
3dde4051c307b609159a097f08a05108fdd036efJonathan von Schroeder flag. [Rainer Jung]
3dde4051c307b609159a097f08a05108fdd036efJonathan von Schroeder
825a1e4ca1e768de4b4883c65a6cb1dce6aa0002Christian Maeder *) configure: Only link the httpd binary against PCRE. No other support
3dde4051c307b609159a097f08a05108fdd036efJonathan von Schroeder binary needs PCRE. [Rainer Jung]
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder *) configure: tolerate dependency checking failures for modules if
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder they have been enabled implicitely. [Rainer Jung]
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder *) configure: Allow to specify module specific custom linker flags via
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder the MOD_XXX_LDADD variables. [Rainer Jung]
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder
4b4a0b61b72cf8478a5d4d5002bca9f699401363Christian MaederChanges with Apache 2.3.13
4b4a0b61b72cf8478a5d4d5002bca9f699401363Christian Maeder
308834907a120fd8771e18292ed2ca9cd767c12dChristian Maeder *) ab: Support specifying the local address to use. PR 48930.
bab2d88d650448628730ed3b65c9f99c52500e8cChristian Maeder [Peter Schuller <scode spotify com>]
7bb0a9e92bc7a6f868eaa0b9c3212c0af4f96b7fEugen Kuksa
8cacad2a09782249243b80985f28e9387019fe40Christian Maeder *) core: Add support to ErrorLogFormat for logging the system unique
6a2dad705deefd1b7a7e09b84fd2d75f2213be47Christian Maeder thread id under Linux. [Stefan Fritsch]
a7c27282e71cf4505026645f96d4f5cb8a284e32Christian Maeder
363939beade943a02b31004cea09dec34fa8a6d9Christian Maeder *) event: New AsyncRequestWorkerFactor directive to influence how many
014dc30f64ec25e4790cca987d4d1e6635430510Christian Maeder connections will be accepted per process. [Stefan Fritsch]
f04e8f3ff56405901be968fd4c6e9769239f1a9bKlaus Luettich
6aea82c63ba1d2efc0329bc784a14e521469ec20Christian Maeder *) prefork, worker, event: Rename MaxClients to MaxRequestWorkers which
4ba08bfca0cc8d9da65397b8dfd2654fdb4c0e62Christian Maeder describes more accurately what it does. [Stefan Fritsch]
feca1d35123d8c31aee238c9ce79947b0bf65494Christian Maeder
431d34c7007a787331c4e5ec997badb0f8190fc7Christian Maeder *) rotatelogs: Add -p argument to specify custom program to invoke
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder after a log rotation. PR 51285. [Sven Ulland <sveniu ifi.uio.no>,
f5c0884429b01e74c6e658ded921fb2e16dfb478Christian Maeder Joe Orton]
db675e8302ddb0d6528088ce68f5e98a00e890e3Christian Maeder
f1541d4a151dbd08002dbd14e7eb1d5dde253689Christian Maeder *) mod_ssl: Don't do OCSP checks for valid self-issued certs. [Kaspar Brand]
6dc9bc98d0854fe2e3dd3bfc4275096a0c28ee1cChristian Maeder
6dc9bc98d0854fe2e3dd3bfc4275096a0c28ee1cChristian Maeder *) mod_ssl: Avoid unnecessary renegotiations with SSLVerifyDepth 0.
6dc9bc98d0854fe2e3dd3bfc4275096a0c28ee1cChristian Maeder PR 48215. [Kaspar Brand]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) mod_status: Display information about asynchronous connections in the
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner server-status. PR 44377. [Stefan Fritsch]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder *) mpm_event: If the number of connections of a process is very high, or if
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder all workers are busy, don't accept new connections in that process.
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder [Stefan Fritsch]
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder *) mpm_event: Process lingering close asynchronously instead of tying up
9e748851c150e1022fb952bab3315e869aaf0214Christian Maeder worker threads. [Jeff Trawick, Stefan Fritsch]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) mpm_event: If MaxMemFree is set, limit the number of pools that is kept
ca074a78b8dcccbb8c419586787882f98d0c6163Christian Maeder around. [Stefan Fritsch]
a3c6d8e0670bf2aa71bc8e2a3b1f45d56dd65e4cChristian Maeder
dc679edd4ca027663212afdf00926ae2ce19b555Christian Maeder *) mpm_event: Fix graceful restart aborting connections. PR 43359.
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder [Takashi Sato <takashi lans-tv com>]
a2d6702f18737cc5fff8e8631c08f221f8375c4bChristian Maeder
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder *) mod_ssl: Disable AECDH ciphers in example config. PR 51363.
fdb2d618144159395f7bf8ce3327b3c112a17dd3Till Mossakowski [Rob Stradling <rob comodo com>]
c72c1e75a969ff4c336e77481c2a8e42603f13eeChristian Maeder
c72c1e75a969ff4c336e77481c2a8e42603f13eeChristian Maeder *) core: Introduce new function ap_get_conn_socket() to access the socket of
4017ebc0f692820736d796af3110c3b3018c108aChristian Maeder a connection. [Stefan Fritsch]
ca074a78b8dcccbb8c419586787882f98d0c6163Christian Maeder
ca074a78b8dcccbb8c419586787882f98d0c6163Christian Maeder *) mod_data: Introduce a filter to support RFC2397 data URLs. [Graham
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder Leggett]
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder *) mod_userdir/mod_alias/mod_vhost_alias: Correctly set DOCUMENT_ROOT,
f2f9df2e17e70674f0bf426ed1763c973ee4cde0Christian Maeder CONTEXT_DOCUMENT_ROOT, CONTEXT_PREFIX. PR 26052. PR 46198.
d946c1bfdd7d58aa7c023efe864d5999eb44a61bChristian Maeder [Stefan Fritsch]
d946c1bfdd7d58aa7c023efe864d5999eb44a61bChristian Maeder
d946c1bfdd7d58aa7c023efe864d5999eb44a61bChristian Maeder *) core: Allow to override document_root on a per-request basis. Introduce
d946c1bfdd7d58aa7c023efe864d5999eb44a61bChristian Maeder new context_document_root and context_prefix which provide information
d946c1bfdd7d58aa7c023efe864d5999eb44a61bChristian Maeder about non-global URI-to-directory mappings (from e.g. mod_userdir or
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner mod_alias) to scripts. PR 49705. [Stefan Fritsch]
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder *) core: Add <ElseIf> and <Else> to complement <If> sections.
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder [Stefan Fritsch]
ca074a78b8dcccbb8c419586787882f98d0c6163Christian Maeder
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) mod_ext_filter: Remove DebugLevel option in favor of per-module loglevel.
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder [Stefan Fritsch]
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder
ca074a78b8dcccbb8c419586787882f98d0c6163Christian Maeder *) mod_include: Make the "#if expr" element use the new "ap_expr" expression
ca074a78b8dcccbb8c419586787882f98d0c6163Christian Maeder parser. The old parser can still be used by setting the new directive
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder SSILegacyExprParser. [Stefan Fritsch]
8037b7d21021a94b69e4a092f5c98e491333d939cmaeder
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) core: Add some features to ap_expr for use by mod_include: a restricted
f1541d4a151dbd08002dbd14e7eb1d5dde253689Christian Maeder mode that does not allow to bypass request access restrictions; new
6dc9bc98d0854fe2e3dd3bfc4275096a0c28ee1cChristian Maeder variables DOCUMENT_URI (alias for REQUEST_URI), LAST_MODIFIED; -A as an
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner alias for -U; an additional data entry in ap_expr_eval_ctx_t for use by
e6d5dbbc3308f05197868806e0b860f4f53875f1Christian Maeder the consumer; an extensible ap_expr_exec_ctx() API that allows to use that
363939beade943a02b31004cea09dec34fa8a6d9Christian Maeder data entry. [Stefan Fritsch]
e4f4d096e5e6d60dd91c746d0e833d0ac7a29c50Christian Maeder
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) mod_include: Merge directory configs instead of one SSI* config directive
61fa0ac06ede811c7aad54ec4c4202346727368eChristian Maeder causing all other per-directory SSI* config directives to be reset.
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner [Stefan Fritsch]
f1541d4a151dbd08002dbd14e7eb1d5dde253689Christian Maeder
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) mod_charset_lite: Remove DebugLevel option in favour of per-module
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder loglevel. [Stefan Fritsch]
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder *) core: Add ap_regexec_len() function that works with non-null-terminated
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder strings. PR 51231. [Yehezkel Horowitz <horowity checkpoint com>]
93f5b72fdb9ee734caa750b43dd79bbb590dcd73Christian Maeder
81f49ee02aaa3bc870401f8883bf52742eb3ea7aJonathan von Schroeder *) mod_authnz_ldap: If the LDAP server returns constraint violation,
93f5b72fdb9ee734caa750b43dd79bbb590dcd73Christian Maeder don't treat this as an error but as "auth denied". [Stefan Fritsch]
93f5b72fdb9ee734caa750b43dd79bbb590dcd73Christian Maeder
328a85c807f2a95c3f147d10b05927eaf862ebebChristian Maeder *) mod_proxy_fcgi|scgi: Add support for "best guess" of PATH_INFO
8fb127028cb7dd361e348a3252e33487f73428bcJonathan von Schroeder for SCGI/FCGI. PR 50880, 50851. [Mark Montague <mark catseye.org>,
06dd4e7c29f33f6122a910719e3bd9062256e397Andy Gimblett Jim Jagielski]
254df6f22d01eacf7c57b85729e0445747b630d9Christian Maeder
4ba08bfca0cc8d9da65397b8dfd2654fdb4c0e62Christian Maeder *) mod_cache: When content is served stale, and there is no means to
bff4b3f816be4c1e1d8ded76f1d5af786839e1a9Christian Maeder revalidate the content using ETag or Last-Modified, and we have
7bb0a9e92bc7a6f868eaa0b9c3212c0af4f96b7fEugen Kuksa mandated no stale-on-error behaviour, stand down and don't cache.
5b818f10e11fc79def1fdd5c8a080d64a6438d87Christian Maeder Saves a cache write that will never be read.
8b0f493ae42bad8b94918cc0957f1af57096cda4Felix Reckers [Graham Leggett]
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder
819e29dba060687cf391e444e0f6ff88c1908cc3Christian Maeder *) mod_reqtimeout: Fix a timed out connection going into the keep-alive
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder state after a timeout when discarding a request body. PR 51103.
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder [Stefan Fritsch]
140287998aa8592c9c403bd9e308e447ba92ae11Christian Maeder
c208973c890b8f993297720fd0247bc7481d4304Christian Maeder *) core: Add various file existance test operators to ap_expr.
0d0278c34a374b29c2d6c58b39b8b56e283d48e8Christian Maeder [Stefan Fritsch]
aded505f9b42cc38975559c2a5d175ae95de436bChristian Maeder
3554301a34639efb6c9961a8571775d0061284c9Christian Maeder *) mod_proxy_express: New mass reverse-proxy switch extension for
8b0f493ae42bad8b94918cc0957f1af57096cda4Felix Reckers mod_proxy. [Jim Jagielski]
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder
9e748851c150e1022fb952bab3315e869aaf0214Christian Maeder *) configure: Fix script error when configuring module set "reallyall".
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder [Rainer Jung]
61fa0ac06ede811c7aad54ec4c4202346727368eChristian Maeder
456238178f89e5a3de2988ee6c8af924297d52d9Christian MaederChanges with Apache 2.3.12
383aa66e5142365fe9b1f88b18c1da5b27cc8c04Christian Maeder
383aa66e5142365fe9b1f88b18c1da5b27cc8c04Christian Maeder *) configure, core: Provide easier support for APR's hook probe
383aa66e5142365fe9b1f88b18c1da5b27cc8c04Christian Maeder capability. [Jim Jagielski, Jeff Trawick]
3554301a34639efb6c9961a8571775d0061284c9Christian Maeder
3554301a34639efb6c9961a8571775d0061284c9Christian Maeder *) Silence autoconf 2.68 warnings. [Rainer Jung]
3554301a34639efb6c9961a8571775d0061284c9Christian Maeder
383aa66e5142365fe9b1f88b18c1da5b27cc8c04Christian Maeder *) mod_authnz_ldap: Resolve crash when LDAP is used for authorization only
aded505f9b42cc38975559c2a5d175ae95de436bChristian Maeder [Scott Hill <shill genscape.com>]
aded505f9b42cc38975559c2a5d175ae95de436bChristian Maeder
aded505f9b42cc38975559c2a5d175ae95de436bChristian Maeder *) support: Make sure check_forensic works with mod_unique_id loaded
aded505f9b42cc38975559c2a5d175ae95de436bChristian Maeder [Joe Schaefer]
aded505f9b42cc38975559c2a5d175ae95de436bChristian Maeder
aded505f9b42cc38975559c2a5d175ae95de436bChristian Maeder *) Add child_status hook for tracking creation/termination of MPM child
383aa66e5142365fe9b1f88b18c1da5b27cc8c04Christian Maeder processes. Add end_generation hook for notification when the last
383aa66e5142365fe9b1f88b18c1da5b27cc8c04Christian Maeder MPM child of a generation exits. [Jeff Trawick]
a14767aeac3e78ed100f5b75e210ba563ee10dbaChristian Maeder
a14767aeac3e78ed100f5b75e210ba563ee10dbaChristian Maeder *) mod_ldap: Make LDAPSharedCacheSize 0 create a non-shared-memory cache per
a14767aeac3e78ed100f5b75e210ba563ee10dbaChristian Maeder process as opposed to disabling caching completely. This allows to use
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder the non-shared-memory cache as a workaround for the shared memory cache
3554301a34639efb6c9961a8571775d0061284c9Christian Maeder not being available during graceful restarts. PR 48958. [Stefan Fritsch]
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder
54ea981a0503c396c2923a1c06421c6235baf27fChristian Maeder *) Add new ap_reserve_module_slots/ap_reserve_module_slots_directive API,
54ea981a0503c396c2923a1c06421c6235baf27fChristian Maeder necessary if a module (like mod_perl) registers additional modules late
54ea981a0503c396c2923a1c06421c6235baf27fChristian Maeder in the startup phase. [Stefan Fritsch]
697e63e30aa3c309a1ef1f9357745111f8dfc5a9Christian Maeder
3554301a34639efb6c9961a8571775d0061284c9Christian Maeder *) core: Prevent segfault if DYNAMIC_MODULE_LIMIT is reached. PR 51072.
697e63e30aa3c309a1ef1f9357745111f8dfc5a9Christian Maeder [Torsten Förtsch <torsten foertsch gmx net>]
f9e0b18852b238ddb649d341194e05d7200d1bbeChristian Maeder
aded505f9b42cc38975559c2a5d175ae95de436bChristian Maeder *) WinNT MPM: Improve robustness under heavy load. [Jeff Trawick]
f9e0b18852b238ddb649d341194e05d7200d1bbeChristian Maeder
819e29dba060687cf391e444e0f6ff88c1908cc3Christian Maeder *) MinGW build improvements. PR 49535. [John Vandenberg
819e29dba060687cf391e444e0f6ff88c1908cc3Christian Maeder <jayvdb gmail.com>, Jeff Trawick]
819e29dba060687cf391e444e0f6ff88c1908cc3Christian Maeder
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder *) core: Support module names with colons in loglevel configuration.
254df6f22d01eacf7c57b85729e0445747b630d9Christian Maeder [Torsten Förtsch <torsten foertsch gmx net>]
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder *) mod_ssl, ab: Support OpenSSL compiled without SSLv2 support.
254df6f22d01eacf7c57b85729e0445747b630d9Christian Maeder [Stefan Fritsch]
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder *) core: Abort if the MPM is changed across restart. [Jeff Trawick]
254df6f22d01eacf7c57b85729e0445747b630d9Christian Maeder
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder *) mod_proxy_ajp: Add support for 'ProxyErrorOverride on'. PR 50945.
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder [Peter Pramberger <peter pramberger.at>, Jim Jagielski]
aded505f9b42cc38975559c2a5d175ae95de436bChristian Maeder
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder *) mod_proxy_fcgi: Add support for 'ProxyErrorOverride on'. PR 50913.
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder [Mark Montague <mark catseye.org>, Jim Jagielski]
ac34194a668399bb8ef238da77c3a09e93fb253bChristian Maeder
4fc9de0da898448f1d3597ebbd8c04a066464c21Christian Maeder *) core: Change the APIs of ap_cfg_getline() and ap_cfg_getc() to return an
aded505f9b42cc38975559c2a5d175ae95de436bChristian Maeder error code. Abort with a nice error message if a config line is too long.
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder Partial fix for PR 50824. [Stefan Fritsch]
c208973c890b8f993297720fd0247bc7481d4304Christian Maeder
c208973c890b8f993297720fd0247bc7481d4304Christian Maeder *) mod_info: Dump config to stdout during startup if -DDUMP_CONFIG is
c208973c890b8f993297720fd0247bc7481d4304Christian Maeder specified. PR 31956. [Stefan Fritsch]
0d0278c34a374b29c2d6c58b39b8b56e283d48e8Christian Maeder
0d0278c34a374b29c2d6c58b39b8b56e283d48e8Christian Maeder *) Restore visibility of DEFAULT_PIDLOG to core and modules. MPM
0d0278c34a374b29c2d6c58b39b8b56e283d48e8Christian Maeder helper function ap_remove_pid() added. [Jeff Trawick]
1842453990fed8a1bd7a5ac792d7982c1d2bfcd5Christian Maeder
0d0278c34a374b29c2d6c58b39b8b56e283d48e8Christian Maeder *) Enable DEFAULT_REL_RUNTIMEDIR on Windows and NetWare. [various]
1842453990fed8a1bd7a5ac792d7982c1d2bfcd5Christian Maeder
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder *) Correct C++ incompatibility with http_log.h. [Stefan Fritsch, Jeff
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder Trawick]
986d3f255182539098a97ac86da9eeee5b7a72e3Christian Maeder
61fa0ac06ede811c7aad54ec4c4202346727368eChristian Maeder *) mod_log_config: Prevent segfault. PR 50861. [Torsten Förtsch
4561227a776bdf0ab679b19fb92f1eaaed8786f7Christian Maeder <torsten.foertsch gmx.net>]
01e278bdd7dce13b9303ed3d79683d83c89d09f9Liam O'Reilly
61fa0ac06ede811c7aad54ec4c4202346727368eChristian Maeder *) core: AllowEncodedSlashes new option NoDecode to allow encoded slashes
5ad5dffe06818a13e1632b1119fbca7881085fc1Dominik Luecke in request URL path info but not decode them. Change behavior of option
8c812cd83569e973f10cf69a342424ceabc07af9Christian Maeder "On" to decode the encoded slashes as 2.0 and 2.2 do. PR 35256,
8c812cd83569e973f10cf69a342424ceabc07af9Christian Maeder PR 46830. [Dan Poirier]
8c812cd83569e973f10cf69a342424ceabc07af9Christian Maeder
1535e1d8c82db5f7e2402261983c4c2ef39f4f39Mihai Codescu *) mod_ssl: Check SNI hostname against Host header case-insensitively.
31d6d9286988dc31639d105841296759aeb743e0Jonathan von Schroeder PR 49491. [Mayank Agrawal <magrawal.08 gmail.com>]
1535e1d8c82db5f7e2402261983c4c2ef39f4f39Mihai Codescu
7a3fe82695aa32657693e05712f84d7f81672f2eJonathan von Schroeder *) mod_ldap: Add LDAPConnectionPoolTTL to give control over lifetime
7a3fe82695aa32657693e05712f84d7f81672f2eJonathan von Schroeder of bound backend LDAP connections. PR47634 [Eric Covener]
7a3fe82695aa32657693e05712f84d7f81672f2eJonathan von Schroeder
7a3fe82695aa32657693e05712f84d7f81672f2eJonathan von Schroeder *) mod_cache: Make CacheEnable and CacheDisable configurable per
05a206508bc898f87fe6ab6e069814df3c29d303Dominik Luecke directory in addition to per server, making them work from within
05a206508bc898f87fe6ab6e069814df3c29d303Dominik Luecke a LocationMatch. [Graham Leggett]
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder
81f49ee02aaa3bc870401f8883bf52742eb3ea7aJonathan von Schroeder *) worker, event, prefork: Correct several issues when built as
81f49ee02aaa3bc870401f8883bf52742eb3ea7aJonathan von Schroeder DSOs; most notably, the scoreboard was reinitialized during graceful
81f49ee02aaa3bc870401f8883bf52742eb3ea7aJonathan von Schroeder restart, such that processes of the previous generation were not
d54cd08a4cfa26256c38d8ed12c343adbfe1a0e3Christian Maeder observable. [Jeff Trawick]
d54cd08a4cfa26256c38d8ed12c343adbfe1a0e3Christian Maeder
d54cd08a4cfa26256c38d8ed12c343adbfe1a0e3Christian MaederChanges with Apache 2.3.11
3b06e23643a9f65390cb8c1caabe83fa7e87a708Till Mossakowski
b1f59a4ea7c96f4c03a4d7cfcb9c5e66871cfbbbChristian Maeder *) mod_win32: Added shebang check for '! so that .vbs scripts work as CGI.
63f0e65a37b95621334db9ee4ba0cd9d826f5c0fChristian Maeder Win32's cscript interpreter can only use a single quote as comment char.
8c812cd83569e973f10cf69a342424ceabc07af9Christian Maeder [Guenter Knauf]
0b349288edfa50fdf38fda1a14e1562d03f92574Christian Maeder
5afff1a0f62394414c33b06141175b3ab0b117a5Christian Maeder *) mod_proxy: balancer-manager now uses POST instead of GET.
5afff1a0f62394414c33b06141175b3ab0b117a5Christian Maeder [Jim Jagielski]
61fa0ac06ede811c7aad54ec4c4202346727368eChristian Maeder
1b3a2f98d1cd01fc9e0591f69507e20526727559Dominik Luecke *) core: new util function: ap_parse_form_data(). Previously,
f04e8f3ff56405901be968fd4c6e9769239f1a9bKlaus Luettich this capability was tucked away in mod_request. [Jim Jagielski]
e39a1626bee36d6ad13a2c0014a80ef179a65bcbChristian Maeder
f8e1a1eca871a26a535a4ee7d51902ba94b1db1eChristian Maeder *) core: new hook: ap_run_pre_read_request. [Jim Jagielski]
ea3bff3e547a1ac714d4db39c5efef95e02b2e7dChristian Maeder
dd6f22b9dcff2695181b86372e4df03d5b96e92dKristina Sojakova *) mod_cache: When a request other than GET or HEAD arrives, we must
005e0f0c6b0cc898003b03801158c208f3071fc5Kristina Sojakova invalidate existing cache entities as per RFC2616 13.10. PR 15868.
abf2487c3aece95c371ea89ac64319370dcb6483Klaus Luettich [Graham Leggett]
23b4e542dca35852f58d1fb3f7d9078c1de5ab06Christian Maeder
23b4e542dca35852f58d1fb3f7d9078c1de5ab06Christian Maeder *) modules: Fix many modules that were not correctly initializing if they
23b4e542dca35852f58d1fb3f7d9078c1de5ab06Christian Maeder were not active during server startup but got enabled later during a
76b9b2974795a6fb31f242fd032de3ff66df6204Christian Maeder graceful restart. [Stefan Fritsch]
74a992bd019d3319df2f21f9d358ff06cafb5f7eMihaela Turcu
8a78868bae2ec6838c87366c35c57e109154c51eChristian Maeder *) core: Create new ap_state_query function that allows modules to determine
878a5ecd6acf973907e25e5be6e4a792ea19a05eEwaryst Schulz if the current configuration run is the initial one at server startup,
878a5ecd6acf973907e25e5be6e4a792ea19a05eEwaryst Schulz and if the server is started for testing/config dumping only.
c2e192ace9ef7cfb0e59563f1b24477b2b65cff3Dominik Dietrich [Stefan Fritsch]
6b75c206b317eb30a08d88a8f27e0295ffeb1546Christian Maeder
9a4b469ca0a7f44a598e551a973c75195207db58Eugen Kuksa *) mod_proxy: Runtime configuration of many parameters for existing
48aa0645e25883048369afc02aac3f49b14a50daChristian Maeder balancers via the balancer-manager. [Jim Jagielski]
01645eac73dbc789392674930adc5745c935f3a0Christian Maeder
01645eac73dbc789392674930adc5745c935f3a0Christian Maeder *) mod_proxy: Runtime addition of new workers (BalancerMember) for existing
bff4b3f816be4c1e1d8ded76f1d5af786839e1a9Christian Maeder balancers via the balancer-manager. [Jim Jagielski]
bff4b3f816be4c1e1d8ded76f1d5af786839e1a9Christian Maeder
3a9fce5398f4621558ca220c66c87cee59adc258Jonathan von Schroeder *) mod_cache: When a bad Expires date is present, we need to behave as if
b5da047a9a875dec3f968b6c0df96af326f90fa9Alexis Tsogias the Expires is in the past, not as if the Expires is missing. PR 16521.
0a03acf9fa28e6ff00f4d7c9c6acbae64cf09c56Ewaryst Schulz [Co-Advisor <coad@measurement-factory.com>]
0a03acf9fa28e6ff00f4d7c9c6acbae64cf09c56Ewaryst Schulz
a604cbad8e2202147b5c6bb9f2e06ae61162d654Felix Gabriel Mance *) mod_cache: We must ignore quoted-string values that appear in a
308834907a120fd8771e18292ed2ca9cd767c12dChristian Maeder Cache-Control header. PR 50199. [Graham Leggett]
80875f917d741946a39d0ec0b5721e46ba609823Till Mossakowski
7834a982096d93301a4626f444dd9ea5f9fe17eaChristian Maeder *) mod_dav: Revert change to send 501 error if unknown Content-* header is
1f9274bb2aa44ea236327814dce99946be52e348Felix Gabriel Mance received for a PUT request. PR 42978. [Stefan Fritsch]
80875f917d741946a39d0ec0b5721e46ba609823Till Mossakowski
bab2d88d650448628730ed3b65c9f99c52500e8cChristian Maeder *) mod_cache: Respect s-maxage as described by RFC2616 14.9.3, which must
8fd6a3f938496a502bc62f1923ff7c15f59acf91Christian Maeder take precedence if present. PR 35247. [Graham Leggett]
4b4a0b61b72cf8478a5d4d5002bca9f699401363Christian Maeder
d62661e54e2662d53b583ae48609f5037701078dcmaeder *) mod_ssl: Fix a possible startup failure if multiple SSL vhosts
9f226cec9f978edaba67aee4c4e04e3d3b994b87Daniel Calegari are configured with the same ServerName and private key file.
7bb0a9e92bc7a6f868eaa0b9c3212c0af4f96b7fEugen Kuksa [Masahiro Matsuya <mmatsuya redhat.com>, Joe Orton]
7bb0a9e92bc7a6f868eaa0b9c3212c0af4f96b7fEugen Kuksa
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder *) mod_socache_dc: Make module compile by fixing some typos.
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder PR 50735 [Mark Montague <mark catseye.org>]
18c1d987ce5818ecf0bfc8af3f43aed2ce86e1eaChristian Maeder
61fa0ac06ede811c7aad54ec4c4202346727368eChristian Maeder *) prefork: Update MPM state in children during a graceful stop or
05a206508bc898f87fe6ab6e069814df3c29d303Dominik Luecke restart. PR 41743. [Andrew Punch <andrew.punch 247realmedia.com>]
05a206508bc898f87fe6ab6e069814df3c29d303Dominik Luecke
05a206508bc898f87fe6ab6e069814df3c29d303Dominik Luecke *) mod_mime: Ignore leading dots when looking for mime extensions.
b891e9ad7dd358a7df24b59bf00d51515078497cChristian Maeder PR 50434 [Stefan Fritsch]
b891e9ad7dd358a7df24b59bf00d51515078497cChristian Maeder
5ad5dffe06818a13e1632b1119fbca7881085fc1Dominik Luecke *) core: Add support to set variables with the 'Define' directive. The
7a3fe82695aa32657693e05712f84d7f81672f2eJonathan von Schroeder variables that can then be used in the config using the ${VAR} syntax
7a3fe82695aa32657693e05712f84d7f81672f2eJonathan von Schroeder known from envvar interpolation. [Stefan Fritsch]
7a3fe82695aa32657693e05712f84d7f81672f2eJonathan von Schroeder
1535e1d8c82db5f7e2402261983c4c2ef39f4f39Mihai Codescu *) mod_proxy_http: make adding of X-Forwarded-* headers configurable.
1535e1d8c82db5f7e2402261983c4c2ef39f4f39Mihai Codescu ProxyAddHeaders defaults to On. [Vincent Deffontaines]
1535e1d8c82db5f7e2402261983c4c2ef39f4f39Mihai Codescu
1535e1d8c82db5f7e2402261983c4c2ef39f4f39Mihai Codescu *) mod_slotmem_shm: Increase memory alignment for slotmem data.
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder [Rainer Jung]
1c9a63e4f7c6879f51fe0f32154a9116f2c126dbChristian Maeder
6fe9628743562678acf97d6730ebcfee5e9e50c2Christian Maeder *) mod_ssl: Add config options for OCSP: SSLOCSPResponderTimeout,
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder SSLOCSPResponseMaxAge, SSLOCSPResponseTimeSkew.
b891e9ad7dd358a7df24b59bf00d51515078497cChristian Maeder [Kaspar Brand <httpd-dev.2011 velox.ch>]
61fa0ac06ede811c7aad54ec4c4202346727368eChristian Maeder
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder *) mod_ssl: Revamp output buffering to reduce network overhead for
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder output fragmented into many buckets, such as chunked HTTP responses.
fb328c4f646dd3dd78a9391c5cb58450a3dd0aa9Klaus Luettich [Joe Orton]
81f49ee02aaa3bc870401f8883bf52742eb3ea7aJonathan von Schroeder
81f49ee02aaa3bc870401f8883bf52742eb3ea7aJonathan von Schroeder *) core: Apply <If> sections to all requests, not only to file base requests.
81f49ee02aaa3bc870401f8883bf52742eb3ea7aJonathan von Schroeder Allow to use <If> inside <Directory>, <Location>, and <Files> sections.
81f49ee02aaa3bc870401f8883bf52742eb3ea7aJonathan von Schroeder The merging of <If> sections now happens after the merging of <Location>
81f49ee02aaa3bc870401f8883bf52742eb3ea7aJonathan von Schroeder sections, even if an <If> section is embedded inside a <Directory> or
81f49ee02aaa3bc870401f8883bf52742eb3ea7aJonathan von Schroeder <Files> section. [Stefan Fritsch]
b5a6fff5181dad64c4d31e8e4fbb82d4f79813d8Till Mossakowski
b5a6fff5181dad64c4d31e8e4fbb82d4f79813d8Till Mossakowski *) mod_proxy: Refactor usage of shared data by dropping the scoreboard
b5a6fff5181dad64c4d31e8e4fbb82d4f79813d8Till Mossakowski and using slotmem. Create foundation for dynamic growth/changes of
3b06e23643a9f65390cb8c1caabe83fa7e87a708Till Mossakowski members within a balancer. Remove BalancerNonce in favor of a
3b06e23643a9f65390cb8c1caabe83fa7e87a708Till Mossakowski per-balancer 'nonce' parameter. [Jim Jagielski]
3b06e23643a9f65390cb8c1caabe83fa7e87a708Till Mossakowski
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder *) mod_status: Don't show slots which are disabled by MaxClients as open.
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder PR: 47022 [Jordi Prats <jordi prats gmail com>, Stefan Fritsch]
61fa0ac06ede811c7aad54ec4c4202346727368eChristian Maeder
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder *) mpm_prefork: Fix ap_mpm_query results for AP_MPMQ_MAX_DAEMONS and
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder AP_MPMQ_MAX_THREADS.
61fa0ac06ede811c7aad54ec4c4202346727368eChristian Maeder
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder *) mod_authz_core: Fix bug in merging logic if user-based and non-user-based
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder authorization directives were mixed. [Stefan Fritsch]
8b0f493ae42bad8b94918cc0957f1af57096cda4Felix Reckers
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder *) mod_authn_socache: change directive name from AuthnCacheProvider
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder to AuthnCacheProvideFor. The term "provider" is overloaded in
e96a0bf4040fd789339958c01f145c5057d26db6René Wagner this module, and we should avoid confusion between the provider
f04e8f3ff56405901be968fd4c6e9769239f1a9bKlaus Luettich of a backend (AuthnCacheSOCache) and the authn provider(s) for
f04e8f3ff56405901be968fd4c6e9769239f1a9bKlaus Luettich which this module provides cacheing (AuthnCacheProvideFor).
abf2487c3aece95c371ea89ac64319370dcb6483Klaus Luettich [Nick Kew]
e39a1626bee36d6ad13a2c0014a80ef179a65bcbChristian Maeder
7868299829c1318b888152243ec2cea4f598b568Christian Maeder *) mod_proxy_http: Allocate the fake backend request from a child pool
e39a1626bee36d6ad13a2c0014a80ef179a65bcbChristian Maeder of the backend connection, instead of misusing the pool of the frontend
f8e1a1eca871a26a535a4ee7d51902ba94b1db1eChristian Maeder request. Fixes a thread safety issue where buckets set aside in the
5199920ca3b698b2149c8cb9d2ce2e98a280ff9dChristian Maeder backend connection leak into other threads, and then disappear when
f8e1a1eca871a26a535a4ee7d51902ba94b1db1eChristian Maeder the frontend request is cleaned up, in turn causing corrupted buckets
ea06324815fff0b73f7524f11af3672c2389f7ecChristian Maeder to make other threads spin. [Graham Leggett]
ea06324815fff0b73f7524f11af3672c2389f7ecChristian Maeder
ea06324815fff0b73f7524f11af3672c2389f7ecChristian Maeder *) mod_ssl: Change the format of the SSL_{CLIENT,SERVER}_{I,S}_DN variables
9f85afecbd79b3df5a0bb17bd28cd0b288dc3213Kristina Sojakova to be RFC 2253 compatible, convert non-ASCII characters to UTF8, and
48aa0645e25883048369afc02aac3f49b14a50daChristian Maeder escape other special characters with backslashes. The old format can
9f85afecbd79b3df5a0bb17bd28cd0b288dc3213Kristina Sojakova still be used with the LegacyDNStringFormat argument to SSLOptions.
79834070d6d3c63a098e570b12fa3405c607dc70Kristina Sojakova
79834070d6d3c63a098e570b12fa3405c607dc70Kristina Sojakova *) core, mod_rewrite: Make the REQUEST_SCHEME variable available to
79834070d6d3c63a098e570b12fa3405c607dc70Kristina Sojakova scripts and mod_rewrite. [Stefan Fritsch]
23b4e542dca35852f58d1fb3f7d9078c1de5ab06Christian Maeder
23b4e542dca35852f58d1fb3f7d9078c1de5ab06Christian Maeder *) mod_rewrite: Allow to use arbitrary boolean expressions (ap_expr) in
23b4e542dca35852f58d1fb3f7d9078c1de5ab06Christian Maeder RewriteCond. [Stefan Fritsch]
8a78868bae2ec6838c87366c35c57e109154c51eChristian Maeder
8a78868bae2ec6838c87366c35c57e109154c51eChristian Maeder *) mod_rewrite: Allow to unset environment variables using E=!VAR.
8a78868bae2ec6838c87366c35c57e109154c51eChristian Maeder PR 49512. [Mark Drayton <mark markdrayton info>, Stefan Fritsch]
624e6701e0deb7ac6c03c0cba0190fbc5033cf93Ewaryst Schulz
624e6701e0deb7ac6c03c0cba0190fbc5033cf93Ewaryst Schulz *) mod_headers: Restore the 2.3.8 and earlier default for the first
c2e192ace9ef7cfb0e59563f1b24477b2b65cff3Dominik Dietrich argument of the Header directive ("onsuccess"). [Eric Covener]
7165a916d2fa1bf87c4741ec63b253413eebbf69Karl Luc
7165a916d2fa1bf87c4741ec63b253413eebbf69Karl Luc *) core: Disallow the mixing of relative and absolute Options PR 33708.
7165a916d2fa1bf87c4741ec63b253413eebbf69Karl Luc [Sönke Tesch <st kino-fahrplan.de>]
01645eac73dbc789392674930adc5745c935f3a0Christian Maeder
01645eac73dbc789392674930adc5745c935f3a0Christian Maeder *) core: When exporting request headers to HTTP_* environment variables,
01645eac73dbc789392674930adc5745c935f3a0Christian Maeder drop variables whose names contain invalid characters. Describe in the
bff4b3f816be4c1e1d8ded76f1d5af786839e1a9Christian Maeder docs how to restore the old behaviour. [Malte S. Stretz <mss apache org>]
bff4b3f816be4c1e1d8ded76f1d5af786839e1a9Christian Maeder
bff4b3f816be4c1e1d8ded76f1d5af786839e1a9Christian Maeder *) core: When selecting an IP-based virtual host, favor an exact match for
b5da047a9a875dec3f968b6c0df96af326f90fa9Alexis Tsogias the port over a wildcard (or omitted) port instead of favoring the one
fc09e0a6af734edbd944dd8082bb51985c233b43Alexis Tsogias that came first in the configuration file. [Eric Covener]
b5da047a9a875dec3f968b6c0df96af326f90fa9Alexis Tsogias
0a03acf9fa28e6ff00f4d7c9c6acbae64cf09c56Ewaryst Schulz *) core: Overlapping virtual host address/port combinations now implicitly
0a03acf9fa28e6ff00f4d7c9c6acbae64cf09c56Ewaryst Schulz enable name-based virtual hosting for that address. The NameVirtualHost
0a03acf9fa28e6ff00f4d7c9c6acbae64cf09c56Ewaryst Schulz directive has no effect, and _default_ is interpreted the same as "*".
bab2d88d650448628730ed3b65c9f99c52500e8cChristian Maeder [Eric Covener]
18d370f8341357f5d6a4068f4bb6981173ece70fFelix Gabriel Mance
7834a982096d93301a4626f444dd9ea5f9fe17eaChristian Maeder *) core: In the absence of any Options directives, the default is now
ed1b8e97e72b2e3e92edaf2eb22a4b5373d705f1Felix Gabriel Mance "FollowSymlinks" instead of "All". [Igor Galić]
ed1b8e97e72b2e3e92edaf2eb22a4b5373d705f1Felix Gabriel Mance
0a03acf9fa28e6ff00f4d7c9c6acbae64cf09c56Ewaryst Schulz *) rotatelogs: Add -e option to write logs through to stdout for optional
4b4a0b61b72cf8478a5d4d5002bca9f699401363Christian Maeder further processing. [Graham Leggett]
fc1bf40b1196cf62c6ce5c971633b5ebfc5936efChristian Maeder
4b4a0b61b72cf8478a5d4d5002bca9f699401363Christian Maeder *) mod_ssl: Correctly read full lines in input filter when the line is
d62661e54e2662d53b583ae48609f5037701078dcmaeder incomplete during first read. PR 50481. [Ruediger Pluem]
d62661e54e2662d53b583ae48609f5037701078dcmaeder
d62661e54e2662d53b583ae48609f5037701078dcmaeder *) mod_authz_core: Add AuthzSendForbiddenOnFailure directive to allow
9f226cec9f978edaba67aee4c4e04e3d3b994b87Daniel Calegari sending '403 FORBIDDEN' instead of '401 UNAUTHORIZED' if authorization
7bb0a9e92bc7a6f868eaa0b9c3212c0af4f96b7fEugen Kuksa fails for an authenticated user. PR 40721. [Stefan Fritsch]
7bb0a9e92bc7a6f868eaa0b9c3212c0af4f96b7fEugen Kuksa
7bb0a9e92bc7a6f868eaa0b9c3212c0af4f96b7fEugen KuksaChanges with Apache 2.3.10
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder
c70ef4c3b3a62764f715510c9fd67dde3acfe454Christian Maeder *) mod_rewrite: Don't implicitly URL-escape the original query string
61fa0ac06ede811c7aad54ec4c4202346727368eChristian Maeder when no substitution has changed it. PR 50447. [Eric Covener]
61fa0ac06ede811c7aad54ec4c4202346727368eChristian Maeder
8b0f493ae42bad8b94918cc0957f1af57096cda4Felix Reckers *) core: Honor 'AcceptPathInfo OFF' during internal redirects,
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder such as per-directory mod_rewrite substitutions. PR 50349.
61fa0ac06ede811c7aad54ec4c4202346727368eChristian Maeder [Eric Covener]
8b0f493ae42bad8b94918cc0957f1af57096cda4Felix Reckers
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder *) mod_rewrite: Add 'RewriteOptions InheritBefore' to put the base
61fa0ac06ede811c7aad54ec4c4202346727368eChristian Maeder rules/conditions before the overridden rules/conditions. PR 39313.
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder [Jérôme Grandjanny <jerome.grandjanny cea.fr>]
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder
60e6795dd310e10194e12bb660575aadf941328bEugen Kuksa *) mod_autoindex: add IndexIgnoreReset to reset the list of IndexIgnored
61fa0ac06ede811c7aad54ec4c4202346727368eChristian Maeder filenames in higher precedence configuration sections. PR 24243.
360ce9b5c746ac021944db12eb26e3df2697b8c7Christian Maeder [Eric Covener]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_cgid: RLimit* directive support for mod_cgid. PR 42135
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Eric Covener]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) core: Fail startup when the argument to ServerName looks like a glob
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner or a regular expression instead of a hostname (*?[]). PR 39863
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Rahul Nair <rahul.g.nair gmail.com>]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) mod_userdir: Add merging of enable, disable, and filename arguments
60e6795dd310e10194e12bb660575aadf941328bEugen Kuksa to UserDir directive, leaving enable/disable of userlists unmerged.
857992065be4ed40a72c6296b6c0aec62ab4c5b9Christian Maeder PR 44076 [Eric Covener]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
ddbf07996361d7e88cf23858a8f85595fa493514Jonathan von Schroeder *) httpd: When no -k option is provided on the httpd command line, the server
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner was starting without checking for an existing pidfile. PR 50350
7c99e334446bb97120e30e967baeeddfdd1278deKlaus Luettich [Eric Covener]
f5c9b1e739228c2a2edf055ac419583412569683Christian Maeder
f5c9b1e739228c2a2edf055ac419583412569683Christian Maeder *) mod_proxy: Put the worker in error state if the SSL handshake with the
f5c9b1e739228c2a2edf055ac419583412569683Christian Maeder backend fails. PR 50332.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Daniel Ruggeri <DRuggeri primary.net>, Ruediger Pluem]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_cache_disk: Fix Windows build which was broken after renaming
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner the module. [Gregg L. Smith]
fa21fba9ceb1ddf7b3efd54731a12ed8750191d8Christian Maeder
a84a8d508a0778b13a4d097a6dd34b95feae78acJens ElknerChanges with Apache 2.3.9
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) SECURITY: CVE-2010-1623 (cve.mitre.org)
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner Fix a denial of service attack against mod_reqtimeout.
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner [Stefan Fritsch]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) mod_headers: Change default first argument of Header directive
011156728d0d9ae2a044ce2d01e62228720b1aa2cmaeder from "onsuccess" to "always". [Eric Covener]
011156728d0d9ae2a044ce2d01e62228720b1aa2cmaeder
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) mod_include: Add the onerror attribute to the include element,
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner allowing an URL to be specified to include on error. [Graham
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner Leggett]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) mod_cache_disk: mod_disk_cache renamed to mod_cache_disk, to be
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner consistent with the naming of other modules. [Graham Leggett]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) mod_setenvif: Add SetEnvIfExpr directive to set env var depending on
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner expression. [Stefan Fritsch]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) mod_proxy: Fix ProxyPassInterpolateEnv directive. PR 50292.
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner [Stefan Fritsch]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) suEXEC: Add Suexec directive to disable suEXEC without renaming the
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner binary (Suexec Off), or force startup failure if suEXEC is required
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner but not supported (Suexec On). Change SuexecUserGroup to fail
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner startup instead of just printing a warning if suEXEC is disabled.
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner [Jeff Trawick]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) core: Add Error directive for aborting startup or htaccess processing
fa21fba9ceb1ddf7b3efd54731a12ed8750191d8Christian Maeder with a specified error message. [Jeff Trawick]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
c7ec85d1103173e089aa5048fd7afb2f9b505124Klaus Luettich *) mod_rewrite: Fix the RewriteEngine directive to work within a
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner location. Previously, once RewriteEngine was switched on globally,
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner it was impossible to switch off. [Graham Leggett]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) core, mod_include, mod_ssl: Move the expression parser derived from
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner mod_include back into mod_include. Replace ap_expr with a parser
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner derived from mod_ssl's parser. Make mod_ssl use the new parser. Rework
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner ap_expr's public interface and provide hooks for modules to add variables
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner and functions. [Stefan Fritsch]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) core: Do the hook sorting earlier so that the hooks are properly sorted
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner for the pre_config hook and during parsing the config. [Stefan Fritsch]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) core: In the absence of any AllowOverride directives, the default is now
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner "None" instead of "All". PR49823 [Eric Covener]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
b905126bab9454b89041f92b3c50bb9efc85e427Klaus Luettich *) mod_proxy: Don't allow ProxyPass or ProxyPassReverse in
756f31c6dd0843b4435c0ca66485ec19139eb1a8Eugen Kuksa <Directory> or <Files>. PR47765 [Eric Covener]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder *) prefork/worker/event MPMS: default value (when no directive is present)
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner of MaxConnectionsPerChild/MaxRequestsPerChild is changed to 0 from 10000
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner to match default configuration and manual. PR47782 [Eric Covener]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
0a5571c8adeddd27548445546491725beb224dddChristian Maeder *) proxy_connect: Don't give up in the middle of a CONNECT tunnel
0a5571c8adeddd27548445546491725beb224dddChristian Maeder when the child process is starting to exit. PR50220. [Eric Covener]
0a5571c8adeddd27548445546491725beb224dddChristian Maeder
0a5571c8adeddd27548445546491725beb224dddChristian Maeder *) mod_autoindex: Fix inheritance of mod_autoindex directives into
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner contexts that don't have any mod_autoindex directives. PR47766.
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner [Eric Covener]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_rewrite: Add END flag for RewriteRule to prevent further rounds
e642ad0e782f9bb9ba310164358220402eec8cd8Christian Maeder of rewrite processing when a per-directory substitution occurs.
3a7788e09dd23b364a46c9488cbd1522369113dbChristian Maeder [Eric Covener]
f38b3687c5558128515e34fb85d8b466d22dc300Christian Maeder
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_ssl: Make sure to always log an error if loading of CA certificates
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner fails. PR 40312. [Paul Tiemann <issues apache org ourdetour com>]
ddbf07996361d7e88cf23858a8f85595fa493514Jonathan von Schroeder
ddbf07996361d7e88cf23858a8f85595fa493514Jonathan von Schroeder *) mod_dav: Send 501 error if unknown Content-* header is received for a PUT
aebb0b18fe5e6ba7dd7e4c66a16a905611ef7ba9Christian Maeder request (RFC 2616 9.6). PR 42978. [Stefan Fritsch]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
ac0bbbcb2774629bb87986e69cf53d3402c5f575Christian Maeder *) mod_dav: Send 400 error if malformed Content-Range header is received for
3dde4051c307b609159a097f08a05108fdd036efJonathan von Schroeder a put request (RFC 2616 14.16). PR 49825. [Stefan Fritsch]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) mod_proxy: Release the backend connection as soon as EOS is detected,
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner so the backend isn't forced to wait for the client to eventually
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner acknowledge the data. [Graham Leggett]
3dde4051c307b609159a097f08a05108fdd036efJonathan von Schroeder
3dde4051c307b609159a097f08a05108fdd036efJonathan von Schroeder *) mod_proxy: Optimise ProxyPass within a Location so that it is stored
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner per-directory, and chosen during the location walk. Make ProxyPass
3dde4051c307b609159a097f08a05108fdd036efJonathan von Schroeder work correctly from within a LocationMatch. [Graham Leggett]
aebb0b18fe5e6ba7dd7e4c66a16a905611ef7ba9Christian Maeder
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) core: Fix segfault if per-module LogLevel is on virtual host
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner scope. PR 50117. [Stefan Fritsch]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
ac0bbbcb2774629bb87986e69cf53d3402c5f575Christian Maeder *) mod_proxy: Move the ProxyErrorOverride directive to have per
363939beade943a02b31004cea09dec34fa8a6d9Christian Maeder directory scope. [Graham Leggett]
363939beade943a02b31004cea09dec34fa8a6d9Christian Maeder
363939beade943a02b31004cea09dec34fa8a6d9Christian Maeder *) mod_allowmethods: New module to deny certain HTTP methods without
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder interfering with authentication/authorization. [Paul Querna,
3e61f574717499939bd8e0ff538ea9e7b72d4e2dKlaus Luettich Igor Galić, Stefan Fritsch]
3e61f574717499939bd8e0ff538ea9e7b72d4e2dKlaus Luettich
3e61f574717499939bd8e0ff538ea9e7b72d4e2dKlaus Luettich *) mod_ssl: Log certificate information and improve error message if client
3e61f574717499939bd8e0ff538ea9e7b72d4e2dKlaus Luettich cert verification fails. PR 50093, PR 50094. [Lassi Tuura <lat cern ch>,
3e61f574717499939bd8e0ff538ea9e7b72d4e2dKlaus Luettich Stefan Fritsch]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) htcacheclean: Teach htcacheclean to limit cache size by number of
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner inodes in addition to size of files. Prevents a cache disk from
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner running out of space when many small files are cached.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Graham Leggett]
3e61f574717499939bd8e0ff538ea9e7b72d4e2dKlaus Luettich
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder *) core: Rename MaxRequestsPerChild to MaxConnectionsPerChild, which
ab4256496e72886018b78571057331f373da6883Eugen Kuksa describes more accurately what the directive does. The old name
f8597aabc9db75dcf504e3151faf220a165c90d1Eugen Kuksa still works but logs a warning. [Stefan Fritsch]
ab4256496e72886018b78571057331f373da6883Eugen Kuksa
e7757995211bd395dc79d26fe017d99375f7d2a6Christian Maeder *) mod_cache: Optionally serve stale data when a revalidation returns a
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner 5xx response, controlled by the CacheStaleOnError directive.
a80c28bb8b7a23ccdf7e08d0fe216fc19cc97273Klaus Luettich [Graham Leggett]
91432c9a2d813a8322dea3a3f54924c796897f09Eugen Kuksa
91432c9a2d813a8322dea3a3f54924c796897f09Eugen Kuksa *) htcacheclean: Allow the listing of valid URLs within the cache, with
a80c28bb8b7a23ccdf7e08d0fe216fc19cc97273Klaus Luettich the option to list entry metadata such as sizes and times. [Graham
b09b9ccdfda2e80094a70dd29514ba42b2f6145eEugen Kuksa Leggett]
b09b9ccdfda2e80094a70dd29514ba42b2f6145eEugen Kuksa
91432c9a2d813a8322dea3a3f54924c796897f09Eugen Kuksa *) mod_cache: correctly parse quoted strings in cache headers.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner PR 50199 [Nick Kew]
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder
b9625461755578f3eed04676d42a63fd2caebd0cChristian Maeder *) mod_cache: Allow control over the base URL of reverse proxied requests
e7757995211bd395dc79d26fe017d99375f7d2a6Christian Maeder using the CacheKeyBaseURL directive, so that the cache key can be
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner calculated from the endpoint URL instead of the server URL. [Graham
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner Leggett]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_cache: CacheLastModifiedFactor, CacheStoreNoStore, CacheStorePrivate,
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner CacheStoreExpired, CacheIgnoreNoLastMod, CacheDefaultExpire,
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder CacheMinExpire and CacheMaxExpire can be set per directory/location.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Graham Leggett]
b1f59a4ea7c96f4c03a4d7cfcb9c5e66871cfbbbChristian Maeder
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_disk_cache: CacheMaxFileSize, CacheMinFileSize, CacheReadSize and
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner CacheReadTime can be set per directory/location. [Graham Leggett]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) core: Speed up config parsing if using a very large number of config
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner files. PR 50002 [andrew cloudaccess net]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_cache: Support the caching of HEAD requests. [Graham Leggett]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
62f5e02856861853dcc9ffb8c0a688835eb729aeJens Elkner *) htcacheclean: Allow the option to round up file sizes to a given
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner block size, improving the accuracy of disk usage. [Graham Leggett]
3e61f574717499939bd8e0ff538ea9e7b72d4e2dKlaus Luettich
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_ssl: Add authz providers for use with mod_authz_core and its
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner RequireAny/RequireAll containers: 'ssl' (equivalent to SSLRequireSSL),
1365c420ef71be3d52796ebd369dc2defdedc822Christian Maeder 'ssl-verify-client' (for use with 'SSLVerifyClient optional'), and
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner 'ssl-require' (expressions with same syntax as SSLRequire).
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Stefan Fritsch]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
62f5e02856861853dcc9ffb8c0a688835eb729aeJens Elkner *) mod_ssl: Make the ssl expression parser thread-safe. It now requires
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder bison instead of yacc. [Stefan Fritsch]
e420b3848a0e15a9e074b08c413996cbeb5ab06dChristian Maeder
ab4256496e72886018b78571057331f373da6883Eugen Kuksa *) mod_disk_cache: Change on-disk header file format to support the
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner link of the device/inode of the data file to the matching header
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner file, and to support the option of not writing a data file when
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner the data file is empty. [Graham Leggett]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) core/mod_unique_id: Add generate_log_id hook to allow to use
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner the ID generated by mod_unique_id as error log ID for requests.
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner [Stefan Fritsch]
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder *) mod_cache: Make sure that we never allow a 304 Not Modified response
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner that we asked for to leak to the client should the 304 response be
4c7cb5671b356d873d67829ec8062a5083c1ee0eEugen Kuksa uncacheable. PR45341 [Graham Leggett]
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_cache: Add the cache_status hook to register the final cache
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner decision hit/miss/revalidate. Add optional support for an X-Cache
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner and/or an X-Cache-Detail header to add the cache status to the
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner response. PR48241 [Graham Leggett]
e284004f10a315dbdb624c8b2522f65d485eaa48Martin Kühl
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder *) mod_authz_host: Add 'local' provider that matches connections originating
50515239e7e190f4a34ca581dd685d002148fbddChristian Maeder on the local host. PR 19938. [Stefan Fritsch]
50515239e7e190f4a34ca581dd685d002148fbddChristian Maeder
0b349288edfa50fdf38fda1a14e1562d03f92574Christian Maeder *) Event MPM: Fix crash accessing pollset on worker thread when child
0b349288edfa50fdf38fda1a14e1562d03f92574Christian Maeder process is exiting. [Jeff Trawick]
0b349288edfa50fdf38fda1a14e1562d03f92574Christian Maeder
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder *) core: For process invocation (cgi, fcgid, piped loggers and so forth)
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder pass the system library path (LD_LIBRARY_PATH or platform-specific
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder variables) along with the system PATH, by default. Both should be
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder overridden together as desired using PassEnv etc; see mod_env.
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder [William Rowe]
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder
8b4c68db8b465107cabef8b9cd5b6bc216e1b156Till Mossakowski *) mod_cache: Introduce CacheStoreExpired, to allow administrators to
8b4c68db8b465107cabef8b9cd5b6bc216e1b156Till Mossakowski capture a stale backend response, perform If-Modified-Since requests
8b4c68db8b465107cabef8b9cd5b6bc216e1b156Till Mossakowski against the backend, and serving from the cache all 304 responses.
bcaf979d9babe6346aa343687aa7d596e2894cccPaolo Torrini This restores pre-2.2.4 cache behavior. [William Rowe]
df29370ae8d8b41587957f6bcdcb43a3f1927e47Christian Maeder
bcaf979d9babe6346aa343687aa7d596e2894cccPaolo Torrini *) mod_rewrite: Introduce <=, >= string comparison operators, and integer
5ce19352a9cc47d982819cc889a71cd0a61ac171Christian Maeder comparators -lt, -le, -eq, -ge, and -gt. To help bash users and drop
5ce19352a9cc47d982819cc889a71cd0a61ac171Christian Maeder the ambiguity of the symlink test "-ltest", introduce -h or -L as
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner symlink test operators. [William Rowe]
bcaf979d9babe6346aa343687aa7d596e2894cccPaolo Torrini
23ab8855c58adfbd03a0730584b917b24c603901Christian Maeder *) mod_cache: Give the cache provider the opportunity to choose to cache
df29370ae8d8b41587957f6bcdcb43a3f1927e47Christian Maeder or not cache based on the buckets present in the brigade, such as the
23ab8855c58adfbd03a0730584b917b24c603901Christian Maeder presence of a FILE bucket.
e50e41135ece589f7202bd4ef8d6b97531c2a56eKlaus Luettich [Graham Leggett]
47b0e9f3cb008cb7997f4e3bae26e4d62dcc887aChristian Maeder
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder *) mod_authz_core: Allow authz providers to check args while reading the
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder config and allow to cache parsed args. Move 'all' and 'env' authz
431d34c7007a787331c4e5ec997badb0f8190fc7Christian Maeder providers from mod_authz_host to mod_authz_core. Add 'method' authz
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder provider depending on the HTTP method. [Stefan Fritsch]
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_include: Move the request_rec within mod_include to be
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner exposed within include_ctx_t. [Graham Leggett]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
9096f6c6aaded6cd8288656ceccd4c7b3bd0747eChristian Maeder *) mod_include: Reinstate support for UTF-8 character sets by allowing a
9096f6c6aaded6cd8288656ceccd4c7b3bd0747eChristian Maeder variable being echoed or set to be decoded and then encoded as separate
e112e83352048f3db8c8f93ae104193e7338c10fChristian Maeder steps. PR47686 [Graham Leggett]
e112e83352048f3db8c8f93ae104193e7338c10fChristian Maeder
e62d49c0dc2893da75faad896bd135e2e9a7087bKlaus Luettich *) mod_cache: Add a discrete commit_entity() provider function within the
e62d49c0dc2893da75faad896bd135e2e9a7087bKlaus Luettich mod_cache provider interface which is called to indicate to the
e62d49c0dc2893da75faad896bd135e2e9a7087bKlaus Luettich provider that caching is complete, giving the provider the opportunity
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder to commit temporary files permanently to the cache in an atomic
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner fashion. Replace the inconsistent use of error cleanups with a formal
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder set of pool cleanups attached to a subpool, which is destroyed on error.
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder [Graham Leggett]
61fa0ac06ede811c7aad54ec4c4202346727368eChristian Maeder
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder *) mod_cache: Change the signature of the store_body() provider function
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder within the mod_cache provider interface to support an "in" brigade
f8597aabc9db75dcf504e3151faf220a165c90d1Eugen Kuksa and an "out" brigade instead of just a single input brigade. This
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner gives a cache provider the option to consume only part of the brigade
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner passed to it, rather than the whole brigade as was required before.
c72c1e75a969ff4c336e77481c2a8e42603f13eeChristian Maeder This fixes an out of memory and a request timeout condition that would
456238178f89e5a3de2988ee6c8af924297d52d9Christian Maeder occur when the original document was a large file. Introduce
d23b0cc79c0d204e6ec758dff8d0ba71c9f693f7Christian Maeder CacheReadSize and CacheReadTime directives to mod_disk_cache to control
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner the amount of data to attempt to cache at a time. [Graham Leggett]
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder *) core: Add ErrorLogFormat to allow configuring error log format, including
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder additional information that is logged once per connection or request. Add
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner error log IDs for connections and request to allow correlating error log
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder lines and the corresponding access log entry. [Stefan Fritsch]
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) core: Disable sendfile by default. [Stefan Fritsch]
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder *) mod_cache: Check the request to determine whether we are allowed
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder to return cached content at all, and respect a "Cache-Control:
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner no-cache" header from a client. Previously, "no-cache" would
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder behave like "max-age=0". [Graham Leggett]
5191fa24c532d1f67e7a642e9aece65efb8a0975Christian Maeder
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) mod_cache: Use a proper filter context to hold filter data instead
1a6464613c59e35072b90ca296ae402cbe956144Christian Maeder of misusing the per-request configuration. Fixes a segfault on trunk
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder when the normal handler is used. [Graham Leggett]
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder *) mod_cgid: Log a warning if the ScriptSock path is truncated because
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder it is too long. PR 49388. [Stefan Fritsch]
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder *) vhosts: Do not allow _default_ in NameVirtualHost, or mixing *
8b767d09a78927b111f5596fdff9ca7d2c1a439fChristian Maeder and non-* ports on NameVirtualHost, or multiple NameVirtualHost
f78ce817f35574674d54e30ad1861a9b4ced20caChristian Maeder directives for the same address:port, or NameVirtualHost
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner directives with no matching VirtualHosts, or multiple ip-based
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner VirtualHost sections for the same address:port. These were
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner previously accepted with a warning, but the behavior was
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner undefined. [Dan Poirier]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_remoteip: Fix a segfault when using mod_remoteip in conjunction with
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner Allow/Deny. PR 49838. [Andrew Skalski <voltara gmail.com>]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) core: DirectoryMatch can now match on the end of line character ($),
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner and sub-directories of matched directories are no longer implicitly
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner matched. PR49809 [Eric Covener]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) Regexps: introduce new higher-level regexp utility including parsing
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner and executing perl-style regexp ops (e.g s/foo/bar/i) and regexp memory
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner [Nick Kew]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) Proxy: support setting source address. PR 29404
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner [Multiple contributors iterating through bugzilla,
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner Aron Ujvari <xanco nikhok.hu>, Aleksey Midenkov <asm uezku.kemsu.ru>,
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner <dan listening-station.net; trunk version Nick Kew]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) HTTP protocol: return 400 not 503 if we have to abort due to malformed
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner chunked encoding. [Nick Kew]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens ElknerChanges with Apache 2.3.8
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) suexec: Support large log files. PR 45856. [Stefan Fritsch]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) core: Abort with sensible error message if no or more than one MPM is
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner loaded. [Stefan Fritsch]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) mod_proxy: Rename erroronstatus to failonstatus.
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner [Daniel Ruggeri <DRuggeri primary.net>]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) mod_dav_fs: Fix broken "creationdate" property.
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner Regression in version 2.3.7. [Rainer Jung]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens ElknerChanges with Apache 2.3.7
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) SECURITY: CVE-2010-1452 (cve.mitre.org)
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner mod_dav, mod_cache, mod_session: Fix Handling of requests without a path
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner segment. PR: 49246 [Mark Drayton, Jeff Trawick]
ae3e4689adbf4de67f4e1cdda6db2c0e406027d0Francisc Nicolae Bungiu
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) mod_ldap: Properly check the result returned by apr_ldap_init. PR 46076.
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner [Stefan Fritsch]
ae3e4689adbf4de67f4e1cdda6db2c0e406027d0Francisc Nicolae Bungiu
b446bf54c1dc78690aa12e86aadc49cdd8585847Christian Maeder *) mod_rewrite: Log errors if rewrite map files cannot be opened. PR 49639.
60e6795dd310e10194e12bb660575aadf941328bEugen Kuksa [Stefan Fritsch]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_proxy_http: Support the 'ping' property for backend HTTP/1.1 servers
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner via leveraging 100-Continue as the initial "request".
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Jim Jagielski]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
60e6795dd310e10194e12bb660575aadf941328bEugen Kuksa *) core/mod_authz_core: Introduce new access_checker_ex hook that enables
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner mod_authz_core to bypass authentication if access should be allowed by
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner IP address/env var/... [Stefan Fritsch]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) core: Introduce note_auth_failure hook to allow modules to add support
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner for additional auth types. This makes ap_note_auth_failure() work with
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner mod_auth_digest again. PR 48807. [Stefan Fritsch]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) socache modules: return APR_NOTFOUND when a lookup is not found [Nick Kew]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_authn_socache: new module [Nick Kew]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) configure: Add reallyall option for --enable-mods-shared. [Stefan Fritsch]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) Fix Windows build when using VC6. [Gregg L. Smith <lists glewis com>]
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_rewrite: Allow to set environment variables without explicitly
ce39be56aeedc8d333b72b1662548d36097fa22fJens Elkner giving a value. [Rainer Jung]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_rewrite: Remove superfluous EOL from rewrite logging. [Rainer Jung]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_include: recognise "text/html; parameters" as text/html
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner PR 49616 [Andrey Chernov <ache nagual.pp.ru>]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner *) CGI vars: allow PATH to be set by SetEnv, consistent with LD_LIBRARY_PATH
961087225d1d2b9534152a346d1a3755ed952fcdJens Elkner PR 43906 [Nick Kew]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) Core: Extra robustness: don't try authz and segfault if authn
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner fails to set r->user. Log bug and return 500 instead.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner PR 42995 [Nick Kew]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) HTTP protocol filter: fix handling of longer chunk extensions
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner PR 49474 [<tee.bee gmx.de>]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) Update SSL cipher suite and add example for SSLHonorCipherOrder.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Lars Eilebrecht, Rainer Jung]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) move AddOutputFilterByType from core to mod_filter. This should
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner fix nasty side-effects that happen when content_type is set
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner more than once in processing a request, and make it fully
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner compatible with dynamic and proxied contents. [Nick Kew]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_log_config: Implement logging for sub second timestamps and
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner request end time. [Rainer Jung]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens ElknerChanges with Apache 2.3.6
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) SECURITY: CVE-2009-3555 (cve.mitre.org)
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner mod_ssl: Comprehensive fix of the TLS renegotiation prefix injection
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner attack when compiled against OpenSSL version 0.9.8m or later. Introduces
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner the 'SSLInsecureRenegotiation' directive to reopen this vulnerability
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner and offer unsafe legacy renegotiation with clients which do not yet
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner support the new secure renegotiation protocol, RFC 5746.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Joe Orton, and with thanks to the OpenSSL Team]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) SECURITY: CVE-2009-3555 (cve.mitre.org)
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner mod_ssl: A partial fix for the TLS renegotiation prefix injection attack
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner by rejecting any client-initiated renegotiations. Forcibly disable
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner keepalive for the connection if there is any buffered data readable. Any
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner configuration which requires renegotiation for per-directory/location
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner access control is still vulnerable, unless using OpenSSL >= 0.9.8l.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Joe Orton, Ruediger Pluem, Hartmut Keil <Hartmut.Keil adnovum.ch>]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) SECURITY: CVE-2010-0408 (cve.mitre.org)
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner mod_proxy_ajp: Respond with HTTP_BAD_REQUEST when the body is not sent
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner when request headers indicate a request body is incoming; not a case of
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner HTTP_INTERNAL_SERVER_ERROR. [Niku Toivola <niku.toivola sulake.com>]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) SECURITY: CVE-2010-0425 (cve.mitre.org)
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner mod_isapi: Do not unload an isapi .dll module until the request
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner processing is completed, avoiding orphaned callback pointers.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Brett Gervasoni <brettg senseofsecurity.com>, Jeff Trawick]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) core: Filter init functions are now run strictly once per request
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner before handler invocation. The init functions are no longer run
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner for connection filters. PR 49328. [Joe Orton]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) core: Adjust the output filter chain correctly in an internal
ce39be56aeedc8d333b72b1662548d36097fa22fJens Elkner redirect from a subrequest, preserving filters from the main
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner request as necessary. PR 17629. [Joe Orton]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_cache: Explicitly allow cache implementations to cache a 206 Partial
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner Response if they so choose to do so. Previously an attempt to cache a 206
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner was arbitrarily allowed if the response contained an Expires or
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner Cache-Control header, and arbitrarily denied if both headers were missing.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Graham Leggett]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) core: Add microsecond timestamp fractions, process id and thread id
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner to the error log. [Rainer Jung]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) configure: The "most" module set gets build by default. [Rainer Jung]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) configure: Building dynamic modules (DSO) by default. [Rainer Jung]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) configure: Fix broken VPATH build when using included APR.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Rainer Jung]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_session_crypto: Fix configure problem when building
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner with APR 2 and for VPATH builds with included APR.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Rainer Jung]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_session_crypto: API compatibility with APR 2 crypto and
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner APR Util 1.x crypto. [Rainer Jung]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) ab: Fix memory leak with -v2 and SSL. PR 49383.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Pavel Kankovsky <peak argo troja mff cuni cz>]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) core: Add per-module and per-directory loglevel configuration.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner Add some more trace logging.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner mod_rewrite: Replace RewriteLog/RewriteLogLevel with trace log levels.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner mod_ssl: Replace LogLevelDebugDump with trace log levels.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner mod_ssl/mod_proxy*: Adjust loglevels to be less verbose at levels info
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner and debug.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner mod_dumpio: Replace DumpIOLogLevel with trace log levels.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Stefan Fritsch]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_ldap: LDAP caching was suppressed (and ldap-status handler returns
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner title page only) when any mod_ldap directives were used in VirtualHost
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner context. [Eric Covener]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_disk_cache: Decline the opportunity to cache if the response is
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner a 206 Partial Content. This stops a reverse proxied partial response
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner from becoming cached, and then being served in subsequent responses.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Graham Leggett]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_deflate: avoid the risk of forwarding data before headers are set.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner PR 49369 [Matthew Steele <mdsteele google.com>]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_authnz_ldap: Ensure nested groups are checked when the
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner top-level group doesn't have any direct non-group members
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner of attributes in AuthLDAPGroupAttribute. [Eric Covener]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_authnz_ldap: Search or Comparison during authorization phase
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner can use the credentials from the authentication phase
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner (AuthLDAPSearchAsUSer,AuthLDAPCompareAsUser).
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner PR 48340 [Domenico Rotiroti, Eric Covener]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_authnz_ldap: Allow the initial DN search during authentication
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner to use the HTTP username/pass instead of an anonymous or hard-coded
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner LDAP id (AuthLDAPInitialBindAsUser, AuthLDAPInitialBindPattern).
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Eric Covener]
f8597aabc9db75dcf504e3151faf220a165c90d1Eugen Kuksa
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_authnz_ldap: Publish requested LDAP data with an AUTHORIZE_ prefix
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner when this module is used for authorization. See AuthLDAPAuthorizePrefix.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner PR 45584 [Eric Covener]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) apxs -q: Stop filtering out ':' characters from the reported values.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner PR 45343. [Bill Cole]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) prefork MPM: Work around possible crashes on child exit in APR reslist
62f5e02856861853dcc9ffb8c0a688835eb729aeJens Elkner cleanup code. PR 43857. [Tom Donovan]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) ab: fix number of requests sent by ab when keepalive is enabled. PR 48497.
62f5e02856861853dcc9ffb8c0a688835eb729aeJens Elkner [Bryn Dole <dole blekko.com>]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) Log an error for failures to read a chunk-size, and return 408 instead of
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner 413 when this is due to a read timeout. This change also fixes some cases
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner of two error documents being sent in the response for the same scenario.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Eric Covener] PR49167
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_proxy_balancer: Add new directive BalancerNonce to allow admin
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner to control/set the nonce used in the balancer-manager application.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Jim Jagielski]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_proxy_connect: Support port ranges in AllowConnect. PR 23673.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Stefan Fritsch]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) Proxy balancer: support setting error status according to HTTP response
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner code from a backend. PR 48939. [Daniel Ruggeri <DRuggeri primary.net>]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) htcacheclean: Introduce the ability to clean specific URLs from the
d1f37f9074c9ccba31385b3cb4eb212ae443b310Jens Elkner cache, if provided as an optional parameter on the command line.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Graham Leggett]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) core: Introduce the IncludeStrict directive, which explicitly fails
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner server startup if no files or directories match a wildcard path.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Graham Leggett]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) htcacheclean: Report additional statistics about entries deleted.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner PR 48944. [Mark Drayton mark markdrayton.info]
d1f37f9074c9ccba31385b3cb4eb212ae443b310Jens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) Introduce SSLFIPS directive to support OpenSSL FIPS_mode; permits all
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner builds of mod_ssl to use 'SSLFIPS off' for portability, but the proper
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner build of openssl is required for 'SSLFIPS on'. PR 46270.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner [Dr Stephen Henson <steve openssl.org>, William Rowe]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_proxy_http: Log the port of the remote server in various messages.
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner PR 48812. [Igor Galić <i galic brainsware org>]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_reqtimeout: Do not wrongly enforce timeouts for mod_proxy's backend
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner connections and other protocol handlers (like mod_ftp). [Stefan Fritsch]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner *) mod_proxy_ajp: Really regard the operation a success, when the client
62f5e02856861853dcc9ffb8c0a688835eb729aeJens Elkner aborted the connection. In addition adjust the log message if the client
62f5e02856861853dcc9ffb8c0a688835eb729aeJens Elkner aborted the connection. [Ruediger Pluem]
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner
62f5e02856861853dcc9ffb8c0a688835eb729aeJens Elkner *) mod_ssl: Add the 'SSLInsecureRenegotiation' directive, which
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner allows insecure renegotiation with clients which do not yet
a84a8d508a0778b13a4d097a6dd34b95feae78acJens Elkner support the secure renegotiation protocol. [Joe Orton]
*) mod_ssl: Fix a potential I/O hang if a long list of trusted CAs
is configured for client cert auth. PR 46952. [Joe Orton]
*) core: Only log a 408 if it is no keepalive timeout. PR 39785
[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: Update LDAPTrustedClientCert to consistently be a per-directory
setting only, matching most of the documentation and examples.
PR 46541 [Paul Reder, Eric Covener]
*) mod_ldap: LDAPTrustedClientCert now accepts CA_DER/CA_BASE64 argument
types previously allowed only in LDAPTrustedGlobalCert. [Eric Covener]
*) mod_negotiation: Preserve query string over multiviews negotiation.
This buglet was fixed for type maps in 2.2.6, but the same issue
affected multiviews and was overlooked.
PR 33112 [Joergen Thomsen <apache jth.net>]
*) mod_ldap: Eliminate a potential crash with multiple LDAPTrustedClientCert
when some are not password-protected. [Eric Covener]
*) Fix startup segfault when the Mutex directive is used but no loaded
modules use httpd mutexes. PR 48787. [Jeff Trawick]
*) Proxy: get the headers right in a HEAD request with
ProxyErrorOverride, by checking for an overridden error
before not after going into a catch-all code path.
PR 41646. [Nick Kew, Stuart Children]
*) support/rotatelogs: Support the simplest log rotation case, log
truncation. Useful when the log is being processed in real time
using a command like tail. [Graham Leggett]
*) support/htcacheclean: Teach it how to write a pid file (modelled on
httpd's writing of a pid file) so that it becomes possible to run
more than one instance of htcacheclean on the same machine.
[Graham Leggett]
*) Log command line on startup, so there's a record of command line
arguments like -f. PR 48752. [Dan Poirier]
*) Introduce mod_reflector, a handler capable of reflecting POSTed
request bodies back within the response through the output filter
stack. Can be used to turn an output filter into a web service.
[Graham Leggett]
*) mod_proxy_http: Make sure that when an ErrorDocument is served
from a reverse proxied URL, that the subrequest respects the status
of the original request. This brings the behaviour of proxy_handler
in line with default_handler. PR 47106. [Graham Leggett]
*) Support wildcards in both the directory and file components of
the path specified by the Include directive. [Graham Leggett]
*) mod_proxy, mod_proxy_http: Support remote https proxies
by using HTTP CONNECT. PR 19188.
[Philippe Dutrueux <lilas evidian.com>, Rainer Jung]
*) apxs: Fix -A and -a options to ignore whitespace in httpd.conf
[Philip M. Gollucci]
*) worker: Don't report server has reached MaxClients until it has.
Add message when server gets within MinSpareThreads of MaxClients.
PR 46996. [Dan Poirier]
*) mod_session: Session expiry was being initialised, but not updated
on each session save, resulting in timed out sessions when there
should not have been. Fixed. [Graham Leggett]
*) mod_log_config: Add the R option to log the handler used within the
request. [Christian Folini <christian.folini netnea com>]
*) mod_include: Allow fine control over the removal of Last-Modified and
ETag headers within the INCLUDES filter, making it possible to cache
responses if desired. Fix the default value of the SSIAccessEnable
directive. [Graham Leggett]
*) Add new UnDefine directive to undefine a variable. PR 35350.
[Stefan Fritsch]
*) Make ap_pregsub(), used by AliasMatch and friends, use the same syntax
for regex backreferences as mod_rewrite and mod_include: Remove the use
of '&' as an alias for '$0' and allow to escape any character with a
backslash. PR 48351. [Stefan Fritsch]
*) mod_authnz_ldap: If AuthLDAPCharsetConfig is set, also convert the
password to UTF-8. PR 45318.
[Johannes Müller <joh_m gmx.de>, Stefan Fritsch]
*) ab: Fix calculation of requests per second in HTML output. PR 48594.
[Stefan Fritsch]
*) mod_authnz_ldap: Failures to map a username to a DN, or to check a user
password now result in an informational level log entry instead of
warning level. [Eric Covener]
Changes with Apache 2.3.5
*) SECURITY: CVE-2010-0434 (cve.mitre.org)
Ensure each subrequest has a shallow copy of headers_in so that the
parent request headers are not corrupted. Eliminates a problematic
optimization in the case of no request body. PR 48359
[Jake Scott, William Rowe, Ruediger Pluem]
*) Turn static function get_server_name_for_url() into public
ap_get_server_name_for_url() and use it where appropriate. This
fixes mod_rewrite generating invalid URLs for redirects to IPv6
literal addresses. [Stefan Fritsch]
*) mod_ldap: Introduce new config option LDAPTimeout to set the timeout
for LDAP operations like bind and search. [Stefan Fritsch]
*) mod_proxy, mod_proxy_ftp: Move ProxyFtpDirCharset from mod_proxy to
mod_proxy_ftp. [Takashi Sato]
*) mod_proxy, mod_proxy_connect: Move AllowCONNECT from mod_proxy to
mod_proxy_connect. [Takashi Sato]
*) mod_cache: Do an exact match of the keys defined by
CacheIgnoreURLSessionIdentifiers against the querystring instead of
a partial match. PR 48401.
[Dodou Wang <wangdong.08 gmail.com>, Ruediger Pluem]
*) mod_proxy_balancer: Fix crash in balancer-manager. [Rainer Jung]
*) Core HTTP: disable keepalive when the Client has sent
Expect: 100-continue
but we respond directly with a non-100 response.
Keepalive here led to data from clients continuing being treated as
a new request.
PR 47087 [Nick Kew]
*) Core: reject NULLs in request line or request headers.
PR 43039 [Nick Kew]
*) Core: (re)-introduce -T commandline option to suppress documentroot
check at startup.
PR 41887 [Jan van den Berg <janvdberg gmail.com>]
*) mod_autoindex: support XHTML as equivalent to HTML in IndexOptions,
ScanHTMLTitles, ReadmeName, HeaderName
PR 48416 [Dmitry Bakshaev <dab18 izhnet.ru>, Nick Kew]
*) Proxy: Fix ProxyPassReverse with relative URL
Derived (slightly erroneously) from PR 38864 [Nick Kew]
*) mod_headers: align Header Edit with Header Set when used on Content-Type
PR 48422 [Cyril Bonté <cyril.bonte free.fr>, Nick Kew>]
*) mod_headers: Enable multi-match-and-replace edit option
PR 46594 [Nick Kew]
*) mod_filter: enable it to act on non-200 responses.
PR 48377 [Nick Kew]
Changes with Apache 2.3.4
*) Replace AcceptMutex, LockFile, RewriteLock, SSLMutex, SSLStaplingMutex,
and WatchdogMutexPath with a single Mutex directive. Add APIs to
simplify setup and user customization of APR proc and global mutexes.
(See util_mutex.h.) Build-time setting DEFAULT_LOCKFILE is no longer
respected; set DEFAULT_REL_RUNTIMEDIR instead. [Jeff Trawick]
*) http_core: KeepAlive no longer accepts other than On|Off.
[Takashi Sato]
*) mod_dav: Remove errno from dav_error interface. Calls to dav_new_error()
and dav_new_error_tag() must be adjusted to add an apr_status_t parameter.
[Jeff Trawick]
*) mod_authnz_ldap: Add AuthLDAPBindAuthoritative to allow Authentication to
try other providers in the case of an LDAP bind failure.
PR 46608 [Justin Erenkrantz, Joe Schaefer, Tony Stevenson]
*) Build: fix --with-module to work as documented
PR 43881 [Gez Saunders <gez.saunders virgin.net>]
Changes with Apache 2.3.3
*) SECURITY: CVE-2009-3095 (cve.mitre.org)
mod_proxy_ftp: sanity check authn credentials.
[Stefan Fritsch <sf fritsch.de>, Joe Orton]
*) SECURITY: CVE-2009-3094 (cve.mitre.org)
mod_proxy_ftp: NULL pointer dereference on error paths.
[Stefan Fritsch <sf fritsch.de>, Joe Orton]
*) mod_ssl: enable support for ECC keys and ECDH ciphers. Tested against
OpenSSL 1.0.0b3. [Vipul Gupta <vipul.gupta sun.com>, Sander Temme]
*) mod_dav: Include uri when logging a PUT error due to connection abort.
PR 38149. [Stefan Fritsch]
*) mod_dav: Return 409 instead of 500 for a LOCK request if the parent
resource does not exist or is not a collection. PR 43465. [Stefan Fritsch]
*) mod_dav_fs: Return 409 instead of 500 for Litmus test case copy_nodestcoll
(a COPY request where the parent of the destination resource does not
exist). PR 39299. [Stefan Fritsch]
*) mod_dav_fs: Don't delete the whole file if a PUT with content-range failed.
PR 42896. [Stefan Fritsch]
*) mod_dav_fs: Make PUT create files atomically and no longer destroy the
old file if the transfer aborted. PR 39815. [Paul Querna, Stefan Fritsch]
*) mod_dav_fs: Remove inode keyed locking as this conflicts with atomically
creating files. On systems with inode numbers, this is a format change of
the DavLockDB. The old DavLockDB must be deleted on upgrade.
[Stefan Fritsch]
*) mod_log_config: Make ${cookie}C correctly match whole cookie names
instead of substrings. PR 28037. [Dan Franklin <dan dan-franklin.com>,
Stefan Fritsch]
*) vhost: A purely-numeric Host: header should not be treated as a port.
PR 44979 [Nick Kew]
*) mod_ldap: Avoid 500 errors with "Unable to set LDAP_OPT_REFHOPLIMIT option to 5"
when built against openldap by using SDK LDAP_OPT_REFHOPLIMIT defaults unless
LDAPReferralHopLimit is explicitly configured.
[Eric Covener]
*) mod_charset_lite: Honor 'CharsetOptions NoImplicitAdd'.
[Eric Covener]
*) mod_ssl: Add support for OCSP Stapling. PR 43822.
[Dr Stephen Henson <shenson oss-institute.org>]
*) mod_socache_shmcb: Allow parens in file name if cache size is given.
Fixes SSLSessionCache directive mis-parsing parens in pathname.
PR 47945. [Stefan Fritsch]
*) htpasswd: Improve out of disk space handling. PR 30877. [Stefan Fritsch]
*) htpasswd: Use MD5 hash by default on all platforms. [Stefan Fritsch]
*) mod_sed: Reduce memory consumption when processing very long lines.
PR 48024 [Basant Kumar Kukreja <basant.kukreja sun.com>]
*) ab: Fix segfault in case the argument for -n is a very large number.
PR 47178. [Philipp Hagemeister <oss phihag.de>]
*) Allow ProxyPreserveHost to work in <Proxy> sections. PR 34901.
[Stefan Fritsch]
*) configure: Fix THREADED_MPMS so that mod_cgid is enabled again
for worker MPM. [Takashi Sato]
*) mod_dav: Provide a mechanism to obtain the request_rec and pathname
from the dav_resource. [Jari Urpalainen <jari.urpalainen nokia.com>,
Brian France <brian brianfrance.com>]
*) Build: Use install instead of cp if available on installing
modules to avoid segmentation fault. PR 47951. [hirose31 gmail.com]
*) mod_cache: correctly consider s-maxage in cacheability
decisions. [Dan Poirier]
*) mod_logio/core: Report more accurate byte counts in mod_status if
mod_logio is loaded. PR 25656. [Stefan Fritsch]
*) mod_ldap: If LDAPSharedCacheSize is too small, try harder to purge
some cache entries and log a warning. Also increase the default
LDAPSharedCacheSize to 500000. This is a more realistic size suitable
for the default values of 1024 for LdapCacheEntries/LdapOpCacheEntries.
PR 46749. [Stefan Fritsch]
*) mod_rewrite: Make sure that a hostname:port isn't fully qualified if
the request is a CONNECT request. [Bill Zajac <billz consultla.com>]
*) mod_cache: Teach CacheEnable and CacheDisable to work from within a
Location section, in line with how ProxyPass works. [Graham Leggett]
*) mod_reqtimeout: New module to set timeouts and minimum data rates for
receiving requests from the client. [Stefan Fritsch]
*) core: Fix potential memory leaks by making sure to not destroy
bucket brigades that have been created by earlier filters.
[Stefan Fritsch]
*) core, mod_deflate, mod_sed: Reduce memory usage by reusing bucket
brigades in several places. [Stefan Fritsch]
*) mod_cache: Fix uri_meets_conditions() so that CacheEnable will
match by scheme, or by a wildcarded hostname. PR 40169
[Peter Grandi <pg_asf asf.for.sabi.co.uk>, Graham Leggett]
*) suxec: Allow to log an error if exec fails by setting FD_CLOEXEC
on the log file instead of closing it. PR 10744. [Nicolas Rachinsky]
*) mod_mime: Make RemoveType override the info from TypesConfig.
PR 38330. [Stefan Fritsch]
*) mod_cache: Introduce the option to run the cache from within the
normal request handler, and to allow fine grained control over
where in the filter chain content is cached. [Graham Leggett]
*) core: Treat timeout reading request as 408 error, not 400.
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]
*) mod_ssl: Reintroduce SSL_CLIENT_S_DN, SSL_CLIENT_I_DN, SSL_SERVER_S_DN,
SSL_SERVER_I_DN back to the environment variables to be set by mod_ssl.
[Peter Sylvester <peter.sylvester edelweb.fr>]
*) mod_disk_cache: don't cache incomplete responses, per RFC 2616, 13.8.
PR15866. [Dan Poirier]
*) ab: ab segfaults in verbose mode on https sites
PR46393. [Ryan Niebur]
*) mod_dav: Allow other modules to become providers and add resource types
to the DAV response. [Jari Urpalainen <jari.urpalainen nokia.com>,
Brian France <brian brianfrance.com>]
*) mod_dav: Allow other modules to add things to the DAV or Allow headers
of an OPTIONS request. [Jari Urpalainen <jari.urpalainen nokia.com>,
Brian France <brian brianfrance.com>]
*) core: Lower memory usage of core output filter.
[Stefan Fritsch <sf sfritsch.de>]
*) mod_mime: Detect invalid use of MultiviewsMatch inside Location and
LocationMatch sections. PR47754. [Dan Poirier]
*) mod_request: Make sure the KeptBodySize directive rejects values
that aren't valid numbers. [Graham Leggett]
*) mod_session_crypto: Sanity check should the potentially encrypted
session cookie be too short. [Graham Leggett]
*) mod_session.c: Prevent a segfault when session is added but not
configured. [Graham Leggett]
*) htcacheclean: 19 ways to fail, 1 error message. Fixed. [Graham Leggett]
*) mod_auth_digest: Fail server start when nonce count checking
is configured without shared memory, or md5-sess algorithm is
configured. [Dan Poirier]
*) mod_proxy_connect: The connect method doesn't work if the client is
connecting to the apache proxy through an ssl socket. Fixed.
PR29744. [Brad Boyer, Mark Cave-Ayland, Julian Gilbey, Fabrice Durand,
David Gence, Tim Dodge, Per Gunnar Hans, Emmanuel Elango,
Kevin Croft, Rudolf Cardinal]
*) mod_ssl: The error message when SSLCertificateFile is missing should
at least give the name or position of the problematic virtual host
definition. [Stefan Fritsch sf sfritsch.de]
*) mod_auth_digest: Fix null pointer when qop=none. [Dan Poirier]
*) Add support for HTTP PUT to ab. [Jeff Barnes <jbarnesweb yahoo.com>]
*) mod_headers: generalise the envclause to support expression
evaluation with ap_expr parser [Nick Kew]
*) mod_cache: Introduce the thundering herd lock, a mechanism to keep
the flood of requests at bay that strike a backend webserver as
a cached entity goes stale. [Graham Leggett]
*) mod_auth_digest: Fix usage of shared memory and re-enable it.
PR 16057 [Dan Poirier]
*) Preserve Port information over internal redirects
PR 35999 [Jonas Ringh <jonas.ringh cixit.se>]
*) Proxy: unable to connect to a backend is SERVICE_UNAVAILABLE,
rather than BAD_GATEWAY or (especially) NOT_FOUND.
PR 46971 [evanc nortel.com]
*) Various modules: Do better checking of pollset operations in order to
avoid segmentation faults if they fail. PR 46467
[Stefan Fritsch <sf sfritsch.de>]
*) mod_autoindex: Correctly create an empty cell if the description
for a file is missing. PR 47682 [Peter Poeml <poeml suse.de>]
*) ab: Fix broken error messages after resolver or connect() failures.
[Jeff Trawick]
*) SECURITY: CVE-2009-1890 (cve.mitre.org)
Fix a potential Denial-of-Service attack against mod_proxy in a
reverse proxy configuration, where a remote attacker can force a
proxy process to consume CPU time indefinitely. [Nick Kew, Joe Orton]
*) SECURITY: CVE-2009-1191 (cve.mitre.org)
mod_proxy_ajp: Avoid delivering content from a previous request which
failed to send a request body. PR 46949 [Ruediger Pluem]
*) htdbm: Fix possible buffer overflow if dbm database has very
long values. PR 30586 [Dan Poirier]
*) core: Return APR_EOF if request body is shorter than the length announced
by the client. PR 33098 [ Stefan Fritsch <sf sfritsch.de>]
*) mod_suexec: correctly set suexec_enabled when httpd is run by a
non-root user and may have insufficient permissions.
PR 42175 [Jim Radford <radford blackbean.org>]
*) mod_ssl: Fix SSL_*_DN_UID variables to use the 'userID' attribute
type. PR 45107. [Michael Ströder <michael stroeder.com>,
Peter Sylvester <peter.sylvester edelweb.fr>]
*) mod_proxy_http: fix case sensitivity checking transfer encoding
PR 47383 [Ryuzo Yamamoto <ryuzo.yamamoto gmail.com>]
*) mod_alias: ensure Redirect issues a valid URL.
PR 44020 [HÃ¥kon Stordahl <hakon stordahl.org>]
*) mod_dir: add FallbackResource directive, to enable admin to specify
an action to happen when a URL maps to no file, without resorting
to ErrorDocument or mod_rewrite. PR 47184 [Nick Kew]
*) mod_cgid: Do not leak the listening Unix socket file descriptor to the
CGI process. PR 47335 [Kornél Pál <kornelpal gmail.com>]
*) mod_rewrite: Remove locking for writing to the rewritelog.
PR 46942 [Dan Poirier <poirier pobox.com>]
*) mod_alias: check sanity in Redirect arguments.
PR 44729 [Sönke Tesch <st kino-fahrplan.de>, Jim Jagielski]
*) mod_proxy_http: fix Host: header for literal IPv6 addresses.
PR 47177 [Carlos Garcia Braschi <cgbraschi gmail.com>]
*) mod_cache: Add CacheIgnoreURLSessionIdentifiers directive to ignore
defined session identifiers encoded in the URL when caching.
[Ruediger Pluem]
*) mod_rewrite: Fix the error string returned by RewriteRule.
RewriteRule returned "RewriteCond: bad flag delimiters" when the 3rd
argument of RewriteRule was not started with "[" or not ended with "]".
PR 45082 [Vitaly Polonetsky <m_vitaly topixoft.com>]
*) Windows: Fix usage message.
[Rainer Jung]
*) apachectl: When passing through arguments to httpd in
non-SysV mode, use the "$@" syntax to preserve arguments.
[Eric Covener]
*) mod_dbd: add DBDInitSQL directive to enable SQL statements to
be run when a connection is opened. PR 46827
[Marko Kevac <mkevac gmail.com>]
*) mod_cgid: Improve handling of long AF_UNIX socket names (ScriptSock).
PR 47037. [Jeff Trawick]
*) mod_proxy_ajp: Check more strictly that the backend follows the AJP
protocol. [Mladen Turk]
*) mod_proxy_ajp: Forward remote port information by default.
[Rainer Jung]
*) Allow MPMs to be loaded dynamically, as with most other modules. Use
--enable-mpms-shared={list|"all"} to enable. This required changes to
the MPM interfaces. Removed: mpm.h, mpm_default.h (as an installed
header), APACHE_MPM_DIR, MPM_NAME, ap_threads_per_child,
ap_max_daemons_limit, ap_my_generation, etc. ap_mpm_query() can't be
called until after the register-hooks phase. [Jeff Trawick]
*) mod_ssl: Add SSLProxyCheckPeerExpire and SSLProxyCheckPeerCN directives
to enable stricter checking of remote server certificates.
[Ruediger Pluem]
*) ab: Fix a 100% CPU loop on platforms where a failed non-blocking connect
returns EINPROGRESS and a subsequent poll() returns only POLLERR.
Observed on HP-UX. [Eric Covener]
*) Remove broken support for BeOS, TPF, and even older platforms such
as A/UX, Next, and Tandem. [Jeff Trawick]
*) mod_proxy_ftp: Add ProxyFtpListOnWildcard directive to allow files with
globbing characters to be retrieved instead of converted into a
directory listing. PR 46789 [Dan Poirier <poirier pobox.com>]
*) Provide ap_retained_data_create()/ap_retained_data_get() for preservation
of module state across unload/load. [Jeff Trawick]
*) mod_substitute: Fix a memory leak. PR 44948
[Dan Poirier <poirier pobox.com>]
Changes with Apache 2.3.2
*) mod_mime_magic: Fix detection of compressed content. [Rainer Jung]
*) mod_negotiation: Escape pathes of filenames in 406 responses to avoid
HTML injections and HTTP response splitting. PR 46837.
[Geoff Keating <geoffk apple.com>]
*) mod_ssl: add support for type-safe STACK constructs in OpenSSL
development HEAD. PR 45521. [Kaspar Brand, Sander Temme]
*) ab: Fix maintenance of the pollset to resolve EALREADY errors
with kqueue (BSD/OS X) and excessive CPU with event ports (Solaris).
PR 44584. Use APR_POLLSET_NOCOPY for better performance with some
pollset implementations. [Jeff Trawick]
*) mod_disk_cache: The module now turns off sendfile support if
'EnableSendfile off' is defined globally. [Lars Eilebrecht]
*) mod_deflate: Adjust content metadata before bailing out on 304
responses so that the metadata does not differ from 200 response.
[Roy T. Fielding]
*) mod_deflate: Fix creation of invalid Etag headers. We now make sure
that the Etag value is properly quoted when adding the gzip marker.
PR 39727, 45023. [Lars Eilebrecht, Roy T. Fielding]
*) Added 20x22 icons for ODF, SVG, and XML documents. PR 37185.
[Peter Harlow]
*) Disabled DefaultType directive and removed ap_default_type()
from core. We now exclude Content-Type from responses for which
a media type has not been configured via mime.types, AddType,
ForceType, or some other mechanism. PR 13986. [Roy T. Fielding]
*) mod_rewrite: Add IPV6 variable to RewriteCond
[Ryan Phillips <ryan-apache trolocsis.com>]
*) core: Enhance KeepAliveTimeout to support a value in milliseconds.
PR 46275. [Takashi Sato]
*) rotatelogs: Allow size units B, K, M, G and combination of
time and size based rotation. [Rainer Jung]
*) rotatelogs: Add flag for verbose (debug) output. [Rainer Jung]
*) mod_ssl: Fix merging of SSLRenegBufferSize directive. PR 46508
[<tlhackque yahoo.com>]
*) core: Translate the the status line to ASCII on EBCDIC platforms in
ap_send_interim_response() and for locally generated "100 Continue"
responses. [Eric Covener]
*) prefork: Fix child process hang during graceful restart/stop in
configurations with multiple listening sockets. PR 42829. [Joe Orton,
Jeff Trawick]
*) mod_session_crypto: Ensure that SessionCryptoDriver can only be
set in the global scope. [Graham Leggett]
*) mod_ext_filter: We need to detect failure to startup the filter
program (a mangled response is not acceptable). Fix to detect
failure, and offer configuration option either to abort or
to remove the filter and continue.
PR 41120 [Nick Kew]
*) mod_session_crypto: Rewrite the session_crypto module against the
apr_crypto API. [Graham Leggett]
*) mod_auth_form: Fix a pool lifetime issue, don't remove the subrequest
until the main request is cleaned up. [Graham Leggett]
Changes with Apache 2.3.1
*) ap_slotmem: Add in new slot-based memory access API impl., including
2 providers (mod_sharedmem and mod_plainmem) [Jim Jagielski,
Jean-Frederic Clere, Brian Akins <brian.akins turner.com>]
*) mod_include: support generating non-ASCII characters as entities in SSI
PR 25202 [Nick Kew]
*) core/utils: Enhance ap_escape_html API to support escaping non-ASCII chars
PR 25202 [Nick Kew]
*) mod_rewrite: fix "B" flag breakage by reverting r5589343
PR 45529 [Bob Ionescu <bobsiegen googlemail.com>]
*) CGI: return 504 (Gateway timeout) rather than 500 when a script
times out before returning status line/headers.
PR 42190 [Nick Kew]
*) mod_cgid: fix segfault problem on solaris.
PR 39332 [Masaoki Kobayashi <masaoki techfirm.co.jp>]
*) mod_proxy_scgi: Added. [André Malo]
*) mod_cache: Introduce 'no-cache' per-request environment variable
to prevent the saving of an otherwise cacheable response.
[Eric Covener]
*) mod_rewrite: Introduce DiscardPathInfo|DPI flag to stop the troublesome
way that per-directory rewrites append the previous notion of PATH_INFO
to each substitution before evaluating subsequent rules.
PR 38642 [Eric Covener]
*) mod_cgid: Do not add an empty argument when calling the CGI script.
PR 46380 [Ruediger Pluem]
*) scoreboard: Remove unused sb_type from process_score.
[Torsten Foertsch <torsten.foertsch gmx.net>, Chris Darroch]
*) mod_ssl: Add SSLRenegBufferSize directive to allow changing the
size of the buffer used for the request-body where necessary
during a per-dir renegotiation. PR 39243. [Joe Orton]
*) mod_proxy_fdpass: New module to pass a client connection over to a separate
process that is reading from a unix daemon socket.
*) mod_ssl: Improve environment variable extraction to be more
efficient and to correctly handle DNs with duplicate tags.
PR 45975. [Joe Orton]
*) Remove the obsolete serial attribute from the RPM spec file. Compile
against the external pcre. Add missing binaries fcgistarter, and
mod_socache* and mod_session*. [Graham Leggett]
Changes with Apache 2.3.0
*) mod_ratelimit: New module to do bandwidth rate limiting. [Paul Querna]
*) Remove X-Pad header which was added as a work around to a bug in
Netscape 2.x to 4.0b2. [Takashi Sato <takashi lans-tv.com>]
*) Add DTrace Statically Defined Tracing (SDT) probes.
[Theo Schlossnagle <jesus omniti.com>, Paul Querna]
*) mod_proxy_balancer: Move all load balancing implementations
as individual, self-contained mod_proxy submodules under
modules/proxy/balancers [Jim Jagielski]
*) Rename APIs to include ap_ prefix:
find_child_by_pid -> ap_find_child_by_pid
suck_in_APR -> ap_suck_in_APR
sys_privileges_handlers -> ap_sys_privileges_handlers
unixd_accept -> ap_unixd_accept
unixd_config -> ap_unixd_config
unixd_killpg -> ap_unixd_killpg
unixd_set_global_mutex_perms -> ap_unixd_set_global_mutex_perms
unixd_set_proc_mutex_perms -> ap_unixd_set_proc_mutex_perms
unixd_set_rlimit -> ap_unixd_set_rlimit
[Paul Querna]
*) mod_lbmethod_heartbeat: New module to load balance mod_proxy workers
based on heartbeats. [Paul Querna]
*) mod_heartmonitor: New module to collect heartbeats, and write out a file
so that other modules can load balance traffic as needed. [Paul Querna]
*) mod_heartbeat: New module to generate multicast heartbeats to know if a
server is online. [Paul Querna]
*) mod_buffer: Honour the flush bucket and flush the buffer in the
input filter. Make sure that metadata buckets are written to
the buffer, not to the final brigade. [Graham Leggett]
*) mod_buffer: Optimise the buffering of heap buckets when the heap
buckets stay exactly APR_BUCKET_BUFF_SIZE long. [Graham Leggett,
Ruediger Pluem]
*) mod_buffer: Optional support for buffering of the input and output
filter stacks. Can collapse many small buckets into fewer larger
buckets, and prevents excessively small chunks being sent over
the wire. [Graham Leggett]
*) mod_privileges: new module to make httpd on Solaris privileges-aware
and to enable different virtualhosts to run with different
privileges and Unix user/group IDs [Nick Kew]
*) mod_mem_cache: this module has been removed. [William Rowe]
*) authn/z: Remove mod_authn_default and mod_authz_default.
[Chris Darroch]
*) authz: Fix handling of authz configurations, make default authz
logic replicate 2.2.x authz logic, and replace <Satisfy*>, Reject,
and AuthzMergeRules directives with Match, <Match*>, and AuthzMerge
directives. [Chris Darroch]
*) mod_authn_core: Prevent crash when provider alias created to
provider which is not yet registered. [Chris Darroch]
*) mod_authn_core: Add AuthType of None to support disabling
authentication. [Chris Darroch]
*) core: Allow <Limit> and <LimitExcept> directives to nest, and
constrain their use to conform with that of other access control
and authorization directives. [Chris Darroch]
*) unixd: turn existing code into a module, and turn the set user/group
and chroot into a child_init function. [Nick Kew]
*) mod_dir: Support "DirectoryIndex disabled"
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>]
*) mod_authnz_ldap: don't return NULL-valued environment variables to
other modules. PR 39045 [Francois Pesce <francois.pesce gmail.com>]
*) Don't adjust case in pathname components that are not of interest
to mod_mime. Fixes mod_negotiation's use of such components.
PR 43250 [Basant Kumar Kukreja <basant.kukreja sun.com>]
*) Be tolerant in what you accept - accept slightly broken
status lines from a backend provided they include a valid status code.
PR 44995 [Rainer Jung <rainer.jung kippdata.de>]
*) New module mod_sed: filter Request/Response bodies through sed
[Basant Kumar Kukreja <basant.kukreja sun.com>]
*) mod_auth_form: Make sure that basic authentication is correctly
faked directly after login. [Graham Leggett]
*) mod_session_cookie, mod_session_dbd: Make sure cookies are set both
within the output headers and error output headers, so that the
session is maintained across redirects. [Graham Leggett]
*) mod_auth_form: Make sure the logged in user is populated correctly
after a form login. Fixes a missing REMOTE_USER variable directly
following a login. [Graham Leggett]
*) mod_session_cookie: Make sure that cookie attributes are correctly
included in the blank cookie when cookies are removed. This fixes an
inability to log out when using mod_auth_form. [Graham Leggett]
*) mod_session: Prevent a segfault when a CGI script sets a cookie with a
null value. [David Shane Holden <dpejesh apache.org>]
*) core, authn/z: Determine registered authn/z providers directly in
ap_setup_auth_internal(), which allows optional functions that just
wrapped ap_list_provider_names() to be removed from authn/z modules.
[Chris Darroch]
*) authn/z: Convert common provider version strings to macros.
[Chris Darroch]
*) core: When testing for slash-terminated configuration paths in
ap_location_walk(), don't look past the start of an empty string
such as that created by a <Location ""> directive.
[Chris Darroch]
*) core, mod_proxy: If a kept_body is present, it becomes safe for
subrequests to support message bodies. Make sure that safety
checks within the core and within the proxy are not triggered
when kept_body is present. This makes it possible to embed
proxied POST requests within mod_include. [Graham Leggett]
*) mod_auth_form: Make sure the input filter stack is properly set
up before reading the login form. Make sure the kept body filter
is correctly inserted to ensure the body can be read a second
time safely should the authn be successful. [Graham Leggett,
Ruediger Pluem]
*) mod_request: Insert the KEPT_BODY filter via the insert_filter
hook instead of during fixups. Add a safety check to ensure the
filters cannot be inserted more than once. [Graham Leggett,
Ruediger Pluem]
*) ap_cache_cacheable_headers_out() will (now) always
merge an error headers _before_ clearing them and _before_
merging in the actual entity headers and doing normal
hop-by-hop cleansing. [Dirk-Willem van Gulik].
*) cache: retire ap_cache_cacheable_hdrs_out() which was used
for both in- and out-put headers; and replace it by a single
ap_cache_cacheable_headers() wrapped in a in- and out-put
specific ap_cache_cacheable_headers_in()/out(). The latter
which will also merge error and ensure content-type. To keep
cache modules consistent with ease. This API change bumps
up the minor MM by one [Dirk-Willem van Gulik].
*) Move the KeptBodySize directive, kept_body filters and the
ap_parse_request_body function out of the http module and into a
new module called mod_request, reducing the size of the core.
[Graham Leggett]
*) mod_dbd: Handle integer configuration directive parameters with a
dedicated function.
*) Change the directives within the mod_session* modules to be valid
both inside and outside the location/directory sections, as
suggested by wrowe. [Graham Leggett]
*) mod_auth_form: Add a module capable of allowing end users to log
in using an HTML form, storing the credentials within mod_session.
[Graham Leggett]
*) Add a function to the http filters that is able to parse an HTML
form request with the type of application/x-www-form-urlencoded.
[Graham Leggett]
*) mod_session_crypto: Initialise SSL in the post config hook.
[Ruediger Pluem, Graham Leggett]
*) mod_session_dbd: Add a session implementation capable of storing
session information in a SQL database via the dbd interface. Useful
for sites where session privacy is important. [Graham Leggett]
*) mod_session_crypto: Add a session encoding implementation capable
of encrypting and decrypting sessions wherever they may be stored.
Introduces a level of privacy when sessions are stored on the
browser. [Graham Leggett]
*) mod_session_cookie: Add a session implementation capable of storing
session information within cookies on the browser. Useful for high
volume sites where server bound sessions are too resource intensive.
[Graham Leggett]
*) mod_session: Add a generic session interface to unify the different
attempts at saving persistent sessions across requests.
[Graham Leggett]
*) core, authn/z: Avoid calling access control hooks for internal requests
with configurations which match those of initial request. Revert to
original behaviour (call access control hooks for internal requests
with URIs different from initial request) if any access control hooks or
providers are not registered as permitting this optimization.
Introduce wrappers for access control hook and provider registration
which can accept additional mode and flag data. [Chris Darroch]
*) Introduced ap_expr API for expression evaluation.
This is adapted from mod_include, which is the first module
to use the new API.
[Nick Kew]
*) mod_authz_dbd: When redirecting after successful login/logout per
AuthzDBDRedirectQuery, do not report authorization failure, and use
first row returned by database query instead of last row.
[Chris Darroch]
*) mod_ldap: Correctly return all requested attribute values
when some attributes have a null value.
PR 44560 [Anders Kaseorg <anders kaseorg.com>]
*) core: check symlink ownership if both FollowSymlinks and
SymlinksIfOwnerMatch are set [Nick Kew]
*) core: fix origin checking in SymlinksIfOwnerMatch
PR 36783 [Robert L Mathews <rob-apache.org.bugs tigertech.net>]
*) Activate mod_cache, mod_file_cache and mod_disk_cache as part of the
'most' set for '--enable-modules' and '--enable-shared-mods'. Include
mod_mem_cache in 'all' as well. [Dirk-Willem van Gulik]
*) Also install mod_so.h, mod_rewrite.h and mod_cache.h; as these
contain public function declarations which are useful for
third party module authors. PR 42431 [Dirk-Willem van Gulik].
*) mod_dir, mod_negotiation: pass the output filter information
to newly created sub requests; as these are later on used
as true requests with an internal redirect. This allows for
mod_cache et.al. to trap the results of the redirect.
[Dirk-Willem van Gulik, Ruediger Pluem]
*) mod_ldap: Add support (taking advantage of the new APR capability)
for ldap rebind callback while chasing referrals. This allows direct
searches on LDAP servers (in particular MS Active Directory 2003+)
using referrals without the use of the global catalog.
PRs 26538, 40268, and 42557 [Paul J. Reder]
*) ApacheMonitor.exe: Introduce --kill argument for use by the
installer. This will permit the installation tool to remove
all running instances before attempting to remove the .exe.
[William Rowe]
*) mod_ssl: Add support for OCSP validation of client certificates.
PR 41123. [Marc Stern <marc.stern approach.be>, Joe Orton]
*) mod_serf: New module for Reverse Proxying. [Paul Querna]
*) core: Add the option to keep aside a request body up to a certain
size that would otherwise be discarded, to be consumed by filters
such as mod_include. When enabled for a directory, POST requests
to shtml files can be passed through to embedded scripts as POST
requests, rather being downgraded to GET requests. [Graham Leggett]
*) mod_ssl: Fix TLS upgrade (RFC 2817) support. PR 41231. [Joe Orton]
*) scoreboard: Correctly declare ap_time_process_request.
PR 43789 [Tom Donovan <Tom.Donovan acm.org>]
*) core; scoreboard: ap_get_scoreboard_worker(sbh) now takes the sbh member
from the connection rec, ap_get_scoreboard_worker(proc, thread) will now
provide the unusual legacy lookup. [William Rowe]
*) mpm winnt: fix null pointer dereference
PR 42572 [Davi Arnaut]
*) mod_authnz_ldap, mod_authn_dbd: Tidy up the code to expose authn
parameters to the environment. Improve portability to
EBCDIC machines by using apr_toupper(). [Martin Kraemer]
*) mod_ldap, mod_authnz_ldap: Add support for nested groups (i.e. the ability
to authorize an authenticated user via a "require ldap-group X" directive
where the user is not in group X, but is in a subgroup contained in X.
PR 42891 [Paul J. Reder]
*) mod_ssl: Add support for caching SSL Sessions in memcached. [Paul Querna]
*) apxs: Enhance -q flag to print all known variables and their values
when invoked without variable name(s).
[William Rowe, Sander Temme]
*) apxs: Eliminate run-time check for mod_so. PR 40653.
[David M. Lee <dmlee crossroads.com>]
*) beos MPM: Create pmain pool and run modules' child_init hooks when
entering ap_mpm_run(), then destroy pmain when exiting ap_mpm_run().
[Chris Darroch]
*) netware MPM: Destroy pmain pool when exiting ap_mpm_run() so that
cleanups registered in modules' child_init hooks are performed.
[Chris Darroch]
*) Fix issue which could cause error messages to be written to access logs
on Win32. PR 40476. [Tom Donovan <Tom.Donovan acm.org>]
*) The LockFile directive, which specifies the location of
the accept() mutex lockfile, is deprecated. Instead, the
AcceptMutex directive now takes an optional lockfile
location parameter, ala SSLMutex. [Jim Jagielski]
*) mod_authn_dbd: Export any additional columns queried in the SQL select
into the environment with the name AUTHENTICATE_<COLUMN>. This brings
mod_authn_dbd behaviour in line with mod_authnz_ldap. [Graham Leggett]
*) mod_dbd: Key the storage of prepared statements on the hex string
value of server_rec, rather than the server name, as the server name
may change (eg when the server name is set) at any time, causing
weird behaviour in modules dependent on mod_dbd. [Graham Leggett]
*) mod_proxy_fcgi: Added win32 build. [Mladen Turk]
*) sendfile_nonblocking() takes the _brigade_ as an argument, gets
the first bucket from the brigade, finds it not to be a FILE
bucket and barfs. The fix is to pass a bucket rather than a brigade.
[Niklas Edmundsson <nikke acc.umu.se>]
*) mod_rewrite: support rewritemap by SQL query [Nick Kew]
*) ap_get_server_version() has been removed. Third-party modules must
now use ap_get_server_banner() or ap_get_server_description().
[Jeff Trawick]
*) All MPMs: Introduce a check_config phase between pre_config and
open_logs, to allow modules to review interdependent configuration
directive values and adjust them while messages can still be logged
to the console. Handle relevant MPM directives during this phase
and format messages for both the console and the error log, as
appropriate. [Chris Darroch]
*) core: Do not allow internal redirects like the DirectoryIndex of mod_dir
to circumvent the symbolic link checks imposed by FollowSymLinks and
SymLinksIfOwnerMatch. [Nick Kew, Ruediger Pluem, William Rowe]
*) New SSLLogLevelDebugDump [ None (default) | IO (not bytes) | Bytes ]
configures the I/O Dump of SSL traffic, when LogLevel is set to Debug.
The default is none as this is far greater debugging resolution than
the typical administrator is prepared to untangle. [William Rowe]
*) mod_disk_cache: If possible, check if the size of an object to cache is
within the configured boundaries before actually saving data.
[Niklas Edmundsson <nikke acc.umu.se>]
*) Worker and event MPMs: Remove improper scoreboard updates which were
performed in the event of a fork() failure. [Chris Darroch]
*) Add support for fcgi:// proxies to mod_rewrite.
[Markus Schiegl <ms schiegl.com>]
*) Remove incorrect comments from scoreboard.h regarding conditional
loading of worker_score structure with mod_status, and remove unused
definitions relating to old life_status field.
[Chris Darroch <chrisd pearsoncmg.com>]
*) Remove allocation of memory for unused array of lb_score pointers
in ap_init_scoreboard(). [Chris Darroch <chrisd pearsoncmg.com>]
*) Add mod_proxy_fcgi, a FastCGI back end for mod_proxy.
[Garrett Rooney, Jim Jagielski, Paul Querna]
*) Event MPM: Fill in the scoreboard's tid field. PR 38736.
[Chris Darroch <chrisd pearsoncmg.com>]
*) mod_charset_lite: Remove Content-Length when output filter can
invalidate it. Warn when input filter can invalidate it.
[Jeff Trawick]
*) Authz: Add the new module mod_authn_core that will provide common
authn directives such as 'AuthType', 'AuthName'. Move the directives
'AuthType' and 'AuthName' out of the core module and merge mod_authz_alias
into mod_authn_core. [Brad Nicholes]
*) Authz: Move the directives 'Order', 'Allow', 'Deny' and 'Satisfy'
into the new module mod_access_compat which can be loaded to provide
support for these directives.
[Brad Nicholes]
*) Authz: Move the 'Require' directive from the core module as well as
add the directives '<SatisfyAll>', '<SatisfyOne>', '<RequireAlias>'
and 'Reject' to mod_authz_core. The new directives introduce 'AND/OR'
logic into the authorization processing. [Brad Nicholes]
*) Authz: Add the new module mod_authz_core which acts as the
authorization provider vector and contains common authz
directives. [Brad Nicholes]
*) Authz: Renamed mod_authz_dbm authz providers from 'group' and
'file-group' to 'dbm-group' and 'dbm-file-group'. [Brad Nicholes]
*) Authz: Added the new authz providers 'env', 'ip', 'host', 'all' to handle
host-based access control provided by mod_authz_host and invoked
through the 'Require' directive. [Brad Nicholes]
*) Authz: Convert all of the authz modules from hook based to
provider based. [Brad Nicholes]
*) mod_cache: Add CacheMinExpire directive to set the minimum time in
seconds to cache a document.
[Brian Akins <brian.akins turner.com>, Ruediger Pluem]
*) mod_authz_dbd: SQL authz with Login/Session support [Nick Kew]
*) Fix typo in ProxyStatus syntax error message.
[Christophe Jaillet <christophe.jaillet wanadoo.fr>]
*) Asynchronous write completion for the Event MPM. [Brian Pane]
*) Added an End-Of-Request bucket type. The logging of a request and
the freeing of its pool are now done when the EOR bucket is destroyed.
This has the effect of delaying the logging until right after the last
of the response is sent; ap_core_output_filter() calls the access logger
indirectly when it destroys the EOR bucket. [Brian Pane]
*) Rewrite of logresolve support utility: IPv6 addresses are now supported
and the format of statistical output has changed. [Colm MacCarthaigh]
*) Rewrite of ap_coreoutput_filter to do nonblocking writes [Brian Pane]
*) Added new connection states for handler and write completion
[Brian Pane]
*) mod_cgid: Refuse to work on Solaris 10 due to OS bugs. PR 34264.
[Justin Erenkrantz]
*) Teach mod_ssl to use arbitrary OIDs in an SSLRequire directive,
allowing string-valued client certificate attributes to be used for
access control, as in: SSLRequire "value" in OID("1.3.6.1.4.1.18060.1")
[Martin Kraemer, David Reid]
[Apache 2.3.0-dev includes those bug fixes and changes with the
Apache 2.2.xx tree as documented, and except as noted, below.]
Changes with Apache 2.2.x and later:
*) http://svn.apache.org/viewvc/httpd/httpd/branches/2.2.x/CHANGES?view=markup
Changes with Apache 2.0.x and later:
*) http://svn.apache.org/viewvc/httpd/httpd/branches/2.0.x/CHANGES?view=markup