0N/A -*- coding: utf-8 -*-
0N/AChanges with Apache 2.5.0
0N/A *) mod_authnz_ldap: Fail explicitly when the filter is too long. Remove
0N/A unnecessary apr_pstrdup() and strlen(). [Graham Leggett]
0N/A *) mod_proxy_fcgi: Don't segfault when failing to connect to the backend.
0N/A *) Add the ldap-search option to mod_authnz_ldap, allowing authorization
0N/A to be based on arbitrary expressions that do not include the username.
0N/A *) Add the ldap function to the expression API, allowing LDAP filters and
0N/A distinguished names based on expressions to be escaped correctly to
0N/A guard against LDAP injection. [Graham Leggett]
0N/A *) Add module mod_ssl_ct, which provides an implementation of Certificate
0N/A Transparency (RFC 6962) for httpd. [Jeff Trawick]
0N/A *) mod_cache: Fix AH00784 errors on Windows when the the CacheLock directive
0N/A is enabled. [Eric Covener]
0N/A *) mod_proxy: Preserve original request headers even if they differ
0N/A from the ones to be forwarded to the backend. PR 45387.
0N/A *) mod_proxy: When
ping/pong is configured for a worker, don't send or
0N/A forward "100 Continue" (interim) response to the client if it does
0N/A not expect one. [Yann Ylavic]
0N/A *) mod_remoteip: Prevent an external proxy from presenting an internal
0N/A proxy. PR 55962. [Mike Rumph]
0N/A *) mod_ssl: Add hooks to allow other modules to perform processing at
0N/A several stages of initialization and connection handling. See
0N/A *) mod_proxy_wstunnel: Avoid sending error responses down an upgraded
0N/A websockets connection as it is being close down. [Eric Covener]
0N/A *) mod_proxy_wstunnel: Allow the administrator to cap the amount
0N/A of time a synchronous websockets connection stays idle with
0N/A ProxyWebsocketIdleTimeout. [Eric Covener]
0N/A *) mod_proxy_wstunnel: Change to opt-in for asynchronous support, adding
0N/A directives ProxyWebsocketAsync and ProxyWebsocketAsyncDelay.
0N/A *) mod_proxy_wstunnel: Stop leaking websockets backend connections under
0N/A event MPM (trunk-only). [Eric Covener]
0N/A *) mod_proxy_wstunnel: Don't issue AH02447 and log a 500 on routine
0N/A hangups from websockets origin servers. PR 56299
0N/A [Yann Ylavic, Edward Lu <Chaosed0 gmail com>, Eric Covener]
0N/A *) mod_proxy_wstunnel: Don't pool backend websockets connections,
0N/A because we need to handshake every time. PR 55890.
0N/A *) mod_proxy_http: Add detach_backend hook (potentially usable
0N/A in other proxy scheme handlers). [Jeff Trawick]
0N/A *) mod_deflate: Add DeflateAlterETag to control how the ETag
0N/A is modified. The 'NoChange' parameter mimics
2.2.x behavior.
0N/A PR 45023, PR 39727. [Eric Covener]
0N/A *) mod_rewrite: Add 'BNF' (backreferences-no-plus) flag to RewriteRule to
0N/A allow spaces in backreferences to be encoded as %20 instead of '+'.
0N/A *) mod_expires: don't add Expires header to error responses (4xx/5xx),
0N/A be they generated or forwarded. PR 55669. [ Yann Ylavic ]
0N/A *) mod_rewrite: Support an optional list of characters to escape in the
0N/A argument for the 'B' (escape backreferences) flag. [Eric Covener]
0N/A *) mod_ssl: Add SSLOCSPUseRequestNonce directive to control whether or not
0N/A OCSP requests should use a nonce to be checked against the responder's
0N/A one. PR 56233. [ Yann Ylavic ]
0N/A *) mod_dir: Default to 2.2-like behavior and skip execution when method is
0N/A neither GET nor POST, such as for DAV requests. PR 54914. [Chris Darroch]
171N/A *) mod_rewrite: Rename the handler that does per-directory internal
0N/A redirects to "rewrite-redirect-handler" from "redirect-handler" so
171N/A it is less ambiguous and less likely to be reused. [Eric Covener]
171N/A *) mod_rewrite: Protect against looping with the [N] flag by enforcing a
0N/A default limit of 10000 iterations, and allowing each rule to change its
0N/A limit. [Eric Covener]
0N/A *) mod_ssl: Fix config merging of SSLOCSPEnable and SSLOCSPOverrideResponder.
0N/A *) Add HttpContentLengthHeadZero and HttpExpectStrict directives.
0N/A [Yehuda Sadeh <yehuda inktank com>, Justin Erenkrantz]
0N/A *) FreeBSD: Disable IPv4-mapped listening sockets by default for versions
0N/A 5+ instead of just for FreeBSD 5. PR 53824. [Jeff Trawick]
0N/A *) mod_auth_form: Add a debug message when the fields on a form are not
0N/A recognised. [Graham Leggett]
0N/A *) mod_ssl: Add -t -DDUMP_CA_CERTS option which dumps the filenames of all
0N/A configured SSL CA certificates to stdout the same way as DUMP_CERTS does.
270N/A *) mod_ssl: Don't flush when an EOS is received. Prepares mod_ssl
272N/A to support write completion. [Graham Leggett]
270N/A *) core: Add parse_errorlog_arg callback to ap_errorlog_provider
0N/A to allow providers to check the ErrorLog argument. [Jan Kaluza]
0N/A *) mod_cgid: Use the servers Timeout for each read from a CGI script,
0N/A allow override with new CGIDRequestTimeout directive. PR43494
0N/A [Eric Covener, Toshikuni Fukaya <toshikuni-fukaya cybozu co jp>]
0N/A *) core: Add missing Reason-Phrase in HTTP response headers.
0N/A PR 54946. [Rainer Jung]
0N/A *) core: ensure any abnormal exit is reported to stderr if it's a tty.
285N/A *) mod_lua: Let the Inter-VM
get/set functions work with a global
285N/A shared memory pool instead of a per-process pool. [Daniel Gruno]
285N/A *) ldap: Support ldaps when using the Microsoft LDAP SDK.
285N/A PR 54626. [Jean-Frederic Clere]
0N/A *) mod_proxy: Add ap_connection_reusable() for checking if a connection
0N/A is reusable as of this point in processing. [Jeff Trawick]
0N/A *) mod_authnz_ldap: Change default value of AuthLDAPMaxSubGroupDepth to 0
0N/A to avoid performance problems when subgroups aren't in use. [Eric Covener]
440N/A *) mod_syslog: New module implementing syslog ap_error_log provider.
440N/A Previously, this code was part of core, now it's in separate module.
440N/A *) core: Add ap_errorlog_provider to make ErrorLog logging modular. Move
440N/A syslog support from core to new mod_syslog. [Jan Kaluza]
440N/A *) WinNT MPM: If ap_run_pre_connection() fails or sets c->aborted, don't
440N/A save the socket for reuse by the next worker as if it were an
440N/A APR_SO_DISCONNECTED socket. Restores 2.2 behavior. [Eric Covener]
440N/A *) mod_status, mod_echo: Fix the display of client addresses.
440N/A They were truncated to 31 characters which is not enough for IPv6 addresses.
440N/A PR 54848 [Bernhard Schmidt <berni birkenwald de>]
440N/A *) core: Add ap_log_data(), ap_log_rdata(), etc. for logging buffers.
0N/A *) mod_unique_id: Use output of the PRNG rather than IP address and
0N/A pid, avoiding sleep() call and possible DNS issues at startup,
0N/A plus improving randomness for IPv6-only hosts.
0N/A *) mod_authnz_ldap: Support primitive LDAP servers that do not accept
0N/A filters, such as "SDBM-backed LDAP" on
z/OS, by allowing a special
0N/A filter "none" to be specified in AuthLDAPURL. [Eric Covener]
0N/A *) mod_file_cache: mod_file_cache should be able to serve files that
0N/A haven't had a Content-Type set via
e.g. mod_mime. [Eric Covener]
0N/A *) core: merge AllowEncodedSlashes from the base configuration into
0N/A virtual hosts. [Eric Covener]
0N/A *) AIX: Install DSO's with "cp" instead of "install" in
instdso.sh 0N/A *) mod_ldap: Don't keep retrying if a new LDAP connection times out.
0N/A *) mod_deflate: permit compilation of mod_deflate against a zlib that has
0N/A been configured with -D Z_PREFIX, which redefines the token "deflate".
0N/A *) mod_auth_digest: Use the secret when generating nonces in all cases and
0N/A not only when AuthName is used in .htaccess files (this change may cause
0N/A problems if used with round robin load balancers). Don't regenerate the
0N/A secret on graceful restarts. PR 54637 [Stefan Fritsch]
0N/A *) core: Remove apr_brigade_flatten(), buffering and duplicated code
0N/A from the HTTP_IN filter, parse chunks in a single pass with zero copy.
0N/A Reduce memory usage by 48 bytes per request. [Graham Leggett]
0N/A *) core: Stop the HTTP_IN filter from attempting to write error buckets
0N/A to the output filters, which is bogus in the proxy case. Create a
0N/A clean mapping from APR codes to HTTP status codes, and use it where
0N/A needed. [Graham Leggett]
0N/A *) mod_proxy: Ensure network errors detected by the proxy are returned as
0N/A 504 Gateway Timout as opposed to 502 Bad Gateway, in order to be
0N/A compliant with RFC2616 14.9.4 Cache Revalidation and Reload Controls.
0N/A *) mod_dav: mod_dav overrides dav_fs response on PUT failure. PR 35981
0N/A *) core, mod_ssl: Enable the ability for a module to reverse the sense of
0N/A a poll event from a read to a write or vice versa. This is a step on
0N/A the way to allow mod_ssl taking full advantage of the event MPM.
0N/A *) mod_ldap: LDAP connections used for authentication were not respecting
0N/A LDAPConnectionPoolTimeout. PR 54587
0N/A *) core: ap_rgetline_core now pulls from r->proto_input_filters.
*) mod_proxy_html: process parsed comments immediately.
Fixes bug where parsed comments may be lost. [Nick Kew]
*) mod_proxy_html: introduce doctype for HTML 5 [Nick Kew]
*) mod_proxy_html: fix typo-bug processing "strict" vs "transitional"
*) core: Add option to add valgrind support. Use it to reduce false positive
warnings in mod_ssl. [Stefan Fritsch]
*) mod_authn_file, mod_authn_dbd, mod_authn_dbm, mod_authn_socache:
Cache the result of the most recent password hash verification for every
keep-alive connection. This saves some expensive calculations.
*) http: Remove support for Request-Range header sent by Navigator 2-3 and
*) core, http: Extend HttpProtocol with an option to enforce stricter HTTP
conformance or to only log the found problems. [Stefan Fritsch]
*) core: Correctly parse an IPv6 literal host specification in an absolute
URL in the request line. [Stefan Fritsch]
*) core: Add LogLevelOverride directive that allows to override the
loglevel for clients from certain IPs. This also works for things
like the SSL handshake where <If> LogLevel ... </If> is evaluated
too late. [Stefan Fritsch]
*) core: Add new directive Warning to issue warnings from a configuration
file. Both Warning and Error now generate a timestamped log message.
*) ap_expr: Add SERVER_PROTOCOL_VERSION, ..._MAJOR, and ..._MINOR
variables. [Stefan Fritsch]
*) core: New directive RegisterHttpMethod for registering non-standard
HTTP methods. [Stefan Fritsch]
*) core: New directive HttpProtocol which allows to disable HTTP/0.9
support. [Stefan Fritsch]
*) mod_allowhandlers: New module to forbid specific handlers for specific
directories. [Stefan Fritsch]
*) mod_systemd: New module, for integration with systemd on Linux.
*) WinNT MPM: Store pid and generation for each thread in scoreboard
to allow tracking of threads from exiting children via mod_status
or other such mechanisms. [Jeff Trawick]
- APIs: ap_log_pid(), ap_remove_pid, ap_read_pid()
- core: the scoreboard (ScoreBoardFile), pid file (PidFile), and
- mod_cache: thundering herd lock directory
- mod_lbmethod_heartbeat, mod_heartmonitor: heartbeat storage file
- mod_ldap: shared memory cache
- mod_socache_shmcb, mod_socache_dbm: shared memory or dbm for cache
*) suexec: Add --enable-suexec-capabilites support on Linux, to use
*) suexec: Add support for logging to syslog as an alternative to logging
to a file; configure --without-suexec-logfile --with-suexec-syslog.
*) mod_ssl: Add support for TLS Next Protocol Negotiation. PR 52210.
*) cross-compile: allow to provide CC_FOR_BUILD so that gen_test_char will
be compiled by the build compiler instead of the host compiler.
Also set CC_FOR_BUILD to 'cc' when cross-compilation is detected.
PR 51257. [Guenter Knauf]
*) core: In maintainer mode, replace apr_palloc with a version that
initializes the allocated memory with non-zero values, except if
AP_DEBUG_NO_ALLOC_POISON is defined. [Stefan Fritsch]
*) mod_policy: Add a new testing module to help server administrators
enforce a configurable level of protocol compliance on their
servers and application servers behind theirs. [Graham Leggett]
*) mod_firehose: Add a new debugging module able to record traffic
passing through the server in such a way that connections
and/or requests be reconstructed and replayed. [Graham Leggett]
[Apache 2.5.0-dev includes those bug fixes and changes with the
Apache
2.4.xx tree as documented below, except as noted.]
Changes with Apache
2.4.x and later:
Changes with Apache
2.2.x and later:
Changes with Apache
2.0.x and later: