CHANGES revision 0c8d93ab73ff534c3066192ac75d58ebebeca4c5
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.1.0-dev
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Remove entries to the current 2.0 section below, when backported]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Don't respect the Server header field as set by modules and CGIs.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce As with 1.3, for proxy requests any such field is from the origin
841179549b6433e782c164a562eb3422f603533dAndreas Gustafsson server; otherwise it will have our server info as controlled by
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson the ServerTokens directive. [Jeff Trawick]
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) Fix some broken log messages in WinNT MPM.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Juan Rivera <Juan.Rivera@citrix.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add support for "streamy" PROPFIND responses.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ben Collins-Sussman <sussman@collab.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add support for IMT minor-type wildcards (e.g., text/*) to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ExpiresByType. PR#7991 [Ken Coar]
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) Prevent the server from crashing when entering infinite loops. The
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce new LimitInternalRecursion directive configures limits of subsequent
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce internal redirects and nested subrequests, after which the request
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce will be aborted. PR 19753 (and probably others).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe, Jeff Trawick, Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_rewrite: Fix LA-U variable look ahead which didn't work correctly
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in directory context. Related to PR 8493. [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Ensure that ssl-std.conf is generated at configure time, and switch
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to using the expanded config variables to work the same as
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a problem with namespace mappings being dropped in mod_dav_fs;
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce if any property values were set which defined namespaces these
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce came out mangled in the PROPFIND response. PR 11637.
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson [Amit Athavale <amit_athavale@persistent.co.in>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) prefork MPM: Use the right permissions for the directory created
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for gprof support. [Jim Carlson <jcarlson@jnous.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the inability to log errors like exec failure in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_ext_filter/mod_cgi script children. This was broken after
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce such children stopped inheriting the error log handle.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a compile failure with recent OpenSSL and picky compilers
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (e.g., OpenSSL 0.9.7a and xlc_r on AIX). [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) OpenSSL headers should be included as "openssl/ssl.h", and not rely on
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the INCLUDE path to be defined properly.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR 11310. [Geoff Thrope <geoff@geoffthorpe.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Modify APACHE_CHECK_SSL_TOOLKIT to detect SSL-C. [Madhusudan Mathihalli]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Replace the APACHE_CHECK_SSL_TOOLKIT method with a cleaner one, using
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce autoconf tools (AC_CHECK_HEADER, AC_CHECK_LIB etc).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Geoff Thorpe <geoff@geoffthorpe.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) change directive name from 'compressionlevel' to 'deflatecompressionlevel'
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ian Holsman, Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_negotiation: quality values are now parsed independent from
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the current locale. level values are now really parsed as integers.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR 17564. [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added the WindowsSocketsWorkaround directive for Windows NT/2000/XP
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to work around problems with certain VPN and Firewall products that
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce have buggy AcceptEx implementations.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Allan Edwards w/ suggestions from Bill Stoddard & Bill Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Extend mod_negotiation to evaluate the environment variables
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce no-gzip and gzip-only-text/html the same way as mod_deflate does.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_rewrite: Fix some problems reporting errors with mapping
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce programs (RewriteMap prg:/something). [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Return 413 if chunk-ext-header is too long rather than reading from
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the truncated line. PR 15857. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow restart of httpd to occur even with syntax errors in the config
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce file. PR 16813. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Use APR_LAYOUT instead of APACHE_LAYOUT in configure. PR 15679.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove files on 'make distclean' that should be. PR 15592.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow apachectl to perform status with links and elinks as well.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Extend the SetEnvIf directive to capture subexpressions of the
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson matched value. [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_log_config change optional hook to return previous handler
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ian Holsman]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Forward port of mod_actions' ability to handle arbitrary methods
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce with the Script directive. [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Let suexec send a message to stderr, if it failed or its policy
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson was violated. This message appears in the error log and allows
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson for easier debugging. PR 5381, 7638, 8255, 10773. [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Modify buildconf to copy all required files into httpd's tree.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Thom May <thom@planetarytramp.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow mod_dav to do weak entity comparison functions.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Move RFC 1413 ident requests from core to new module mod_ident.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add mod_authz_owner - a forward port of "Require file-owner"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and "Require file-group", which was already present in version
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce 1.3.21. [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add mod_dav_lock - a generic subset of the DAV locking implementation.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Replace some of the mutex locking in the worker MPM with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce atomic operations for higher concurrency. [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow 'make depend' to work with non-GCC compilers.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If an httpd.conf has commented out AddModule directives,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce apxs -i -a will add an un-commented AddModule directive for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the new module, which breaks the config.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR: 11212 [Joe Orton]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix mod_proxy handling of filtered input bodies. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Move the check of the Expect request header field after the hook
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for ap_post_read_request, since that is the only opportunity for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce modules to handle Expect extensions. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Rewrite of aaa modules to an authn/authz model.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dirk-Willem van Gulik, Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Apache 2.1.0-dev includes those bug fixes and changes with the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Apache 2.0.xx tree as documented, and except as noted, below.]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.47
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) mod_negotiation: Introduce "prefer-language" environment variable,
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson which allows to influence the negotiation process on request basis
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson to prefer a certain language. [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make mod_expires' ExpiresByType work properly, including for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce dynamically-generated documents. [Ken Coar, Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.46
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) SECURITY [CAN-2003-0245]: Fixed a bug causing apr_pvsprintf() to crash
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce by sending an overly long string. This can be triggered remotely
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce through mod_dav, mod_ssl, and other mechanisms. Reported by David
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Endler <DEndler@iDefense.com>.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Joe Orton <jorton@redhat.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY [CAN-2003-0189]: Fixed a denial-of-service vulnerability
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce affecting basic authentication on Unix platforms related to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce thread-safety in apr_password_validate(). The problem was reported
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce by John Hughes <john.hughes@entegrity.com>.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix for mod_dav. Call the 'can_be_activity' callback, if provided,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce when a MKACTIVITY request comes in.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ben Collins-Sussman <sussman@collab.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Perform run-time query in apxs for apr and apr-util's includes.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) run libtool from the apr install directory (in case that is different
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce from the apache install directory) [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) configure.in: Play nice with libtool-1.5. [Wilfredo Sanchez]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If mod_mime_magic does not know the content-type, do not attempt to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce guess. PR 16908. [Andrew Gapon <agapon@telcordia.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) ssl session caching(shmht) : Fix a SEGV problem with SHMHT session
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce caching. PR 17864.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Andreas Leimbacher <andreasl67@yahoo.de>, Madhusudan Mathihalli]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a delete flag to htpasswd.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix mod_rewrite's handling of absolute URIs. The escaping routines
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce now work scheme dependent and the query string will only be
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce appended if supported by the particular scheme. [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add another check for already compressed content in mod_deflate.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR 19913. [Tsuyoshi SASAMOTO <nazonazo@super.win.ne.jp>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixes for VPATH builds; copying special.mk and any future .mk files
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce from the source tree as well as the build tree (now creates a usable
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce configuration for apxs), and eliminated redundant -I'nclude paths.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Code fixes, constness corrections and ssl_toolkit_compat.h updates
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson for SSLC and OpenSSL toolkit compatibility. Still work remains to
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson be done to cripple features based on the limitations of RSA's binary
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce distribution of their SSL-C toolkit.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe, Madhusudan Mathihalli, Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Linux 2.4+: If Apache is started as root and you code
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce CoreDumpDirectory, coredumps are enabled via the prctl() syscall.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) ap_get_mime_headers_core: allocate space for the trailing null
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce when folding is in effect.
c71787bd6356c92e9c7d0a174cd63ab17fcf34c6Eric Luce PR 18170 [Peter Mayne <PeterMayne@SPAM_SUX.ap.spherion.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix --enable-mods-shared=most and other variants. [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_log_config: Add the ability to log the id of the thread
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce processing the request via new %P formats. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Use appropriate language codes for Czech (cs) and Traditional Chinese
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (zh-tw) in default config files. PR 9427. [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_auth_ldap: Use generic whitespace character class when parsing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce "require" directives, instead of literal spaces only. PR 17135.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Hook mod_rewrite's type checker before mod_mime's one. That way the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce RewriteRule [T=...] Flag should work as expected now. PR 19626.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) htpasswd: Check the processed file on validity. If a line is not empty
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and not a comment, it must contain at least one colon. Otherwise exit
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce with error code 7. [Kris Verbeeck <Kris.Verbeeck@ubizen.com>, Thom May]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a problem that caused httpd to be linked with incorrect flags
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on some platforms when mod_so was enabled by default, breaking
b9c96971964d87c2705c8dc29300ff8103479ee6Andreas Gustafsson DSOs on AIX. PR 19012 [Jeff Trawick]
b9c96971964d87c2705c8dc29300ff8103479ee6Andreas Gustafsson *) By default, use the same CC and CPP with which APR was built.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce The user can override with CC and CPP environment variables.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix ap_construct_url() so that it surrounds IPv6 literal address
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce strings with []. This fixes certain types of redirection.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR 19207. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) forward port of buffer overflow fixes for htdigest. [Thom May]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added AllowEncodedSlashes directive to permit control of whether
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the server will accept encoded slashes ('%2f') in the URI path.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Default condition is off (the historical behaviour). This permits
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce environments in which the path-info needs to contain encoded
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce slashes. PR 543, 2389, 3581, 3589, 5687, 7066, 7865, 14639. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) When using Redirect in directory context, append requested query
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce string if there's no one supplied by configuration. PR 10961.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Unescape the supplied wildcard pattern in mod_autoindex. Otherwise
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson the pattern will not always match as desired. PR 12596.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Andr� Malo]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) mod_autoindex now emits and accepts modern query string parameter
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson delimiters (;). Thus column headers no longer contain unescaped
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ampersands. PR 10880 [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Enable ap_sock_disable_nagle for Windows. This along with the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce addition of APR_TCP_NODELAY_INHERITED to apr.hw will cause Nagle
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to be disabled for Windows. [Allan Edwards]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Correct a mis-correlation between mpm_common.c and mpm_common.h;
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This patch reverts us to pre-2.0.46 behavior, using the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ap_sock_disable_nagle noop macro, because ap_sock_disable_nagle
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce was never compiled on Win32. [Allan Edwards, William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a build problem with passing unsupported --enable-layout
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce args to apr and apr-util. This broke binbuild.sh as well as
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce user-specified layout parameters. PR 18649 [Justin Erenkrantz,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If a Date response header was already set in the headers array,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce this value was ignored in favour of the current time. This meant
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce that Date headers on proxied requests where rewritten when they
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce should not have been. PR: 14376 [Graham Leggett]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add code to buildconf that produces an httpd.spec file from
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce httpd.spec.in, using build/get-version.sh from APR.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Graham Leggett]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed a segfault when multiple ProxyBlock directives were used.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR: 19023 [Sami Tikka <sami.tikka@f-secure.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY [CAN-2003-0134] OS2: Fix a Denial of Service vulnerability
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce identified and reported by Robert Howard <rihoward@rawbw.com> that
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce where device names faulted the running OS2 worker process.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce The fix is actually in APR 0.9.4. [Brian Havard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Forward port: Escape special characters (especially control
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce characters) in mod_log_config to make a clear distinction between
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce client-supplied strings (with special characters) and server-side
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce strings. This was already introduced in version 1.3.25.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_deflate: Check also err_headers_out for an already set
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Content-Encoding: gzip header. This prevents gzip compressed content
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce from a CGI script from being compressed once more. PR 17797.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.45
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix possible segfaults under obscure error conditions within the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce cgid daemon. [Jeff Trawick, William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY [CAN-2003-0132]: Close a Denial of Service vulnerability
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce identified by David Endler <DEndler@iDefense.com> on all platforms.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce An unlimited stream of newlines were acceptable between requests
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce where each <lf> would allocate an 80 byte buffer, leading very
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce quickly to memory exahustion. [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added an rpm build script.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Graham Leggett, Joe Orton <jorton@redhat.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Simpler, faster code path for request header scanning [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY: Eliminated leaks of several file descriptors to child
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce processes, such as CGI scripts. This fix depends on the APR library
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce release 0.9.2 or later (0.9.3 was distributed with the httpd
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce source tarball for Apache 2.0.45.) PR 17206
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Christian Kratzer <ck@cksoft.de>, Bjoern A. Zeeb <bz@zabbadoz.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix path handling of mod_rewrite, especially on non-unix systems.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce There was some confusion between local paths and URL paths.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR 12902. [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Prevent endless loops of internal redirects in mod_rewrite by
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce aborting after exceeding a limit of internal redirects. The
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson limit defaults to 10 and can be changed using the RewriteOptions
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directive. PR 17462. [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: Avoid busy wait (consuming all the CPU idle cycles) when
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce all worker threads are busy.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Igor Nazarenko <igor_nazarenko@hotmail.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Keep the subrequest filter in place when a subrequest is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce redirected. PR 15423. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) you can now specify the compression level for mod_deflate.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ian Holsman, Stephen Pierzchala <stephen@pierzchala.com>,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Michael Schroepl <Michael.Schroepl@telekurs.de>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_deflate: Extend the DeflateFilterNote directive to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce allow accurate logging of the filter's in- and outstream.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow SSLMutex to select/use the full range of APR locking
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mechanisms available to it. Also, fix the bug that SSLMutex uses
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce APR_LOCK_DEFAULT no matter what. PR 8122 [Jim Jagielski,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce martin.t.kutschker@blackbox.net (Martin Kutschker)]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Restore the ability of htdigest.exe to create files that contain
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce more than one user. PR 12910. [Andr� Malo]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Improve binary compatibility of the core between debug (aka
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce maintainer-mode) and a non-debug compile.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Sander Striker]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) mod_usertrack: don't set the cookie in subrequests. This works
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson around the problem that cookies were set twice during fast internal
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce redirects. PR 13211. [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_autoindex no longer forgets output format and enabled version
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce sort in linked column headers. [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Use .sv instead of .se as extension for Swedish documents in the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce default configuration. PR 12877. [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Updated mod_ldap and mod_auth_ldap to support the Novell LDAP SDK SSL
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and standardized the LDAP SSL support across the various LDAP SDKs.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Isolated the SSL functionality to mod_ldap rather than speading it
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce across mod_auth_ldap and mod_ldap. Also added LDAPTrustedCA
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and LDAPTrustedCAType directives to mod_ldap to allow for a more
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce common method of specifying the SSL certificate.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dave Ward, Brad Nicholes]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed mod_ssl's SSLCertificateChain initialization to no longer
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce skip the first cert of the chain by default. This misbehavior
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce was introduced in 2.0.34. PR 14560 [Madhusudan Mathihalli]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_cgi, mod_cgid, mod_ext_filter: Log errors when scripts cannot
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce be started on Unix because of such problems as bad permissions,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce bad shebang line, etc. [Jeff Trawick]
ab19d688255b3a333a41b4ebe6f4213538e89c2aEric Luce *) Fix 64-bit problem in mod_ssl input logic.
ab19d688255b3a333a41b4ebe6f4213538e89c2aEric Luce [Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>]
ab19d688255b3a333a41b4ebe6f4213538e89c2aEric Luce *) Fix potential memory leaks in mod_deflate on malformed data. PR 16046.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Rewrite ap_xml_parse_input to use bucket brigades. PR 16134.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix segfault which occurred when a section in an included
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce configuration file was not closed. PR 17093. [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Enhance the behavior of mod_isapi's WriteClient() callback to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce provide better emulation for isapi modules that presume that the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce first WriteClient() call may send status and headers. An example
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of WriteClient() abuse is the foxisapi module, which relies on
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce that assumpion and now works. [William Rowe, Milan Kosina]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Check the return value of ap_run_pre_connection(). So if the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce pre_connection phase fails (without setting c->aborted)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ap_run_process_connection is not executed. [Stas Bekman]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed a problem with mod_ldap which caused it to fault when caching
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce was disabled. Needed to make sure that the code did not
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce attempt to use the cache if it didn't exist. Also fixed some memory
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce leaks which were due to not releasing LDAP resources on error
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce conditions. [Brad Nicholes]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Hook mod_proxy's fixup before mod_rewrite's fixup, so that by
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_rewrite proxied URLs will not be escaped accidentally by
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_proxy's fixup. PR 16368 [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) While processing filters on internal redirects, remember seen EOS
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce buckets also in the request structure of the redirect issuer(s). This
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce prevents filters (such as mod_deflate) from adding garbage to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce response. PR 14451. [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) suexec: Be more pedantic when cleaning environment. Clean it
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce immediately after startup. PR 2790, 10449.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Stewart <jws@purdue.edu>, Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix apxs to insert LoadModule directives only outside of sections.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR 8712, 9012. [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix suexec compile error under SUNOS4, where strerror() doesn't
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce exist. PR 5913, 9977.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jonathan W Miner <Jonathan.W.Miner@lmco.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix If header parsing when a non-mod_dav lock token is passed to it.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR 16452. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_auth_digest no longer tries to guess AuthDigestDomain, if it's
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce not specified. Now it assumes "/" as already documented. PR 16937.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Try to log an error if a piped log program fails. Try to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce restart a piped log program in more failure situations. Fix an
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce existing problem with error handling in piped_log_spawn(). Use
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce new APR apr_proc_create() features to prevent Apache from starting
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on Unix* in most cases where a piped log program can be started,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and add log messages for the other situations. *Other platforms
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce already failed Apache initialization if a piped log program
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce couldn't be started. PR 15761 [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix mod_cern_meta to not create empty metafiles when the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce metafile searched for does not exist. PR 12353
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Owen Rees <owen_rees@hp.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Introduce debugging symbols for Win32 release builds, both .pdb
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and .dbg files (older debuggers and Dr. Watson-type utilities
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on WinNT or Win9x don't support the newer .pdb flavor.)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Allen Edwards, William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix bug where 'Satisfy Any' without an AuthType lost all MIME
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce information (and more). Related to PR 9076. [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_file_cache: fix segfault serving mmaped cached files.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_file_cache: fixed a segfault when multiple MMapFile directives
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce were used. PR 16313. [Cliff Woolley]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a nasty segfault in mmap_bucket_setaside() caused by passing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce an incompatible pointer type to mmap_bucket_destroy(void*).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Gerard Eviston <geviston@bigpond.net.au>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Enable the -n name parameter on NetWare to allow the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce administrator to rename the Apache console screen
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brad Nicholes]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Fixed piped access logs on Win32 by disabling OTHER_CHILD
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson support by default in APR. More development is required
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to deploy OTHER_CHILD on Win32. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Use saner default config values for suexec. PR 15713.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Thom May <thom@planetarytramp.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_rewrite: Allow "RewriteEngine Off" even if no "Options FollowSymlinks"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (or SymlinksIfOwnermatch) is set. PR 12395. [Andr� Malo]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) apxs: Include any special APR ld flags when linking the DSO.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This resolves problems on AIX when building a DSO with apxs+gcc.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added character set support to mod_auth_LDAP to allow it to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce convert extended characters used in the user ID to UTF-8
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce before authenticating against the LDAP directory. The new
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directive AuthLDAPCharsetConfig is used to specify the config
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce file that contains the character set conversion table.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brad Nicholes]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Don't remove the Content-Length from responses in mod_proxy
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR: 8677 [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Ensure LDAP version is set to v3 on every bind. PR 14235.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Sergey A. Lipnevich <sergeyli@pisem.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix mod_ldap to open an existing shared memory file should one
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce already exist. PR 12757. [Scooter Morris <scooter@gene.com>,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Graham Leggett]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the ulimit command used by apachectl on Tru64. PR 13609.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Joseph Senulis <Joseph.Senulis@dnr.state.wi.us>, Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change the ulimit command used by apachectl on AIX so that it
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce works in all locales. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_ext_filter: Fix a problem building argument lists which
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce occasionally caused exec to fail. PR 15491. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.44
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_autoindex: Bring forward the IndexOptions IgnoreCase option
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce from Apache 1.3. PR 14276
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [David Shane Holden <dpejesh@yahoo.com>, William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_mime: Workaround to prevent a segfault if r->filename=NULL
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Reorder the definitions for mod_ldap and mod_auth_ldap within
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce config.m4 to make sure the parent mod_ldap is defined first.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This ensures that mod_ldap comes before mod_auth_ldap in the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce httpd.conf file, which is necessary for mod_auth_ldap to load.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR 14256 [Graham Leggett]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the building of cgi command lines when the query string
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce contains '='. PR 13914 [Ville Skytt� <ville.skytta@iki.fi>,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Rename CacheMaxStreamingBuffer to MCacheMaxStreamingBuffer. Move
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce implementation of MCacheMaxStreamingBuffer from mod_cache to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_mem_cache. MCacheMaxStreamingBuffer now defaults to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce lesser of 100,000 bytes or MCacheMaxCacheObjectSize. This should
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce eliminate the need for explicitly coding MCacheMaxStreamingBuffer
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in most configurations. [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_cache: Fix PR 15113, a core dump in cache_in_filter when
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a redirect occurs. The code was passing a format string and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce integer to apr_pstrcat. Changed to apr_psprintf.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Paul J. Reder]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Replace APU_HAS_LDAPSSL_CLIENT_INIT with APU_HAS_LDAP_NETSCAPE_SSL
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as set by apr-util in util_ldap.c. This should allow mod_ldap
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to work with the Netscape/Mozilla LDAP library. [�yvin S�mme
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce <somme@oslo.westerngeco.slb.com>, Graham Leggett]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix critical bug in new --enable-v4-mapped configure option
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce implementation which broke IPv4 listening sockets on some
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce systems. [hiroyuki hanai <hanai@imgsrc.co.jp>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_setenvif: Fix BrowserMatchNoCase support for non-regex
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce patterns [Andr� Malo <nd@perlig.de>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add version string to provider API. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) build: './configure && make' now works without an in-tree
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce apr and apr-util. [Wilfredo Sanchez]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_negotiation: Set the appropriate mime response headers
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (Content-Type, charset, Content-Language and Content-Encoding)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for negotated type-map "Body:" responses (such as the error
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce pages.) [Andr� Malo <nd@perlig.de>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_log_config: Allow '%%' escaping in CustomLog format
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce strings to insert a literal, single '%'.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Andr� Malo <nd@perlig.de>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_autoindex: AddDescription directives for directories
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce now work as in Apache 1.3, where no trailing '/' is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce specified on the directory name. Previously, the trailing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce '/' *had* to be specified, which was incompatible with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Apache 1.3. PR 7990 [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix for PR 14556. The expiry calculations in mod_cache were
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce trying to perform "now + ((date - lastmod) * factor)" where
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce date == lastmod resulting in "now + 0". The code now follows
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the else path (using the default expiration) if date is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce equal to lastmod. [rx@armstrike.com (Sergey), Paul J. Reder]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Use AP_DECLARE in the debug versions of ap_strXXX in case the
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson default calling convention is not the same as the one used by
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson AP_DECLARE. [Juan Rivera <Juan.Rivera@citrix.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_cache: Don't cache response header fields designated
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as hop-by-hop headers in HTTP/1.1 (RFC 2616 Section 13.5.1).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Estrade Matthieu <estrade-m@ifrance.com>, Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_cgid: Handle environment variables containing newlines.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR 14550 [Piotr Czejkowski <apache@czarny.eu.org>, Jeff
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Move mod_ext_filter out of experimental and into filters.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed a memory leak in mod_deflate with dynamic content.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR 14321 [Ken Franken <kfranken@decisionmark.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add --[enable|disable]-v4-mapped configure option to control
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce whether or not Apache expects to handle IPv4 connections
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on IPv6 listening sockets. Either setting will work on
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce systems with the IPV6_V6ONLY socket option. --enable-v4-mapped
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce must be used on systems that always allow IPv4 connections on
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce IPv6 listening sockets. PR 14037 (Bugzilla), PR 7492 (Gnats)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) This fixes a problem where the underlying cache code
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce indicated that there was one more element on the cache
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce than there actually was. This happened since element 0
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce exists but is not used. This code allocates the correct
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce number of useable elements and reports the number of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce actually used elements. The previous code only allowed
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce MCacheMaxObjectCount-1 objects to be stored in the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce cache. [Paul J. Reder]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_setenvif: Add SERVER_ADDR special keyword to allow
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce envariable setting according to the server IP address
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce which received the request. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_cgid: Terminate CGI scripts when the client connection
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce drops. PR 8388 [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Rearrange OpenSSL engine initialization to support RAND
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce redirection on crypto accelerator.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Frederic DONNAT <frederic.donnat@zencod.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Always emit Vary header if mod_deflate is involved in the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce request. [Andre Malo <nd@perlig.de>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_isapi: Stop unsetting the 'empty' query string result with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a NULL argument in ecb->lpszQueryString, eliminating segfaults
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for some ISAPI modules. PR 14399
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Detlev Vendt <detlev.vendt@brillit.de>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_isapi: Fix an issue where the HSE_REQ_DONE_WITH_SESSION
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce notification is received before the HttpExtensionProc() returns
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce HSE_STATUS_PENDING. This only affected isapi .dll's configured
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce with the ISAPIFakeAsync on directive. PR 11918
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [John DeSetto <jdesetto@radiantsystems.com>, William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_isapi: Fix the issue where all results from mod_isapi would
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson run through the core die handler resulting in invalid responses
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson or access log entries. PR 10216 [William Rowe]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Improves the user friendliness of the CacheRoot processing
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson over my last pass. This version avoids the pool allocations
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson but doesn't avoid all of the runtime checks. It no longer
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson terminates during post-config processing. An error is logged
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson once per worker, indicating that the CacheRoot needs to be set.
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson [Paul J. Reder]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Fix a bug where we keep files open until the end of a
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson keepalive connection, which can result in:
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson (24)Too many open files: file permissions deny server access
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson especially on threaded servers. [Greg Ames, Jeff Trawick]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Fix a bug in which mod_proxy sent an invalid Content-Length
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson when a proxied URL was invoked as a server-side include within
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson a page generated in response to a form POST. [Brian Pane]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Added code to process min and max file size directives and to
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson init the expirychk flag in mod_disk_cache. Added a clarifying
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson comment to cache_util. [Paul J. Reder]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) The value emitted by ServerSignature now mimics the Server HTTP
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson header as controlled by ServerTokens. [Francis Daly <deva@daoine.org>]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Gracefully handly retry situations in the SSL input filter,
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson by following the SSL libraries' retry semantics.
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson [William Rowe]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Terminate CGI scripts when the client connection drops. This
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson fix only applies to some normal paths in mod_cgi. mod_cgid
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson is still busted. PR 8388 [Jeff Trawick]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Fix a bug where 416 "Range not satisfiable" was being
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson returned for content that should have been redirected.
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Fix memory leak in mod_ssl from internal SSL library allocations
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson within SSL_get_peer_certificate and X509_get_pubkey.
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson [Zvi Har'El <rl@math.technion.ac.il>
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>].
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) mod_ssl uses free() inappropriately in several places, to free
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson memory which has been previously allocated inside OpenSSL.
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson Such memory should be freed with OPENSSL_free(), not with free().
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson [Nadav Har'El <nyh@math.technion.ac.il>,
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>].
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Emit a message to the error log when we return 404 because
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson the URI contained '%2f'. (This was previously nastily silent
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson and difficult to debug.) [Ken Coar]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Fix streaming output from an nph- CGI script. CGI:IRC now
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson works. PR 8482 [Jeff Trawick]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) More accurate logging of bytes sent in mod_logio when
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson the client terminates the connection before the response
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson is completely sent [Bojan Smojver <bojan@rexursive.com>]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Fix some problems in the perchild MPM.
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson [Jonas Eriksson <jonas@webkonsulterna.com>]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Change the CacheRoot processing to check for a required
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson value at config time. This saves a lot of wasted processing
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson if the mod_disk_cache module is loaded but no CacheRoot
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson was provided. This fix also adds code to log an error
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson and avoid useless pallocs and procesing when the computed
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson cache file name cannot be opened. This also updates the
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson docs accordingly. [Paul J. Reder]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Introduce the EnableSendfile directive, allowing users of NFS
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce shares to disable sendfile mechanics when they either fail
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce outright or provide intermitantly corrupted data. PR
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Resolve the error "An operation was attempted on something
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce that is not a socket. : winnt_accept: AcceptEx failed.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Attempting to recover." for users of various firewall and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce anti-virus software on Windows. PR 8325 [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add the ProxyBadHeader directive, which gives the admin some
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce control on how mod_proxy should handle bogus HTTP headers from
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce proxied servers. This allows 2.0 to "emulate" 1.3's behavior if
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce desired. [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change the LDAP modules to export their symbols correctly
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce during a Windows build. Add dsp files for Windows. Update
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson README.ldap file for Windows build instructions.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Andre Schild <A.Schild@aarboard.ch>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Performance improvements for the code that generates HTTP
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce response headers [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add -S as a synonym for -t -DDUMP_VHOSTS.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Thom May <thom@planetarytramp.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a bug with dbm rewrite maps which caused the wrong value to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce be used when the key was not found in the dbm. PR 13204
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a problem with streaming script output and mod_cgid.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add ap_register_provider/ap_lookup_provider API.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [John K. Sterling <john@sterls.com>, Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.43
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY [CAN-2002-0840]: HTML-escape the address produced by
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ap_server_signature() against this cross-site scripting
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce vulnerability exposed by the directive 'UseCanonicalName Off'.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Also HTML-escape the SERVER_NAME environment variable for CGI
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and SSI requests. It's safe to escape as only the '<', '>',
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and '&' characters are affected, which won't appear in a valid
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce hostname. Reported by Matthew Murphy <mattmurphy@kc.rr.com>.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a core dump in mod_cache when it attemtped to store uncopyable
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson buckets. This happened, for instance, when a file to be cached
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce contained SSI tags to execute a CGI script (passed as a pipe
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce bucket). [Paul J. Reder]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Ensure that output already available is flushed to the network
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson when the content-length filter realizes that no new output will
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson be available for a while. This helps some streaming CGIs as
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce well as some other dynamically-generated content. [Jeff Trawick]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Fix a mutex problem in mod_ssl session cache support which
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson could lead to an infinite loop. PR 12705
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [amund.elstad@ergo.no (Amund Elstad), Jeff Trawick]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) SECURITY [CAN-2002-1156] (cve.mitre.org):
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Fix the exposure of CGI source when a POST request is sent to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a location where both DAV and CGI are enabled. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow the UserDir directive to accept a list of directories.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This matches what Apache 1.3 does. Also add documentation for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce this feature. [Jay Ball <jay@veggiespam.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) New Module: mod_logio. adds the ability to log bytes sent and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce received. [Bojan Smojver <bojan@rexursive.com>]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) SuExec needs to use the same default directory as the rest of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce server, namely /usr/local/apache2.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [SangBeom han <sbhan@os.korea.ac.kr>]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Get mod_auth_ldap to retry connections on LDAP_SERVER_DOWN.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Thomas Bennett <thomas.bennett@eds.com>, Graham Leggett]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Make sure the contents of the WWW-Authenticate header is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce passed on a 4xx error by proxy. Previously all headers
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce were dropped, resulting in the browser being unable to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce authenticate. [Dr Richard Reiner <rreiner@fscinternet.com>,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Richard Danielli <rdanielli@fscinternet.com>, Graham Wiseman
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce <gwiseman@fscinternet.com>, David Henderson
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce <dhenderson@fscinternet.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make mod_cache's CacheMaxStreamingBuffer directive work
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce properly for virtual hosts that override server-wide mod_cache
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce setttings. [Matthieu Estrade <estrade-m@ifrance.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add -p option to apxs to allow programs to be compiled with apxs.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.42
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) mod_dav: Check for versioning hooks before using them.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Greg Stein]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.41
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The protocol version (eg: HTTP/1.1) in the request line parsing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is now case insensitive. [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow AddOutputFilterByType to add multiple filters per directive.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove warnings with Sun's Forte compiler. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed mod_disk_cache's generation of 304s
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Kris Verbeeck <Kris.Verbeeck@ubizen.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add support for using fnmatch patterns in the final path
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce segment of an Include statement (eg.. include /foo/bar/*.conf).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and remove the noise on stderr during config dir processing.
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson [Joe Orton <jorton@redhat.com>]
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson *) mod_cache: cache_storage.c. Add the hostname and any request
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson args to the key generated for caching. This provides a unique
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce key for each virtual host and for each request with unique
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce args. [Paul J. Reder, args code provided by Kris Verbeeck]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_cache: Do not cache responses to GET requests with query
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson URLs if the origin server does not explicitly provide an
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson Expires header on the response (RFC 2616 Section 13.9)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Kris Verbeeck krisv@be.ubizen.com]
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson *) Fix memory leak in core_output_filter. [Justin Erenkrantz]
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson *) Update OpenSSL detection to work on Darwin.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Sander Temme <sctemme@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Update the xslt and css to give the documentation a more
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce modern style.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Andr� Malo <nd@perlig.de>, Gernot Winkler <greh@o3media.de>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix some bucket memory leaks in the chunking code
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Joe Schaefer <joe+apache@sunstarsys.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add ModMimeUsePathInfo directive. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_cache: added support for caching streamed responses (proxy,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce CGI, etc) with optional CacheMaxStreamingBuffer setting [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ian Holsman, Peter Bieringer <pb@bieringer.de>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix FileETags none operation. PR 12207.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Justin Erenkrantz, Andrew Ho <andrew@tellme.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Restored the experimental leader/followers MPM to working
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce condition and converted its thread synchronization from
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mutexes to atomic CAS. [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix Logic on non-html file removal in mod_deflate
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Kris Verbeeck <Kris.Verbeeck@ubizen.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix "ab -g"'s truncated year: the last digit was cut off.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Leon Brocard <acme@astray.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_rewrite can now sets cookies in err_headers, uses the correct
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce expiry date, and can now set the path as well
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson PR 12132,12181,12172.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ian Holsman / Rob Cromwell <apachechangelog@robcromwell.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The content-length filter no longer tries to buffer up
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the entire output of a long-running request before sending
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce anything to the client. [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: Lower the default stack size from 1MB to 256K. This will
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson allow around 8000 threads to be started per child process.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce 'EDITBIN /STACK:size apache.exe' can be used to change this
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce value directly in the apache.exe executable.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Win32: Implement ThreadLimit directive in the Windows MPM.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove CacheOn config directive since it is set but never checked.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce No sense wasting cycles on unused code. Besides, the only truly
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce bug free code is deleted code. :) [Paul J. Reder]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) BufferLogs are now run-time enabled, and the log_config now has 2 new
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce callbacks to allow a 3rd party module to actually do the writing of the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce log file [Ian Holsman]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Correct ISAPIReadAheadBuffer to default to 49152, per mod_isapi docs.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Andr� Malo, Astrid Ke�ler <kess@kess-net.de>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix Segfault in mod_cache. [Kris Verbeeck <Kris.Verbeeck@ubizen.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a null pointer dereference in the merge_env_dir_configs
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce function of the mod_env module. PR 11791
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Paul J. Reder]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) New option to ServerTokens 'maj[or]'. Only show the major version
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Also Surfaced this directive in the standard config (default FULL)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ian Holsman]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change mod_rewrite to use apr-util's dbm support for dbm rewrite
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce maps. The dbm type (e.g., ndbm, gdbm) can be specified on the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce RewriteMap directive. PR 10644 [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed mod_rewrite's RewriteMap prg: support so that request/response
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce pairs will no longer get out of sync with each other. PR 9534
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Cliff Woolley]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixes required to get quoted and escaped command args working in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_ext_filter. PR 11793 [Paul J. Reder]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod-proxy: handle proxied responses with no status lines
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [JD Silvester <jsilves@uwo.ca>, Brett Huttley <brett@huttley.net>]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Fix bug where environment or command line arguments containing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce non-ASCII-7 characters would cause the Win32 child process creation
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to fail. PR 11854 [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Bug #11213.. make module loading error messages more informative
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ian Darwin <Ian779@darwinsys.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) thread safety & proxy-ftp [Alexey Panchenko alexey@liwest.ru, Ian Holsman]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_disk_cache works much better. This module should still
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce be considered experimental. [Eric Prud'hommeaux]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Performance improvement for keepalive requests: when setting
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce aside a small file for potential concatenation with the next
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce response on the connection, set aside the file descriptor rather
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce than copying the file into the heap. [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Modified version check on openssl so that it finds the executable
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce first and then performs a check of the version, only warning the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce user if they chose, or we selected, an old version of OpenSSL.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This change also allows the code to work for non-openssl libraries
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce selected via the --with-ssl=dir option, which can override the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce automated library check in any case. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.40
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY [CAN-2002-0661] (cve.mitre.org):
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Close a very significant security hole that
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce applies only to the Win32, OS2 and Netware platforms. Unix was not
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce affected, Cygwin may be affected. Certain URIs will bypass security
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and allow users to invoke or access any file depending on the system
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce configuration. Without upgrading, a single .conf change will close
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the vulnerability. Add the following directive in the global server
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce httpd.conf context before any other Alias or Redirect directives;
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce RedirectMatch 400 "\\\.\."
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Reported by Auriemma Luigi <bugtest@sitoverde.com>.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brad Nicholes]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY [CAN-2002-0654] (cve.mitre.org):
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Close a path-revealing exposure in multiview type
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce map negotiation (such as the default error documents) where the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce module would report the full path of the typemapped .var file when
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce multiple documents or no documents could be served based on the mime
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce negotiation. Reported by Auriemma Luigi <bugtest@sitoverde.com>.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY [CAN-2002-0654] (cve.mitre.org):
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Close a path-revealing exposure in cgi/cgid when we
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce fail to invoke a script. The modules would report "couldn't create
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce child process /path-to-script/script.pl" revealing the full path
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of the script. Reported by Jim Race <jrace@qualys.com>.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Set aside the apr-iconv and apr_xlate() features for the Win32
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce build of 2.0.40 so development can be completed. A patch, from
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce <http://www.apache.org/dist/httpd/patches/apply_to_2.0.40/>
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce will be available for those that wish to work with apr-iconv.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix proxy so that it is possible to access ftp: URLs via a proxy
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce chain. [Peter Van Biesen <peter.vanbiesen@vlafo.be>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod-deflate now checks to make sure that 'gzip-only-text/html' is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce set to 1, so we can exclude things from the general case with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce browsermatch. [Ian Holsman, Andre Schild <A.Schild@aarboard.ch>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Accept multiple leading /'s for requests within the DocumentRoot.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR 10946 [William Rowe, David Shane Holden <dpejesh@yahoo.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Solved the reports of .pdf byterange failures on Win32 alone.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce APR's sendfile for the win32 platform collapses header and trailer
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce buffers into a single buffer. However, we destroyed the pointers
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to the header buffer if a trailer buffer was present. PR 10781
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_ext_filter: Add the ability to enable or disable a filter via
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce an environment variable. Add the ability to register a filter of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce type other than AP_FTYPE_RESOURCE. [Jeff Trawick]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Restore the ability to specify host names on Listen directives.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson PR 11030. [Jeff Trawick, David Shane Holden <dpejesh@yahoo.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) When deciding on the default address family for listening sockets,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce make sure we can actually bind to an AF_INET6 socket before
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce deciding that we should default to AF_INET6. This fixes a startup
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce problem on certain levels of OpenUNIX. PR 10235. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Replace usage of atol() to parse strings when we might want a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce larger-than-long value with apr_atoll(), which returns long long.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This allows HTTPD to deal with larger files correctly.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Shantonu Sen <ssen@apple.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_ext_filter: Ignore any content-type parameters when checking if
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the response should be filtered. Previously, "intype=text/html"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce wouldn't match something like "text/html;charset=8859_1".
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_ext_filter: Set up environment variables for external programs.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Craig Sebenik <craig@netapp.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Modified the HTTP_IN filter to immediately append the EOS (end of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce stream) bucket for C-L POST bodies, saving a roundtrip and allowing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the caller to determine that no content remains without prefetching
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce additional POST body. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get proxy ftp to work over IPv6. [Shoichi Sakane <sakane@kame.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Look for OpenSSL libraries in /usr/lib64. [Peter Poeml <poeml@suse.de>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Update SuSE layout. [Peter Poeml <poeml@suse.de>]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Changes to the internationalized error documents:
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson Comment them out in the default config file to make the default
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce install as simple as possible; Correct the english 500 error to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce be more understandable; Add a Swedish translation.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Thomas Sjogren <thomas@northernsecurity.net>,
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson Erik Abele <erik@codefaktor.de>, Rich Bowen, Joshua Slive]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Increase the limit on file descriptors per process in apachectl.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a dependency error when building ApacheMonitor, so that Win32
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and MSVC now trust that the project is current (when it is).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [James Cox <imajes@php.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_ext_filter: don't segfault if content-type is not set. PR 10617.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Arthur P. Smith <apsmith@aps.org>, Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) APR-Util Renames pending have been completed [Thom May]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Performance improvements for the code that reads request
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce headers (ap_rgetline_core() and related functions) [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a new directive: MaxMemFree. MaxMemFree makes it possible
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to configure the maximum amount of memory the allocators will
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce hold on to for reuse. Anything over the MaxMemFree threshold
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce will be free()d. This directive is useful when uncommon large
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce peaks occur in memory usage. It should _not_ be used to mask
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce defective modules' memory use. [Sander Striker]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed the Content-Length filter so that HTTP/1.0 requests to CGI
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce scripts would not result in a truncated response.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom, Justin Erenkrantz, Cliff Woolley]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a filter_init parameter to the filter registration functions
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce so that a filter can execute arbitrary code before the handlers
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce are invoked. This resolves a problem where mod_include requests
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce would incorrectly return a 304. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a long-standing bug in 2.0, CGI scripts were being called
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce with relative paths instead of absolute paths. Apache 1.3 used
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce absolute paths for everything except for SuExec, this brings back
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce that standard. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix infinite loop due to two HTTP_IN filters being present for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce internally redirected requests. PR 10146. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Switch conn_rec->keepalive to an enumeration rather than a bitfield.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix mod_ext_filter to look in the main server for filter definitions
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce when running in a vhost if the filter definition is not found in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the vhost. PR 10147 [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Support WinNT CGI invocation through ScriptInterpreterSource
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce 'registry' for script interpreter paths and names with non-ascii
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce characters in the executable filepath. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Support the -w flag on to keep the Win32 console open on error.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Normalize the hostname value in the request_rec to all-lowercase
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Perry Harrington <pedward@webcom.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix WinNT cgi 500 errors when QUERY_ARGS or other strings include
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce extended characters (non US-ASCII) in non-utf8 format. This brings
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Win32 back into CGI/1.1 compliance, and leaves charset decoding up
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to the cgi application itself. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Major overhaul of mod_dav, mod_dav_fs and the experimental/cache
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce modules to bring them up to the current apr/apr-util APIs.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix segfault in mod_mem_cache most frequently observed when
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce serving the same file to multiple clients on an MP machine.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_rewrite can now set cookies (RewriteRule (.*) - [CO=name:$1:.domain])
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Degenhardt <bmd@mp3.com>, Ian Holsman]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix perchild to work with apachectl by adding -k support to perchild.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR 10074 [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a silly htpasswd.c logic error that incorrectly reported that
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce both -c and -n had been used. PR 9989 [Cliff Woolley]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed a mod_include error case in which no HTTP response was sent
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to the client if an shtml document contained an unterminated SSI
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directive [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Improve ap_get_client_block implementation by using APR-util brigade
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce helper functions and relying on current filter assumptions.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.39
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed a build problem in htpasswd.c on Win32.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Guenter Knauf <eflash@gmx.net>, Cliff Woolley]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.38
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Rewrite htpasswd to use APR. The removes the annoying warning about
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce tmpnam being unsafe. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) We must set the MIME-type for .shtml files to text/html if we want them
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to be parsed for SSI tags. Add the config for that to the default
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce config file so that it is easier to enable .shtml parsing.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dave Dyer <ddyer@real-me.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed a problem with 'make install' on ReliantUnix.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jean-frederic Clere <jfrederic.clere@fujitsu-siemens.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make the default_handler catch all requests that aren't served by
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce another handler. This also gets us to return a 404 if a directory
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is requested, there is no DirectoryIndex, and mod_autoindex isn't
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce loaded. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed the handling of nested if-statements in shtml files.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR 9866 [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow 'make install DESTDIR=/path'. This allows packagers to install
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce into a directory different from the one that was configured. This
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce also mirrors the root= feature from 1.3. We cannot use prefix=,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce because both APR and APR-util resolve their installation paths at
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce configuration time. This means that there is no variable prefix
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to replace. [Andreas Hasenack <andreas@netbank.com.br>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) AIX 4.3.2 and above: Define SINGLE_LISTEN_UNSERIALIZED_ACCEPT.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce These levels of AIX don't have a thundering herd problem with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce accept(). [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) prefork MPM: Ignore mutex errors during graceful restart. For
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce certain types of mutexes (particularly SysV semaphores), we
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce should expect to occasionally fail to obtain or release the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mutex during restart processing. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix install-bindist.sh so that it finds any perl instead of just
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce early perl 5.x versions. This is consistent with a build/install
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce from source, and it allows the perl scripts installed by a bindist
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to work on systems with perl 5.6. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix apxs so that the makefile created by "apxs -g" works on AIX and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Tru64 (and probably some other platforms). [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow CGI scripts to return their Content-Length. This also fixes a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce hang on HEAD requests seen on certain platforms (such as FreeBSD).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added log rotation based on file size to the RotateLog support
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce utility. [Brad Nicholes]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix some casting in mod_rewrite which broke random maps.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR 9770 [Allan Edwards, Greg Ames, Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.37
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) allow POST method over SSL when per-directory client cert
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce authentication is used with 'SSLOptions +OptRenegotiate' enabled
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and a client cert was found in the ssl session cache.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) 'SSLOptions +OptRengotiate' will use client cert in from the ssl
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce session cache when there is no cert chain in the cache. prior to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the fix this situation would result in a FORBIDDEN response and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce error message "Cannot find peer certificate chain"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Doug MacEachern]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) ap_finalize_sub_req_protocol() shouldn't send an EOS bucket if
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce one was already sent. PR 9644 [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the display of the default name for the mime types config
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce file. PR 9729 [Matthew Brecknell <mbrecknell@orchestream.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the working directory *for WinNT/2K/XP services only* to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce change to the Apache directory (one level above the location
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of Apache.exe, in the case that Apache.exe resides in bin/.)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Solves the case of ServerRoot /foo paths where /foo was not
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on the same drive as /winnt/system32. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make 2.0's "AcceptMutex" startup message now "completely"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce match how 1.3 does it. [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Implement a fixed size memory cache using a priority queue
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ian Holsman]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix apxs to allow "apxs -q installbuilddir" and to allow
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce querying certain other variables from config_vars.mk. PR 9316
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added the "detached" attribute to the cgi_exec_info_t internals
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce so that Win32 and Netware won't create a new window or console
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for each CGI invoked. PR 8387
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brad Nicholes, William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Consolidated the command line parameters and attributes that are
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce manipulated by the optional function ap_cgi_build_command() in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_cgi into a single structure.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brad Nicholes]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get rid of uninitialized value errors with "apxs -q" on certain
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce variables. [Stas Bekman <stas@stason.org>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix apxs to allow it to work when the build directory is somewhere
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce besides server-root/build. PR 8453
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick and a host of others]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow ap_discard_request_body to be called multiple times in the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce same request. Essentially, ap_http_filter keeps track of whether
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce it has sent an EOS bucket up the stack, if so, it will only ever
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce send an EOS bucket for this request.
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson [Ryan Bloom, Justin Erenkrantz, Greg Stein]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove all special mod_ssl URIs. This also fixes the bug where
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce redirecting (.*) will allow an SSL protected page to be viewed
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce without SSL. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the binary build install script so that the build logic
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce created by "apxs -g" will work when the user has a binary
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce build. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow instdso.sh to work with full paths to the shared module.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) NetWare: Enabled CGI functionality and added mod_cgi as a built
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in module for NetWare [Brad Nicholes]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Changed cgi and piped log behavior to accept 65536 characters
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on Win32 (matching Linux) before deadlocking between outputing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce client stdin, slurping the output from stdout and then the stderr
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce stream. PR 8179 [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed Win32 wintty.exe support to assure the window title is valid.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Elimiates possible gpfault or garbage title without the -t option.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Rewrite mod_cgi, mod_cgid, and mod_proxy input handling to use
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce brigades and input filters. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow ap_http_filter (HTTP_IN) to return EOS when there is no request
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce body. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) NetWare: Piping log entries through RotateLogs using the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce CustomLogs directive is finally supported now that we have
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the pipes and spawning functionality working.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brad Nicholes]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY [CVE-2002-0392] (cve.mitre.org) [CERT VU#944335]:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Detect overflow when reading the hex bytes forming a chunk line.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow RewriteMap prg:'s to take command-line arguments. PR 8464.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [James Tait <JTait@wyrddreams.demon.co.uk>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Correctly return 413 when an invalid chunk size is given on
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce input. Also modify ap_discard_request_body to not do anything
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on sub-requests or when the connection will be dropped.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the TIME_* SSL var lookups to be threadsafe. PR 9469.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Cliff Woolley]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Ensure that apr_brigade_write() flushes in all of the cases that
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce it should to avoid conditions in some modules that could cause
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce large amounts of data to be buffered. [Cliff Woolley]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix problem where mod_cache/mod_disk_cache was incorrectly
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce stripping the content_type from cached responses.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) apachectl passes through any httpd options. Note: apachectl
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce should be used in preference to httpd since it ensures that any
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce appropriate environment variables have been set up.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the combination of mod_cgid, mod_setuexec, and mod_userdir.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR 7810 [Colm MacCarthaigh <colmmacc@redbrick.dcu.ie>]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Fix suexec execution of CGI scripts from mod_include.
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson PR 7791, 8291 [Colm MacCarthaigh <colmmacc@redbrick.dcu.ie>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix segfaults at startup on some platforms when mod_auth_digest,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_suexec, or mod_ssl were used as DSO's due to the way they
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson were tracking the current init phase since DSO's get completely
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce unloaded and reloaded between phases. PR 9413.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Tsuyoshi Sasamoto <nazonazo@super.win.ne.jp>, Brad Nicholes]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix mod_include's handling of regular expressions in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce "<!--#if" directives [Julius Gawlas <julius_gawlas@hp.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the worker MPM deadlock problem [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Modify the module documentation to allow for translations.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Yoshiki Hayashi, Joshua Slive]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a file permissions problem which prevented mod_disk_cache
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce from working on Unix. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add "-k start|restart|graceful|stop" support to httpd for the Unix
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce MPMs. These have semantics very similar to the old apachectl
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce commands of the same name. [Justin Erenkrantz, Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make sure that the runtime dir is created by make install.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR 9233. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix an unusual set of ./configure arguments that could cause
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_http to be built as a DSO, which it currently doesn't
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce support. PR 9244.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Cliff Woolley, Robin Johnson <robbat2@orbis-terrarum.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: Fix bug in apr_sendfile() that caused incorrect operation
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of the %X, %b and %B logformat options. PR 8253, 8996.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If content-encoding is already present, do not run deflate (PR 9222)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Kazuhisa ASADA <kaz@asada.sytes.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The APLOG_NOERRNO flag to ap_log_[r]error() is now deprecated.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce It is currently ignored and it will be removed in a future release
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of Apache. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Removed documentation references to the no-longer-supported
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce "make certificate" feature of mod_ssl for Apache 1.3.x. Test
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce certificates, if truly desired, can be generated using openssl
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce commands. PR 8724. [Cliff Woolley]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove SSLLog and SSLLogLevel directives in favor of having
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_ssl use the standard ErrorLog directives. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) OS/390: LIBPATH no longer has to be manually uncommented in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce envvars to get apachectl to set up httpd properly. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_isapi: All mod_isapi directives, excluding ISAPICacheFile,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce may now be specified to the <File/Directory > container, rather
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce than by vhost. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_isapi: Experimental support for faux async support for ISAPI
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce modules. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_isapi: Major refactoring of the code to rely on apr internals
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce rather than MS APIs (using our own mod_isapi.h headers for ISAPI
4e99bcb0603f3270ff89323d149a1fbc668e7da0Andreas Gustafsson symbol definitions.) [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_isapi: Fixed the return string length from GetServerVariable
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce callback, it was not including the trailing null in the consumed
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce buffer size. This was particularly bad for Delphi 6.0 users.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR 8934 [Sebastian Hantsch <sebastian.hantsch@gmx.de>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed Win32 builds for Microsoft VisualStudio 7.0 (.net).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make apxs look in the correct directory for envvars. It was
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce broken when sbindir != bindir. PR 8869
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Andreas Sundstr�m <sunkan@zappa.cx>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix mod_deflate corruption when using multiple buckets. PR 9014.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Asada Kazuhisa <kaz@asada.sytes.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Performance enhancements for access logger when using
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce default timestamp formatting [Brian Pane]
4e99bcb0603f3270ff89323d149a1fbc668e7da0Andreas Gustafsson *) Added EnableMMAP config directive to enable the server
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce administrator to disable memory-mapping of delivered files
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on a per-directory basis. [Brian Pane]
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) Performance enhancements for mod_setenvif [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a mod_ssl build problem on OS/390. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed If-Modified-Since on Win32, which would give false positives
4e99bcb0603f3270ff89323d149a1fbc668e7da0Andreas Gustafsson because of the sub-second resolution of file timestamps on that
4e99bcb0603f3270ff89323d149a1fbc668e7da0Andreas Gustafsson platform. [Cliff Woolley]
4e99bcb0603f3270ff89323d149a1fbc668e7da0Andreas Gustafsson *) Reverse the hook ordering for mod_userdir and mod_alias so
4e99bcb0603f3270ff89323d149a1fbc668e7da0Andreas Gustafsson that Alias/ScriptAlias will override Userdir. PR 8841
4e99bcb0603f3270ff89323d149a1fbc668e7da0Andreas Gustafsson [Joshua Slive]
4e99bcb0603f3270ff89323d149a1fbc668e7da0Andreas Gustafsson *) Move mod_deflate out of experimental and into filters.
4e99bcb0603f3270ff89323d149a1fbc668e7da0Andreas Gustafsson [Justin Erenkrantz]
4e99bcb0603f3270ff89323d149a1fbc668e7da0Andreas Gustafsson *) Get proxy CONNECT basically working. [Jeff Trawick]
4e99bcb0603f3270ff89323d149a1fbc668e7da0Andreas Gustafsson *) Fix mod_rewrite hang when APR uses SysV Semaphores and
4e99bcb0603f3270ff89323d149a1fbc668e7da0Andreas Gustafsson RewriteLogLevel is set to anything other than 0. PR: 8143
4e99bcb0603f3270ff89323d149a1fbc668e7da0Andreas Gustafsson [Aaron Bannert, Cliff Woolley]
4e99bcb0603f3270ff89323d149a1fbc668e7da0Andreas Gustafsson *) Fix byterange requests from returning 416 when using dynamic data
4e99bcb0603f3270ff89323d149a1fbc668e7da0Andreas Gustafsson (such as filters like mod_include). [Justin Erenkrantz]
4e99bcb0603f3270ff89323d149a1fbc668e7da0Andreas Gustafsson *) Allow mod_rewrite's set of "int:" internal RewriteMap functions
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to be extended by third-party modules via an optional function.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Tahiry Ramanamampanoharana <nomentsoa@hotmail.com>, Cliff Woolley]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix mod_include expression parser's handling of unquoted strings
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce followed immediately by a closing paren. PR 8462. [Brian Pane]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Remove autom4te.cache in 'make distclean'.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Thom May <thom@planetarytramp.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix generated httpd.conf to respect layout for LoadModule lines.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR 8170. [Thom May <thom@planetarytramp.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: During a graceful restart, threads in the new process
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce were accessing scoreboard slots still in use by active threads in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the the old process. [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.36
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix some minor formatting issues with ab. Part of this is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in reference to PR 8544, the rest I noticed while testing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the PR fix. [Paul J. Reder]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a case where an invalid pass phrase is entered and an
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce error message is given, but the prompt is not shown again.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This left the user in an ambiguous state. PR 8320 [Paul J. Reder]
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson *) Close sockets on worker MPM when doing a graceless restart.
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Reverted a minor optimization in mod_ssl.c that used the vhost ID
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as the session id context rather that a MD5 hash of that vhost ID,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce because it caused very long vhost id's to be unusable with mod_ssl.
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson PR 8572. [Cliff Woolley]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the link to the description of the CoredumpDirectory
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directive in the server-wide document. PR 8643. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed SHMCB session caching. [Aaron Bannert, Cliff Woolley]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Synced with remaining changes from mod_ssl 2.8.8-1.3.24:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - Avoid SIGBUS on sparc machines with SHMCB session caches
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - Allow whitespace between the pipe and the name of the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce program in SSLLog "| /path/to/program". [Cliff Woolley]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Introduce mod_ext_filter and mod_deflate experimental modules
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington to the Win32 build (zlib sources must be in srclib\zlib.)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Changes to the worker MPM's queue management and thread
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson synchronization code to reduce mutex contention [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Don't install *.in configuration files since we already install
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *-std.conf files. [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Many improvements to the threadpool MPM. [Aaron Bannert]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Fix subreqs that are promoted via fast_redirect from having invalid
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson frec->r structures. This would cause subtle errors later on in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce request processing such as seen in PR 7966. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) More efficient pool recycling logic for the worker MPM [Brian Pane]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Modify the worker MPM to not accept() new connections until
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce there is an available worker thread. This prevents queued
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce connections from starving for processing time while long-running
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce connections were hogging all the available threads. [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Convert the worker MPM's fdqueue from a LIFO back into a FIFO.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get basic HTTP proxy working on EBCDIC machines. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow mod_unique_id to work on systems with no IPv4 address
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce corresponding to their host name. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix suexec behavior with user directories. PR 7810.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Colm <colmmacc@redbrick.dcu.ie>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Reject a blank UserDir directive since it is ambiguous. PR 8472.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make mod_mime use case-insensitive matching when examining
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce extensions on all platforms. PR 8223. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add an intelligent error message should no proxy submodules be
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce valid to handle a request. PR 8407 [Graham Leggett]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Major improvements in concurrent processing for AB by enabling
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce non-blocking connect()s and preventing APR from doing blocking
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce read()s. Also implement fatal error checking for apr_recv().
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Aaron Bannert]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Fix Win32 NTFS Junctions (symlinks). PR 8014 [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix Win32 'short name' aliases in httpd.conf directives.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR 8009 [William Rowe]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Fix generation of default httpd.conf when the layout paths are
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce disjoint. PR 7979, 8227. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Swap downgrade-1.0 and force-response-1.0 conditional checks so
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson that downgraded responses can have force-response. PR 8357.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix perchild MPM so that it can be configured with the move to the
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson experimental directory. [Scott Lamb <slamb@slamb.org>]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Fix perchild MPM so that it uses ap_gname2id for groups instead of
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson ap_uname2id. [Scott Lamb <slamb@slamb.org>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix AcceptPathInfo. PR 8234 [Cliff Woolley]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) SECURITY: Added the APLOG_TOCLIENT flag to ap_log_rerror() to
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson explicitly tell the server that warning messages should be sent
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson to the client in addition to being recorded in the error log.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson Prior to this change, ap_log_rerror() always sent warning
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson messages to the client. In one case, a faulty CGI script caused
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson the server to send a warning message to the client that contained
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the full path to the CGI script. This could be considered a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce minor security exposure. [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_autoindex output when SuppressRules was specified would
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce omit the first carriage return so the first item in the list
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce would appear to the right of the column headings instead of
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson underneath them. PR 8016 [David Shane Holden <dpejesh@yahoo.com>]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Moved the call to apr_mmap_dup outside the error branch so
fafd1d771905532e8dc3efa2ce90ce4c9e74af61Eric Luce that it would actually get called. This fixes a core dump
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson at init everytime you use the MMapFile directive. PR 8314
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson [Paul J. Reder]
fafd1d771905532e8dc3efa2ce90ce4c9e74af61Eric Luce *) Trigger an error when a LoadModule directive attempts to
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson load a module which is built-in. This is a common error when
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson switching from a DSO build to a static build. [Jeff Trawick]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Change instdso.sh to use libtool --install everywhere and then
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson clean up some stray files and symlinks that libtool leaves around
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson on some platforms. This gets subversion building properly since
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce it needed a re-link to be performed by libtool at install time,
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson and the old instdso.sh logic to simply cp the DSO didn't handle
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson that requirement. [Sander Striker]
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson *) Allow VPATH builds to succeed when configured from an empty
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson directory. [Thom May <thom@planetarytramp.net>]
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson *) Fix 'control reaches end of non-void function' warning in
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson server/log.c. [Ben Collins-Sussman <sussman@collab.net>]
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson *) Perchild MPM is now correctly deemed as experimental and is now
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson located in server/mpm/experimental. [Justin Erenkrantz]
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson *) Fix segfault in mod_mem_cache when garabge collecting an expired
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson cache entry. [Bill Stoddard]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) Introduced -E startup_logfile_name option to httpd to allow admins
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington to begin logging errors immediately. This provides Win32 users
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson an alternative to sending startup errors to the event viewer, and
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson allows other daemon tool authors an alternative to logging to stderr.
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson [William Rowe]
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson *) Fix subreqs with non-defined Content-Types being served improperly.
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson [Justin Erenkrantz]
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson *) Merge in latest GNU config.guess and config.sub files. PR 7818.
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson [Justin Erenkrantz]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) Move 100 - Continue support to the HTTP_IN filter so that filters
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson are guaranteed to support 100 - Continue logic without any
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson intervention. [Justin Erenkrantz]
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson *) Add HTTP chunked input trailer support. [Justin Erenkrantz]
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson *) Rename and export get_mime_headers as ap_get_mime_headers.
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington [Justin Erenkrantz]
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson *) Allow empty Host: header arguments. PR 7441. [Justin Erenkrantz]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) Properly substitute sbindir as httpd's location in apachectl. PR 7840.
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson [Andreas Hasenack <andreas@netbank.com.br>]
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson *) Allow Win32 shebang scripts to follow the path (or omit the .exe
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson suffix from the shebang command), and allow ScriptInterpreterSource
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson Registry or RegistryStrict to override shebang lines, as 1.3 did.
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson PR 8004 [William Rowe]
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson *) worker MPM: Fix a situation where a child exited without releasing
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson the accept mutex. Depending on the OS and mutex mechanism this
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington could result in a hang. [Jeff Trawick]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) Update the instructions for how to get started with mod_example.
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) Fix PidFile to default to rel_runtimedir instead of
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington rel_logfiledir. PR 7841. [Andreas Hasenack <andreas@netbank.com.br>]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) Win32: Fix problem that caused rapid performance degradation
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington when number of connecting clients exceeded ThreadsPerChild.
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington [Bill Stoddard]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) Fixed a segfault parsing large SSIs on non-mmap systems.
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson [Brian Havard]
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson *) Proxy was bombing out every second keepalive request, caused by a
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson stray CRLF before the second response's status line. Proxy now
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson tries to read one more line if it encounters a CRLF where it
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson expected a status. PR 10010 [Graham Leggett]
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson *) Deprecated the apr_lock.h API. Please see the following files
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson for the improved thread and process locking and signaling:
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson apr_proc_mutex.h, apr_thread_mutex.h, apr_thread_rwlock.h,
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson apr_thread_cond.h, and apr_global_mutex.h. [Aaron Bannert]
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson *) Change mod_status to use scoreboard accessor functions so it can
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson be used in any MPM without having to be recompiled.
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson [Ryan Morgan <rmorgan@covalent.net>]
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson *) Fix parsing of some AP_DECLARE_DATA declarations so that the filter
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson handle declarations are recognized. This fixes problems loading
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson mod_autoindex on some platforms. [Brian Havard]
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson *) add optional fixup hook to proxy [Daniel Lopez <daniel@covalent.net>]
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson *) Remind the admin about the User and Group directives when we are
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson unable to set permissions on a semaphore. PR 7812 [Jeff Trawick]
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson *) fix possible compilation problem in ssl_engine_kernel.c. PR 7802
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson [Doug MacEachern]
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson *) fix possible infinite loop in mod_ssl triggered by certain
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson netscape clients [Doug MacEachern]
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson *) fix ProxyPass when frontend is https and backend is http
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington [Doug MacEachern]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) Add DASL support to mod_dav
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington [Sung Kim <hunkim@cse.ucsc.edu>]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian WellingtonChanges with Apache 2.0.35
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) mod_rewrite: updated to use the new APR global mutex type.
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington [Aaron Bannert]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) Fixes for mod_include errors on boundary conditions in which
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington "<!--#" occurs at the very end of a bucket
33682c92e96b39c395cdb2c3feb8eb5914e7d5a8Andreas Gustafsson [Paul Reder, Brian Pane]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) worker, prefork, perchild, beos MPMs: Add -DFOREGROUND switch to
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington cause the Apache parent process to run in the foreground (similar to
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington -DNO_DETACH except that it doesn't switch session ids).
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington [Jeff Trawick]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) Added support for Posix semaphore mutex locking (AcceptMutex posixsem)
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington for those platforms that support it. If using the default
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington implementation, this is between pthread and sysvsem in priority.
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington This implies it's the new default for Darwin. [Jim Jagielski]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) AIX: Fix the syntax for setting the LDR_CNTRL and AIXTHREAD_SCOPE
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington environment variables in the envvars file. [Jeff Trawick]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) worker MPM: Don't create a listener thread until we have a worker
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington thread. Otherwise, in situations where we'll have to wait a while
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington to take over scoreboard slots from a previous generation, we'll be
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce accepting connections we can't process yet. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow worker MPM to build on systems without pthread_kill().
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Pier Fumagalli, Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Prevent ap_add_output_filters_by_type from being called in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ap_set_content_type if the content-type hasn't changed.
5dccc8b2a55f0222ffda0ff0a981bad4eb0563beAndreas Gustafsson [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Performance: implemented the bucket allocator made possible by the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce API change in 2.0.34. [Cliff Woolley]
5dccc8b2a55f0222ffda0ff0a981bad4eb0563beAndreas Gustafsson *) Don't allow initialization to succeed if we can't get a socket
5dccc8b2a55f0222ffda0ff0a981bad4eb0563beAndreas Gustafsson corresponding to one of the Listen statements. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.34
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow all Perchild directives to accept either numerical UID/GID
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce or logical user/group names. [Scott Lamb <slamb@slamb.org>]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Make Perchild compile cleanly and serve pages again. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) implement ssl proxy to support ProxyPass / https:// and the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce SSLProxy* directives [Doug MacEachern]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Update mod_cgid to not do single-byte socket reads for CGI headers
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Made AB's use of the Host: header rfc2616 compliant
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce by Taisuke Yamada <tai@iij.ad.jp> [Dirk-Willem van Gulik].
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The old, legacy (and unused) code in which the scoreboard was totally
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and completely contained in a file (SCOREBOARD_FILE) has been
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce removed. This does not affect scoreboards which are *mapped* to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce files using named-shared-memory. [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change bucket brigades API to allow a "bucket allocator" to be
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce passed in at certain points. This allows us to implement freelists
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce so that we can stop using malloc/free so frequently.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Cliff Woolley, Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add support for macro expansion within the variable names in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce <!--#echo--> and <!--#set--> directives [Brian Pane]
5dccc8b2a55f0222ffda0ff0a981bad4eb0563beAndreas Gustafsson *) Fix some mod_include segfaults [Cliff Woolley, Brian Pane, Brad Nicholes]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Update the "RedHat" Layout to match Red Hat Linux version 7. PR BZ-7422
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) add compat layer to support RSA SSLC 1.x and 2.x in mod_ssl
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jon Travis, John Barbee, William Rowe, Ryan Bloom, Doug MacEachern]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a new parameter to the quick_handler hook to instruct
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce quick handlers to optionally do a lookup rather than actually
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce serve content. This is the first of several changes required fix
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce several problems with how quick handlers work with subrequests.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) worker MPM: Get MaxRequestsPerChild to work again. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) [APR-related] The ordering of the default accept mutex method has
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce been changed to better match what's done in Apache 1.3. The ordering
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson is now (highest to lowest): pthread -> sysvsem -> fcntl -> flock.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Ensure that the build/ directory is created when using VPATH.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add some popular types to the mime magic file. PR 7730.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Linus Walleij <triad@df.lth.se>, Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove the single-byte socket reads for CGI headers [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) When a proxied site was being served, Apache was replacing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the original site Server header with it's own, which is not
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce allowed by RFC2616. Fixed. [Graham Leggett]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a mod_cgid problem that left daemon processes stranded
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in some server restart scenarios. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added exp_foo and rel_foo variables to config_vars.mk for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce all Apache and Autoconf path variables (like --sysconfdir,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce --sbindir, etc). exp_foo is the "expanded" version, which means
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce that all internal variable references have been interpolated.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce rel_foo is the same as $exp_foo, only relative to $prefix if they
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce share a common path. [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix some restart/terminate problems in the worker MPM. Don't
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce drop connections during graceful restart. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change the header merging behaviour in proxy, as some headers
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (like Set-Cookie) cannot be unmerged due to stray commas in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce dates. [Graham Leggett]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Be more vocal about what AcceptMutex values we allow, to make
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce us closer to how 1.3 does it. [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get nph- CGI scripts working again. PRs 8902, 8907, 9983
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Upgraded PCRE library to latest version 3.9 [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add accessor function to set r->content_type. From now on,
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson ap_rset_content_type() should be used to set r->content_type.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This change is required to properly implement the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce AddOutputFilterByType configuration directive.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard, Sander Striker, Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add new M_FOO symbols for the WebDAV/DeltaV methods specified by
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce RFC 3253. Improved the method name/number mapping functions.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Greg Stein]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) remove sock_enable_linger from connection.c [Ian Holsman]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Fix for virtual host processing where the requested hostname
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce has a '.' at the end (PR 9187) [Ryan Cruse <ryan@estara.com>]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) mod_dav's APIs for REPORT response handling was changed so that
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson providers can generate the content directly into the output filter
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson stack, rather than buffering the response into memory. [Greg Stein]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Fix a hang condition with graceful restart and prefork MPM
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson in the situation where MaxClients is very high but
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson much fewer servers are actually started at the time of the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce restart. [Jeff Trawick]
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson *) Small performance fixes for mod_include [Brian Pane]
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson *) Performance improvement for the error logger [Brian Pane]
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson *) Change configure so that Solaris 8 and above have
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson SINGLE_LISTEN_UNSERIALIZED_ACCEPT defined by default.
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson according to sun people solaris 8+ doesn't have a thundering
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson herd problem [Ian Holsman]
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson *) Allow URIs specifying CGI scripts to include '/' at the end
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson (e.g., /cgi-bin/printenv/) on AIX and Solaris (and other OSs
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson which ignore '/' at the end of the names of non-directories).
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson PR 10138 [Jeff Trawick]
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson *) implement SSLSessionCache shmht and shmcb based on apr_rmm and
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson apr_shm. [Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>]
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson *) Fix apxs -g handling. Move config_vars.mk from the top build
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson directory to the build directory. PR 10163 [Jeff Trawick]
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson *) Fix some mod_include problems which broke evaluation of some
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson expressions. PR 10108 [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the calculation of request time in mod_status. [Stas Bekman]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the calculation of thread_num in the worker score structure.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Stas Bekman]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Use apr_atomic operations in managing the mod_mem_cache
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson cache_objects for SMP scalability. (see USE_ATOMICS
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson preprocessor directive in mod_file_cache)
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Bill Stoddard]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Add filehandle caching to mod_mem_cache. (see CACHE_FD
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson preprocessor directive in mod_file_cache)
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson [Bill Stoddard]
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson *) Implement prototype mod_disk_cache for use with mod_cache.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a missing manualdir entry in the Debian config.layout.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Thom May <thom@planetarytramp.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Stop installing libtool for APR and tell APR where it should place
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce its copy of libtool (via our installbuildpath layout variable).
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson [Justin Erenkrantz]
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson *) New directive ProxyIOBufferSize. Sets the size of the buffer used
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce when reading from a remote HTTP server in proxy. [Graham Leggett]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Modify receive/send loop in proxy_http and proxy_ftp so that
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson should it be necessary, the remote server socket is closed before
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce transmitting the last buffer (set by ProxyIOBufferSize) to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce client. This prevents the backend server from being forced to hang
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce around while the last few bytes are transmitted to a slow client.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Fix the case where no error checking was performed on the final
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce brigade in the loop. [Graham Leggett]
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson *) Scrap CacheMaxExpireMin and CacheDefaultExpireMin. Change
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce CacheMaxExpire and CacheDefaultExpire to use seconds rather than
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce hours. [Graham Leggett, Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) New Directive SSIUndefinedEcho. to change the '(none)' echoed
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for a undefined variable. [Ian Holsman]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Proxy HTTP and CONNECT: Keep trying other addresses from the DNS
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce when we can't get a socket in the specified address family. We may
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce have gotten back an IPv6 address first and yet our system is not
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce configured to allow IPv6 sockets. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Be more careful about recursively removing CVS directories. Make
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce sure that we aren't cd'ing to their home directory first. PR: 9993
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Aaron Bannert, James LewisMoss <dres@lewismoss.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a missing errordir entry in the Debian config.layout. PR: 10067
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dirk-Jan Faber <dirk-jan@selwerd.nl>, Aaron Bannert,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Thom May <thom@planetarytramp.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Rename the filter ordering priorities. The recent filtering fixes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce have showcased problems with their usage. Therefore, we need to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce rename them to increase the clarity. (CONTENT->RESOURCE,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce HTTP_HEADER->CONTENT_SET/PROTOCOL) [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.33
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a problem in the new --enable-layout functionality where
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce it wouldn't allow overrides from variables like --prefix,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce --bindir, etc. [Thom May <thom@planetarytramp.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a bug in the core input filter for AP_MODE_EXHAUSTIVE. It
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce no longer hangs around waiting for the socket to close before
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce returning exhaustive data. [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) rename apr_exploded_time_t to apr_time_exp_t (as per renames pending)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Thom May <thom@planetarytramp.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change mod_ssl to always do a full startup/teardown on restarts.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce this allows mod_ssl to be added to a server that is already
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce running and makes it possible to add/change certs/keys after the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce server has been started. [Doug MacEachern]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Introduce PassPhraseDialog "|/path/to/pipe" mechanism to mod_ssl.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This pipe must be a bidirectional 'console' style relay, which
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_ssl prints all prompts to the pipe's stdin, and reads the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce passphrases from the pipe's stdout. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix bug where --sysconfdir and --localstatedir were being
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ignored. [Thom May <thom@planetarytramp.net>, Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix --enable-layout to work again. Caution: When specifying
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce --enable-layout, common arguments like --prefix, --exec-prefix,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce etc. will be ignored and the settings from the layout will be
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce used instead. [Thom May <thom@planetarytramp.net>, Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR 9124, 9873, 9885
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) New Directive for mod_proxy: ProxyRemoteMatch. This provides
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce regex pattern matching for the determination of which requests
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to use the remote proxy for. [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix CustomLog bytes-sent with HTTP 0.9. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Prevent Apache from ignoring SIGHUP due to some lingering 1.3
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce cruft in piped logs and rewritemap child processes.
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson [William Rowe]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) All instances of apr_lock_t have been removed and converted
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson to one of the following new lock APIs: apr_thread_mutex.h,
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson apr_proc_mutex.h, or apr_global_mutex.h. No new code should
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson use the apr_lock.h API, as the old API will soon be deprecated.
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Merged in changes to mod_ssl up through 2.8.7-1.3.23.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall, Cliff Woolley]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod-include: make it handle flush'es and fix the 'false-alarm'
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz, Brian Pane, Ian Holsman]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) ap_get_*_filter_handle() functions to allow 3rd party modules
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to lookup filter handles so they can bypass the filter name
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce lookup when adding filters to a request (via ap_add_*_filter_handle())
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Morgan <rmorgan@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix for multiple file buckets on Win32, where the first file
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce bucket would cause the immediate closure of the socket on any
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce non-keepalive requests. [Ryan Morgan <rmorgan@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Correct Win32 failure of mmap of a segment beyond start of the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce file; fixes large SSL and similar transfers. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Implement apr_proc_detach changes and allow -DNO_DETACH in the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce multi-process mode to not "daemonize" while detaching from the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce controlling terminal. This is necessary for Apache to work with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce process-management tools like AIX's "System Resource Controller"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as well as Dan Bernstein's "daemontools".
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jos Backus <josb@cncdsl.com>, Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Convert mod_auth_digest to use the new apr_global_mutex_t
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce type. [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) fix bug in mod-include where it wouldn't send a unmatched
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce part if it was at the end of a bucket [Ian Holsman]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) worker MPM: Improve logging of errors with the interface between
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the listener thread and worker threads. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Some browsers ignore cookies that have been merged into a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce single Set-Cookie header. Set-Cookie and Set-Cookie2 headers
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce are now unmerged in the http proxy before being sent to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce client. [Graham Leggett]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a problem with proxy where each entry of a duplicated
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce header such as Set-Cookie would overwrite and obliterate the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce previous value of the header, resulting in multiple header
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce values (like cookies) going missing.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Graham Leggett, Joshua Slive]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add the server-limit and thread-limit values to the scoreboard
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for the sake of third-party applications.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Adam Sussman <myddryn@vishnu.vidya.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix segfault when proxy recieves an invalid HTTP response [Ian Holsman]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) OS/390: Get make install to properly copy DSO modules.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: Fix bug in mod_status with displaying "Restart Time"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and "Server uptime".
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix IPv6 name-based virtual hosts. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Introduce AddOutputFilterByType directive. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix DEBUG_CGI support in mod_cgi. PR 9670, 9671.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [David MacKenzie <djm@pix.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix incorrect check for script_in in mod_cgi. PR 9669.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [David MacKenzie <djm@pix.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix segfault and display error when SSLMutex file can not be
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce created. [Adam Sussman <myddryn@vishnu.vidya.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add reference counting to mod_mem_cache cache objects to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce better manage removing objects from the cache.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change the verbage on the ScoreBoardFile in our default configs.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Also change the default to be commented out (unspecified) so we
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce get anonymous shared memory by default. [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Implement new ScoreBoardFile directive logic. This affects how
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce we create the scoreboard's shared memory segment. If the directive
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is present, a name-based segment is created. If the directive is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce not present, first an anonymous segment is created, and if that
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce fails, a name-based segment is created from a file of the name
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce DEFAULT_SCOREBOARD. This gives third-party applications the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ability to access our scoreboard. [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow mod_deflate to work with non-GET requests and properly send
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Content-Lengths. [Sander Striker <striker@apache.org>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix ap_directory_merge() to correctly merge configs when there is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce no <Directory /> block. [Justin Erenkrantz, William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove spurious debug messsages that are normal under HTTP
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce keep-alive logic. [Jeff Trawick, Justin Erenkrantz]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Fix a bug in mod_cgid that would prevent proper shutdown death
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of the cgid process. [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add signal handling back in to the worker MPM for the one_process
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (-X, -DDEBUG, -DONE_PROCESS) case. [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Performance: Reuse per-connection transaction pools in the
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson worker MPM, rather than destroying and recreating them. [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove all signals from the worker MPM's child process. Instead,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the parent uses the Pipe of Death for all communication with the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce child processes. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.32
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_negotiation: ForceLanguagePriority now uses 'Prefer' as the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce default if the directive is not specified. This mirrors older
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce behavior without changes to the httpd.conf. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: solve the win32 service problems in 2.0.31-alpha, by fixing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the service, mpm and logging code, and bugs in apr_file_open_stderr
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and apr_file_dup2 functions. Win2K/XP services have no handles
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce associated for stdin/out/err, which caused unpredictable behavior
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in the prior release. [William Rowe, Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: simplify the Application Event Log messages, since there isn't
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce likely to be 'more information in the error log' before an error log
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce has been opened. [William Rowe]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Win32: substantial cleanup to the mpm_winnt code for legibility and
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson to follow the program flow of other MPMs. [Ryan Bloom, William Rowe]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) Win32: apache -k shutdown now behaves like apache -k stop.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix prefork to not kill the parent if a child hits a resource shortage
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on accept(). [Greg Ames]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix seg faults that occur when what should be the httpd request line
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce starts with \r\n followed by garbage. [Greg Ames]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow statically linked support binaries with the new
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce --enable-static-support flag, and enable this behavior in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the binbuild script. Also add a new --enable-static-htdbm
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce flag. [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow mod_autoindex to serve symlinks if permitted and attempt to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce do only one stat() call when generating the directory listings.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix resolve_symlink to save the original symlink name if known.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Be a bit more sane with regard to CanonicalNames. If the user has
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce specified they want to use the CanonicalName, but they have not
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce configured a port with the ServerName, then use the same port that
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the original request used. [Ryan Bloom and Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) In core_input_filter, check for an empty brigade after
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson APR_BRIGADE_NORMALIZE(). Otherwise, we can get segfaults if a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce client says it will post some data but we get FIN before any
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce data arrives. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Not being able to bind to the socket is a fatal error. We should
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce print an error to the console, and return a non-zero status code.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce With these changes, all of the Unix MPMs do that correctly.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) suexec: Allow HTTPS and SSL_* environment variables to be passed
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce through to CGI scripts. PR 9163
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Reid <breid@customlogic.com>,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Zvi Har'El <rl@math.technion.ac.il>]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) binbuild.sh: Make sure that we use the expat from our source
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson tree so that there aren't any surprises on the target machine.
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson [Jeff Trawick]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) mod_cgid: Add retry logic for when the daemon can't fork fast
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce enough to keep up with new requests. Start using
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce HTTP_SERVER_UNAVAILABLE instead of HTTP_INTERNAL_SERVER_ERROR
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson when we can't talk to the daemon. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) apxs: LTFLAGS envvar can override default libtool options. Try
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce "LTFLAGS=' ' apxs -c mod_foo.c" to see what libtool does under
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the covers. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The Location: response header field, used for external
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson redirect, *must* be an absoluteURI. The Redirect directive
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce tested for that, but RedirectMatch didn't -- it would allow
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce almost anything through. Now it will try to turn an abs_path
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson into an absoluteURI, but it will correctly varf like Redirect
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson if the final redirection target isn't an absoluteURI. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.31
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Create the scoreboard (in the parent) in a global pool context,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce so it survives graceful restarts. This fixes a SEGV during
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson graceful restarts. [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a timeout option to the proxy code 'ProxyTimeout'
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ian Holsman]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) FTP directory listings are now always retrieved in ASCII mode.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce The FTP proxy properly escapes URI's and HTML in the generated
79bc63f0061bf2da3e1775d8c2312c5938cdc9f1Andreas Gustafsson listing, and escapes the path components when talking to the FTP
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson server. It is now possible to browse the root directory by using
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson a url like: ftp://user@host/%2f/ (ported from apache_1.3.24)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Also, the last path component may contain wildcard characters
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce '*' and '?', and if they do, a directory listing is created instead
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson of a file retrieval. Example: ftp://user@host/httpd/server/*.c
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added single-listener unserialized accept support to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce worker MPM [Brian Pane]
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson *) New Directive for mod_proxy: 'ProxyPreserveHost'. This passes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the incoming host header through to the proxied server
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Geoff <g.russell@ieee.org>]
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson *) New Directive Option for ProxyPass. It now can block a location
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce from being proxied [Jukka Pihl <jukka.pihl@entirem.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Don't let the default handler try to serve a raw directory. At
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce best you get gibberish. Much worse things can happen depending
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on the OS. [Jeff Trawick]
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson *) Change the pre_config hook to return a value. Modules can now emit
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce an error message and then cause the server to quit gracefully during
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce startup. This required a bump to the MMN. [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix some unix socket descriptor leaks in the handler side of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_cgid (the part that runs in the server process). Whack a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce silly "close(-1)" in the handler too. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change the pre_mpm hook to return a value, so that scoreboard
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce init errors percolate up to code that knows how to exit
ed45f92d10a8b4cdb7d2e5523f9f3f1c5f4b7ae4Andreas Gustafsson cleanly. This required a bump to the MMN. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add the socket back to the conn_rec and remove the create_connection
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson hook. The create_connection hook had a design flaw that did not
ed45f92d10a8b4cdb7d2e5523f9f3f1c5f4b7ae4Andreas Gustafsson allow creating connections based on vhost info. [Bill Stoddard]
ed45f92d10a8b4cdb7d2e5523f9f3f1c5f4b7ae4Andreas Gustafsson *) Fixed PATH_INFO and QUERY_STRING from mod_negotiation results.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Resolves the common case of using negotation to resolve the request
ed45f92d10a8b4cdb7d2e5523f9f3f1c5f4b7ae4Andreas Gustafsson /script/foo for /script.cgi/foo. [William Rowe]
ed45f92d10a8b4cdb7d2e5523f9f3f1c5f4b7ae4Andreas Gustafsson *) Added new functions ap_add_(input|output)_filter_handle to
ed45f92d10a8b4cdb7d2e5523f9f3f1c5f4b7ae4Andreas Gustafsson allow modules to bypass the usual filter name lookup when
ed45f92d10a8b4cdb7d2e5523f9f3f1c5f4b7ae4Andreas Gustafsson adding hard-coded filters to a request [Brian Pane]
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson *) caching should now work on subrequests (still very experimental)
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson *) The Win32 mpm_winnt now has a shared scoreboard. [William Rowe]
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson *) Change ap_get_brigade prototype to use apr_off_t instead of apr_off_t*.
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson [Justin Erenkrantz]
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson *) Refactor ap_rgetline so that it does not use an internal brigade.
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson Change ap_rgetline's prototype to return errors. [Justin Erenkrantz]
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson *) Remove mod_auth_db. [Justin Erenkrantz]
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson *) Do not install unnecessary pcre headers like config.h and internal.h.
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson [Joe Orton <joe@manyfish.co.uk>]
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson *) Change in quick_hanlder behavior for subrequests. it now passes DONE
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson (as it does for a normal request). quick_handled sub-requests now work
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson in mod-include [Ian Holsman]
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson *) Change SUBREQ_CORE so that it is a 'HTTP_HEADER' filter instead of
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson 'CONTENT' one, as it needs to run AFTER all content headers
79bc63f0061bf2da3e1775d8c2312c5938cdc9f1Andreas Gustafsson *) Rename BeOS MPM directive RequestsPerThread to MaxRequestsPerThread.
79bc63f0061bf2da3e1775d8c2312c5938cdc9f1Andreas Gustafsson [Lars Eilebrecht]
79bc63f0061bf2da3e1775d8c2312c5938cdc9f1Andreas Gustafsson *) Split out blocking from the mode in the input filters.
79bc63f0061bf2da3e1775d8c2312c5938cdc9f1Andreas Gustafsson [Justin Erenkrantz]
79bc63f0061bf2da3e1775d8c2312c5938cdc9f1Andreas Gustafsson *) Fix a segfault in mod_include. [Justin Erenkrantz, Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Cause Win32 to capture all child-worker process errors in
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson Apache to the main server error log, until the child can
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce open its own error logs. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) HPUX 11.*: Do not kill the child process when accept()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce returns ENOBUFS on HPUX 11.*. (ported from a 1.3 patch
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson by [madhusudan_mathihalli@hp.com])
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a problem in the parsing of the <Proxy foo> directive.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) rewrite of mod_ssl input filter for better performance and less
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce memory usage [Doug MacEachern]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) allow quick_handler to be run on subrequests. [Ian Holsman]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_dav now asks its provider to place content directly into the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce filter stack when handling a GET request. The mod_dav/provider
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce API has changed, so providers need to be updated. [Greg Stein]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Clear the output socket descriptor in unixd_accept() to make sure
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce we don't supply a bogus socket to the caller if the accept fails.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This caused problems with the worker MPM, which tried to process
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the returned socket if it was non-NULL. [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Move a check for an empty brigade to the start of core input filter
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to avoid segfaults. [Justin Erenkrantz, Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add FileETag directive to allow configurable control of what
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce data are used to form ETag values for file-based URIs. MMN
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce bumped to 20020111 because of fields added to the end of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the core_dir_config structure. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a segfault in mod_rewrite's logging code caused by passing the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce wrong config to ap_get_remote_host(). [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow mod_cgid to work from a binary distribution install by
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce using 755 for the permissions on the log directory instead of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce 750. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed a segfault that happened during graceful shutdown (or when
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson the httpd ran out of file descriptors) with the worker MPM [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Split all Win32 modules [excluding the core components mod_core,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_so, mod_win32 and the winnt mpm] into individual loadable
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce modules, so the administrator may individually disable the former
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce compiled-in modules by simply commenting out their LoadModule
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directives. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Saved Win32 module authors and porters many future headaches, by
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce duplicating the appropriate .h files such as os.h into the include
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directory, including in the build tree. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_ssl adjustments to help with using toolkits other than OpenSSL:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Use SSL functions/macros instead of directly dereferencing SSL
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce structures wherever possible.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Add type-casts for the cases where functions return a generic pointer.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Add $SSL/include to configure search path.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Moved several pointers out of the shared Scoreboard so it is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce more portable, and will present the vhost name across server
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce generation restarts. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix SSLPassPhraseDialog exec: and SSLRandomSeed exec:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Doug MacEachern]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.30
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the main bug for FreeBSD and threaded MPM's. There are
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce still issues (see STATUS) but at least the server will now
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce run without crashing the machine.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [David Reid, Aaron Bannert, Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a typo in mod_deflate's m4 config section.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [albert chin (china@thewrittenword.com)]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a couple of mod_proxy problems forwarding HTTP connections
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and handling CONNECT:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (1) PR #9190 Proxy failed to connect to IPv6 hosts.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (2) Proxy failed to connect when the first IP address returned by
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the resolver was unreachable but a secondary IP address was.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the module identifer as shown in the docs for various core
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce modules (e.g., the identifer for mod_log_config was previously
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce listed as config_log_module). PR #9338
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [James Watson <ap2bug@sowega.org>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix LimitRequestBody directive by placing it in the HTTP
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce filter. [Justin Erenkrantz]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) Fix mod_proxy seg fault when the proxied server returns
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson an HTTP/0.9 response or a bogus status line.
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson [Adam Sussman]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) Prevent mod_proxy from truncating one character off the
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson end of the status line returned from the proxied server.
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson [Adam Sussman, Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Eliminate loop in ap_proxy_string_read().
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Adam Sussman, Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Provide $0..$9 results from mod_include regex parsing.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow mod-include to look for alternate start & end tags [Ian Holsman]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Introduced the ForceLanguagePriority directive, to prevent
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce returning MULTIPLE_CHOICES or NONE_ACCEPTABLE in some cases,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce when using Multiviews. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a problem which prevented mod_cgid and suexec from working
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce together reliably [Greg Ames]
79bc63f0061bf2da3e1775d8c2312c5938cdc9f1Andreas Gustafsson *) Remove the call to exit() from within mod_auth_digest's post_config
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce phase. [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a problem in mod_auth_digest that could potentially cause
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce problems with initialized static data on a system that uses DSOs.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a segfault in the worker MPM that could happen during
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce child process exits. [Brian Pane, Aaron Bannert]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Allow mod_auth_dbm to handle multiple DBM types [Ian Holsman]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix matching of vhosts by ip address so we find IPv4
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce vhost address when target address is v4-mapped form of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce that address. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) More performance tweaks to the BNDM string-search algorithm
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce used to find "<!--#" tokens in mod_include [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Miscellaneous small performance fixes: optimized away various
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce string copy operations and removed large temp buffers from
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the stack [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed startup segfault that occurred when a VirtualHost
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directive had a port but no address [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow htdbm to work with multiple DBM types [Ian Holsman]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: Made change to apr_sendfile() to return APR_ENOTIMPL
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce if oslevel < WINNT. This should fix several problems reported
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Against 2.0.28 on Windows 98 [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: Fix bug that could cause CGI scripts with QUERY_STRINGS
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to fail. [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change core code to allow an MPM to set hard thread/server
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce limits at startup. prefork, worker, and perchild MPMs now have
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directives to set these limits. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: The async AcceptEx() event should be autoreset upon
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce successful completion of a wait (WaitForSingleObject). This
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce eliminates a number of spurious
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce setsockopt(SO_UPDATE_ACCEPT_CONTEXT) failed." messages.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Move any load library path environment variables out of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce apachectl and into a separate environment variable file which
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce can be more easily tailored by the admin. The environment
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce variable file as built by Apache may have additional system-
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce specific settings. For example, on OS/390 we tailor the heap
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce settings to allow lots of threads. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Use the new APR pool code to reduce pool-related lock
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce contention in the worker MPM. [Sander Striker]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The POD no longer assumes the child is listening on 127.0.0.1
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and now pulls the first hostname in the list of listeners to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce perform the dummy connect on. This fixes a bug when the user
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce had configured the Listen directive for an IP other than
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce 127.0.0.1. This would result in undead children and error
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce messages such as "Connection refused: connect to listener".
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The worker MPM now respects the LockFile setting, needed to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce avoid locking problems with NFS. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix segfault when worker MPM receives SIGHUP.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ian Holsman, Aaron Bannert, Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix bug that could potentially prevent the perchild MPM from
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce working with more than one vhost/uid. [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change make install and apxs -i processing of DSO modules to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce perform special handling on platforms where libtool doesn't install
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_foo.so. This fixes some wonkiness on HP-UX, Tru64, and AIX
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce which prevented standard LoadModule statements from working.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Jeff Trawick]
8e245ec21beee31a780de9b89ba1e8bb2b9f4c9aAndreas Gustafsson *) Whenever mod_so is enabled (not just when there are DSOs for
8e245ec21beee31a780de9b89ba1e8bb2b9f4c9aAndreas Gustafsson our modules), do whatever special magic is required for compiling/
8e245ec21beee31a780de9b89ba1e8bb2b9f4c9aAndreas Gustafsson loading third-party modules. This allows third-party DSOs to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce be used on an AIX build when there were no built-in modules
7c0ebe385b36d64c2424dd5a3e62d441c08e7037Andreas Gustafsson built as DSOs. (This should help on OS/390 and BeOS as well.)
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Jeff Trawick]
8e245ec21beee31a780de9b89ba1e8bb2b9f4c9aAndreas Gustafsson *) Allow apxs to be used to build DSOs on AIX without requiring the
8e245ec21beee31a780de9b89ba1e8bb2b9f4c9aAndreas Gustafsson user to hard-code the list of import files. (This should help
8e245ec21beee31a780de9b89ba1e8bb2b9f4c9aAndreas Gustafsson on OS/390 and BeOS as well.) [Jeff Trawick]
8e245ec21beee31a780de9b89ba1e8bb2b9f4c9aAndreas Gustafsson *) Resolved segfault in mod_isapi when configuring with ISAPICacheFile.
8e245ec21beee31a780de9b89ba1e8bb2b9f4c9aAndreas Gustafsson PR 8563, 8919 [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get binary builds working when libapr and libaprutil are built
7c0ebe385b36d64c2424dd5a3e62d441c08e7037Andreas Gustafsson shared [Greg Ames]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Get shared builds of libapr and libaprutil, as well as Apache DSOs,
8e245ec21beee31a780de9b89ba1e8bb2b9f4c9aAndreas Gustafsson working on AIX. [Aaron Bannert, Dick Dunbar <RLDunbar@pacbell.net>,
8e245ec21beee31a780de9b89ba1e8bb2b9f4c9aAndreas Gustafsson Gary Hook <ghook@us.ibm.com>, Victor Orlikowski, Jeff Trawick]
7c0ebe385b36d64c2424dd5a3e62d441c08e7037Andreas Gustafsson *) Fix the handling of SSI directives in which the ">" of the
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson terminating "-->" is the last byte in a file [Brian Pane]
8e245ec21beee31a780de9b89ba1e8bb2b9f4c9aAndreas Gustafsson *) Add back in the "suEXEC mechanism enabled (wrapper: /path/to/suexec)"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce message that we had back in apache-1.3 and still have scattered
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce throughout our docs. [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Prevent the Win32 port from continuing after encountering an
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce error in the command line args to apache. [William Rowe]
7c0ebe385b36d64c2424dd5a3e62d441c08e7037Andreas Gustafsson *) On a error in the proxy, make it write a line to the error log
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Various mod_ssl performance improvements [Doug MacEachern]
7c0ebe385b36d64c2424dd5a3e62d441c08e7037Andreas GustafssonChanges with Apache 2.0.29
7c0ebe385b36d64c2424dd5a3e62d441c08e7037Andreas Gustafsson *) Add buffering in core_output_filter to ensure that long
7c0ebe385b36d64c2424dd5a3e62d441c08e7037Andreas Gustafsson lists of small buckets don't cause small packet writes.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Pane, Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the installation target to make sure that the manual is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce installed in the correct location.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Yoshifumi Hiramatsu <hiramatu@boreas.dti.ne.jp> and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Gomez Henri <hgomez@slib.fr>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the cmd command for mod_include. When we are processing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a cmd command, we do not want to use the r->filename to set
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the command name. The command comes from the SSI tag. To do this,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce I added a variable to the function that builds the command line
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in mod_cgi. This allows the include_cmd function to specify
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the command line itself. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change open_logs hook to return a value, allowing you
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to flag a error while opening logs
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ian Holsman, Doug MacEachern]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change post_config hook to return a value, allowing you
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to flag a error post config
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ian Holsman, Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow SUEXEC_BIN (the path to the suexec binary that is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce hard-coded into the server) to be specified to the configure
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce script by the --with-suexec-bin parameter. [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix segv in worker MPM following accept on pipe-of-death
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add mod_deflate to experimental.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ian Holsman, Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Bail out at configure time if an invalid MPM was specified.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [jean-frederic clere <jfrederic.clere@fujitsu-siemens.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Prevent segv in ap_note_basic_auth_failure() when no AuthName is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce configured [John Sterling <sterling@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix apxs to use sbindir. [Henri Gomez <hgomez@slib.fr>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a problem with IPv6 vhosts. PR #8118 [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Optimization for the BNDM string-search function in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_include. [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed the behavior of the XBitHack directive.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Taketo Kabe <kabe@sra-tohoku.co.jp>, Cliff Woolley] PR#8804
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The threaded MPM for Unix has been removed. Use the worker
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson MPM instead. [various]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) APR-ize the resolver logic in mod_unique_id. This fixes a bug
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in logging the error from a failed DNS lookup. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added the missing macros AP_INIT_TAKE13 and AP_INIT_TAKE123.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Cliff Woolley]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Get mod_cgid killed when a MPM exits due to a fatal error.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a file descriptor leak in mod_include. When we include a
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson file, we use a sub-request, but we didn't destroy the sub-request
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson immediately, instead we waited until the original request was
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson done. This patch closes the sub-request as soon as the data is
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson done being generated. [Brian Pane <bpane@pacbell.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow modules that add sockets to the ap_listeners list to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce define the function that should be used to accept on that
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce socket. Each MPM can define their own function to use for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the accept function with the MPM_ACCEPT_FUNC macro. This
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce also abstracts out all of the Unix accept error handling
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce logic, which has become out of synch across Unix MPMs.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Fix a bug which would cause the response headers to be omitted
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce when sending a negotiated ErrorDocument because the required
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce filters were attached to the wrong request_rec.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [John Sterling <sterling@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove commas from the end of the macros that define
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directives that are used by MPMs. Prior to this patch,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce you would use these macros without commas, which was unlike
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the macros for any other directives. Now, the caller provides
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the comma rather than the macro providing it. This makes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the macros look more like the rest of the directives.
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson [Ryan Bloom and Cliff Woolley]
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) Add 'redirect-carefully' environment option to disable sending
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce redirects under special circumstances. This is helpful for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Microsoft's WebFolders when accessing a directory resource via
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce DAV methods. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Begin to abstract out the underlying transport layer.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce The first step is to remove the socket from the conn_rec,
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson the server now lives in a context that is passed to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce core's input and output filters. This forces us to be very
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce careful when adding calls that use the socket directly,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce because the socket isn't available in most locations.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Really reset the MaxClients value in worker and threaded
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce when the configured value is not a multiple of the number
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of threads per child. We said we did previously but we
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce forgot to. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add Debian layout. [Daniel Stone <daniel@sfarc.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If shared modules are requested and mod_so is not available,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce produce a fatal config-time error. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Improve http2env's performance by cutting the work it has to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce do. [Brian Pane <bpane@pacbell.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) use new 'apr_hash_merge' function in mod_mime (performance fix)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Pane <bpane@pacbell.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.28
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix infinite loop in mod_cgid.c.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dale Ghent <daleg@elemental.org>, Brian Pane <bpane@pacbell.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) When no port is given in a "ServerName host" directive, the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce server_rec->port is now set to zero, not 80. That allows for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce run-time deduction of the correct server port (depending on
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce SSL/plain, and depending also on the current setting of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce UseCanonicalName). This change makes redirections
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce work, even with https:// connections. As in Apache-1.3, the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce connection's actual port number is never used, only the ServerName
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce setting or the client's Host: setting. Documentation updated
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to reflect the change. [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a '%{note-name}e' argument to mod-headers, which works in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the same way as mod_log_confg. [Ian Holsman]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the spelling of the AP_MPMQ_MIN_SPARE_DAEMONS and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce AP_MPMQ_MAX_REQUESTS_DAEMON macros in ap_mpm.h and all standard
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce MPMs. [Cliff Woolley]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Introduce htdbm, a user management utility for db/dbm authorization
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce databases. [Mladen Turk <mturk@mappingsoft.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Optimize usage of strlen and strcat in ap_directory_walk.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Pane <bpane@pacbell.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.27
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Introduce an Apache mod_ssl initial configuration template
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (ssl.conf, generated from ssl-std.conf). [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed a memory leak in the getline parsing code that could
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce be triggered by arbitrarily large header lines. Requests
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce from the core input filter for single lines are now limited
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to HUGE_STRING_LEN (8192 bytes). [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a truncation bug in how we print the port on the Via: header.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce The routine that prints the Via: header now takes a length for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the port string. [Zvi Har'El <rl@math.technion.ac.il>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Some syntax errors in mod_mime_magic's magic file can result
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in a 500 error, which previously was unlogged. Now we log the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce error. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add the support/checkgid helper app, which checks the run-time
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce validity of group identifiers usable in the Group directive.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Various --enable-so options have been fixed: --enable-so is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce treated as "static"; explicit --enable-so=shared issues an error;
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and explicit --enable-so fails with error on systems without
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce APR_HAS_DSO. [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a segfault in the core input filter when the client socket
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce gets disconnected unexpectedly. [Cliff Woolley]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the reporting for child processes that die. This removes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce all of the non-portable W* macros from Apache.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick and Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: Track and display "Parent Server Generation:" in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_status output. The generation will be bumped at
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce server graceful restart, when the child process exits
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce by hitting MaxRequestsPerChild or if the child
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce process exits abnormally. [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: Fix problem where MaxRequestsPerChild directive was
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce not being picked up in favor of the default. Enable
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the parent to start up a new child process immediately upon
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the old child starting shutdown.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix some bungling of the remote port in rfc1413.c so that
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce IdentityCheck retrieves the proper user id instead of failing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and thus always returning "nobody."
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dick Streefland <Dick.Streefland@xs4all.nl>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Introduced thread saftey for mod_rewrite's internal cache.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Pane <bpane@pacbell.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Simplified mod_env's directives to behave as most directives are
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce expected, in that UnsetEnv will not unset a SetEnv and PassEnv
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directive following that UnsetEnv within the same container.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Also provides a runtime startup warning if a PassEnv configured
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce environment value is undefined. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The worker MPM is now completely ported to APR's new lock API. It
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce uses native APR types for thread mutexes, cross-process mutexes,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and condition variables. [Aaron Bannert]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Sync up documentation to remove all references to the now deprecated
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Port directive. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Moved all ldap modules from the core to httpd-ldap sub-project
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Exit when we can't listen on any of the configured ports. This
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is the same behavior as 1.3, and it avoids having the MPMs to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce deal with bogus ap_listen_rec structures. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Cleanup the proxy code that creates a request to the origin
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce server. This change adds an optional hook, which allows modules
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to gain control while the request is created if the proxy module
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is loaded. The purpose of this hook is to allow modules to add
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce input and/or output filters to the request to the origin. While
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce I was at it, I made the core use this hook, so that proxy request
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce creation uses some of the code from the core. This can still be
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce greatly improved, but this is a good start. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.26
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Port the MaxClients changes from the worker MPM to the threaded
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce MPM. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix mod_proxy so that it handles chunked transfer-encoding and works
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce with the new input filtering system. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Introduce the MultiviewsMatch directive, to allow the operator
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to be flexible in recognizing Handlers and Filters filename
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce extensions as part of the Multiviews matching logic, strict with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce MultiviewsMatch NegotiatedOnly to accept only filename extentions
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce that designate negotiated parameters, (content type, charset, etc.)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce or MultiviewsAll for the 1.3 behavior of matching any files, even
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce if they have unregistered extensions. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed the configure script to add a LoadModule directive to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the default httpd.conf for any module that was compiled
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as a DSO. [Aaron Bannert <aaron@clove.org>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) rewrite mod_ssl input filtering to work with the new input filtering
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce system. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) prefork: Don't segfault when we are able to listen on some but
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce not all of the configured ports. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Build mod_so even if no core modules are built shared.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Aaron Bannert <aaron@clove.org>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Introduce ap_directory_walk rewrite (with further optimizations
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce required) to adapt to the ap_process_request_internal() changes.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Optimized so subrequests and redirects now reuse previous section
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce merges, until we mismatch with the original directory_walk, and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce precomputed r->finfo results will cause directory_walk to skip
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the most expensive phases of the function. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow ApacheMonitor to connect to and control Apache on other
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce WinNT/2K machines. [Mladen Turk <mturk@mappingsoft.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove the Port directive. In it's place, the Listen directive
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is now a required directive, which tells Apache what port to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce listen on. The ServerName directive has also been extended
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to accept an optional port. If the port is specified to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ServerName, the server will report that port whenever it
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce reports the port that it is listening on. This change was
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce made to ease configuration errors that stem from having a Port
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directive, and a Listen directive. In that situation, the server
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce would only listen to the port specified by the Listen command,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce which caused a lot of confusion to users. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added mod_mime_magic, mod_unique_id and mod_vhost_alias to the Win32
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce build, as loadable modules. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix --enable-mods-shared processing. If most is specified,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce then all modules that can be compiled as shared modules are.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Aaron Bannert <aaron@clove.org>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Update the mime.types file to map video/vnd.mpegurl to mxu
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and add commonly used audio/x-mpegurl for m3u extensions.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Heiko Recktenwald <uzs106@uni-bonn.de>, Lars Eilebrecht]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Eliminate the depreciated r->content_language, in favor of the array
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce r->content_languages introduced many years ago. Module authors must
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce substantially overhaul their modules, so this needs to be upgraded
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce if the module still relied on backwards-brokeness. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow configure help strings to work with autoconf 2.50+ and 2.13.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Rewrite the input filtering mechanisms to consolidate and reorganize
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce code. In short, core_input_filter does something now and
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington ap_http_filter is now only concerned with HTTP. [Justin Erenkrantz]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) Update the Win32 build to re-absorb mod_proxy and family.
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington [William Rowe]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) Resolved the build failure on Win32 using MSVC 5.0 (without the
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington current SDK.) [William Rowe]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) Some style changes to the code that does ProxyErrorOverride. Fixed
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington config merge behaviour. [Graham Leggett]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) Allow support programs to be compiled against a static version
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington of libapr. This allows the smaller support programs to be
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington relocated. [Aaron Bannert <aaron@clove.org>]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) Update the mime.types file to the registered media types as
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington of 2001-09-25, and add mapping for xsl extension [Mark Cox]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) Fix MaxClients in the Worker MPM, so that it specifies the maximum
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington number of clients that can connect at the same time, instead of
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington specifying the maximum number of child processes.
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington [Aaron Bannert <aaron@clove.org>]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) Switch proc_pthread AcceptMutex configuration directive to pthread to
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington be consistent with 1.3. [Justin Erenkrantz]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) Cache apr_explode_localtime() value for 15 seconds.
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington [Brian Pane <bpane@pacbell.net>]
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington *) Fix mod_include to not return ETag or Last-Modified headers.
116dd27475e0521a033139ad5ac2355cf4b3e29bBrian Wellington [Ian Holsman <ianh@cnet.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix worker MPM's scoreboard logic. [Aaron Bannert <aaron@clove.org>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Eliminate the wasteful run-time conversion of method names from strings
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to numbers in places where the methods are known at compile time.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Pane <bpane@pacbell.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Turn the worker MPM's queue into a LIFO. This may
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce improve cache-hit performance under some conditions.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Aaron Bannert <aaron@clove.org>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Switch back to SIGUSR1 for graceful restarts on all platforms that
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce support it. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Cleanup the worker MPM. We no longer re-use transaction
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce pools. This incurs less overhead than shuffling the pools
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce around so that they can be re-used. Remove one of the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce queue's condition variables. We just redefined the API to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce state that you can't try to add more stuff than you allocated
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce segments for. [Aaron Bannert <aaron@clove.org>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix SSL VPATH builds [Cody Sherr <csherr@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed persistent connections when a request contains a body.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Greg Stein]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_dav uses a new API to speak to the backend provider for dead
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce property management. [Greg Stein]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove the Win32 script-processing exception from mod_cgi, and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce roll build_command_line/build_argv_list into a unified, overrideable
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson ap_cgi_build_command optional function. [William Rowe]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Rewrite find_start_sequence to use a better search algorithm
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson to find the start tag. [Justin Erenkrantz]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Fix a seg fault in mod_include. When we are generating an
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson internal redirect, we must set r->uri to "", not a bogus
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson string, and not NULL. [Ryan Bloom]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Optimized location_walk, so subrequests, redirects and second passes
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson now reuse previous section merges on a <Location > by <Location >
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson basis, until we mismatch with the original location_walk.
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson [William Rowe]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Back out the 1.45 change to util_script.c. This change made
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson us set the environment variable REQUEST_URI to the redirected
4e99bcb0603f3270ff89323d149a1fbc668e7da0Andreas Gustafsson URI, instead of the originally requested URI.
4e99bcb0603f3270ff89323d149a1fbc668e7da0Andreas Gustafsson [Taketo Kabe <kabe@sra-tohoku.co.jp>]
4e99bcb0603f3270ff89323d149a1fbc668e7da0Andreas Gustafsson *) Make mod_include do lazy evaluation of potentially expensive to
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson compute variables. [Brian Pane <bpane@pacbell.net>]
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson *) Fix logging of bytes sent for HEAD requests. %b and %B should
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson log either - or 0, before this patch, they were both logging
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson the file size. [Taketo Kabe <kabe@sra-tohoku.co.jp>]
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson *) Make mod_include check for BYTE_CHECK_THRESHOLD per bucket rather
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson than per character. [Brian Pane <bpane@pacbell.net>]
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson *) Normalize the primary request, redirects and sub-requests to
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson run the same ap_process_request_internal for consistency in
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson robustness, behavior and security. [William Rowe]
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson *) Fix a segfault with mod_include when r->path_info is not set
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson (which is the case with mod_proxy). [Ian Holsman <ianh@cnet.com>]
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson *) Add -X functionality back. This indicates to all MPMs and any other
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson part of Apache that it should run in "debug" mode. [Justin Erenkrantz]
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson *) Some initial support for the cygwin platform [prefork only].
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson This is not to be confused with support for the WinNT/Win32
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson platform, which is the recommended configuration for native
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson Win32 users. The cygwin platform support is recommended for
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson cygwin platform users. [Stipe Tolj <tolj@wapme-systems.de>]
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson *) Changed syntax of Set{Input|Output}Filter. The list of filters
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson must be semicolon delimited (if more than one filter is given.)
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson The Set{Input|Output}Filter directive now overrides a parent
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson container's directive (e.g. SetInputFilter in <Directory /web/foo>
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson will override any SetInputFilter directive in <Directory /web>.)
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson This new syntax is more consistent with Add{Input|Output}Filter
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson directives defined in mod_mime. Also cures a bug in prior releases
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson where the Set{Input|Output}Filter directive would corrupt the
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson global configuration if the multiple directives were nested.
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson [William Rowe]
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson *) Cured what's ailed mime for quite some time. If an AddSomething
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson was given in the configuration (Language, Charset, Handler or
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson Encoding) Apache would set the content type as given by AddType,
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson but refused to check the mime.types file if AddType wasn't given
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson for that specific extension. Setting the AddHandler for .html
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson without setting the AddType text/html html would cause Apache to
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson use the default content type. [William Rowe]
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson *) Added some bulletproofing to memory allocation in the LDAP cache
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson code. [Graham Leggett]
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas GustafssonChanges with Apache 2.0.25
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson *) Move the installed /manual directory out of the /htdocs/ tree, so
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson that it can be kept more independently from the remaining document
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson root. The "Alias /manual ..." already allowed for easy projection
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson into existing private document trees. [Martin Kraemer]
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson *) Add specified user attributes to the environment when using
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson mod_auth_ldap. This allows you to use mod_include to embed specified
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson user attributes in a page like so:
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson Hello <!--#echo var="AUTHENTICATE_CN"-->, how are you?
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson [Graham Leggett]
79bc63f0061bf2da3e1775d8c2312c5938cdc9f1Andreas Gustafsson *) Fix a performance problem with the worker MPM. We now create
79bc63f0061bf2da3e1775d8c2312c5938cdc9f1Andreas Gustafsson transaction pools once, and re-use them for each connection.
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson [Aaron Bannert <aaron@clove.org>]
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson *) Modfied mod_mime to prevent mod_negotation from serving a multiview
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson of a 'handler' or 'filter', so that any filename extension that does
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce not contribute to the negotiated metadata can't be served without
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce an explicit request. E.g., if the .Z extension is associated with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce an unzip filter, the user request somefile.Z.html, mod_negotiation
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce won't serve it. It can serve somefile.Z.html when somefile.Z is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce requested, since the .Z extension is explictly requested, if the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce .html extension is associated with ContentType text/html.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Introduce the AddInputFilter filter[;filter...] ext [ext...]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and corresponding AddOutputFilter syntax, to insert one or more
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce filters by mod_mime filename extension processing.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a growing connection pool in core_output_filter() for
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson keepalive requests. [Jeff Trawick]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Moved split_and_pass_pretag_buckets back to being a
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson macro at Ryans's request. Removed the return from it
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson by setting and returning a return code instead. Updated
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson the code to check the return code from the macro and
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson do the right thing. [Paul J. Reder]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Fix a segfault when a numeric value was received for Host:.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson [Jeff Trawick]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Add a function ap_remove_input_filter. This is to match
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson up with ap_remove_output_filter. [Ryan Bloom]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Clean up location_walk, so that this step performs a minimum
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson amount of redundant effort (it must be run twice, but it will no
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson longer reparse all <Location > blocks when the request uri
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson hadn't changed.) [William Rowe]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Eliminate proxy: (and all other 'special') processing from the
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson ap_directory_walk() phase. Modules that want to use special
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson walk logic should refer to the mod_proxy map_to_location example,
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson with it's proxy_walk and proxysection implementation. This makes
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson either directory_walk flavor much more legible, since that phase
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson only runs against real <Directory > blocks.
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson [William Rowe]
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) SECURITY: Fix a security problem in mod_include which would allow
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson an SSI document to be passed to the client unparsed.
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson [Cliff Woolley, Brian Pane]
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) Introduce the map_to_storage hook, which allows modules to bypass
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson the directory_walk and file_walk for non-file requests. TRACE
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson shortcut moved to http_protocol.c as APR_HOOK_MIDDLE, and the
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson directory_walk/file_walk happen as APR_HOOK_VERY_LAST in core.c.
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson [William Rowe]
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) Add the ability for mod_include to add the INCLUDES filter
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson if the file is configured for the server-parsed handler.
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson This makes the configuration for .shtml files much easier
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson to understand, and allows mod_include to honor Apache 1.3
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson config files. Based on Doug MacEachern's patch to PHP
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson to do the same thing. [Ryan Bloom]
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) force OpenSSL to ignore process local-caching and to always
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson get/set/delete sessions using mod_ssl's callbacks
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson [Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>,
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson Geoff Thorpe <geoff@geoffthorpe.net>]
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) Make the worker MPM shutdown and restart cleanly. This also
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson cleans up some race conditions, and gets the worker using
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson pools more cleanly. [Aaron Bannert <aaron@clove.org>]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Implement CRYPTO_set_locking_callback() in terms of apr_lock
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson [Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Fix for mod_include. Ryan's patch to check error
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson codes put a return in the wrong place. Also, the
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson include handler return code wasn't being checked.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson I don't like macros with returns, so I converted
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson SPLIT_AND_PASS_PRETAG_BUCKETS into a function.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson [Paul J. Reder <rederpj@raleigh.ibm.com>]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) fix segv in mod_mime if no AddTypes are configured
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson [John Sterling <sterling@covalent.net>]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Enable ssl client authentication at SSL_accept time
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson [Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Fix a segfault in mod_include when the original request has no
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson associated filename (e.g., we're filtering the error document for
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson a bad URI). [Jeff Trawick]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Fix a storage leak (a strdup() call) in mod_mime_magic. [Jeff Trawick]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) The prefork and OS/2 MPMs are overwriting the pid file when a second copy
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson of httpd is started and shuts down due to socket conflict. Moving the
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson call to ap_log_pid solves the problem.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Changed the late-1.3 log_config substitution %c to %X, to log the
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson status of the closed connection, as it conflicts with the far more
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson common, historical ssl logging directive %...{var}c. [William Rowe]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Added the common error/ tree to the build/install targets
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson (similar to the common icons/ tree) for the multi-language error
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson messages that Lars committed earlier. [William Rowe]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Added a multi process, multi threaded OS/2 MPM mpmt_os2. [Brian Havard]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Added a default commented-out mod_ldap and mod_auth_ldap
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson configuration to httpd-std.conf and httpd-win.conf
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson [Graham Leggett]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Added documentation for mod_ldap and mod_auth_ldap.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson [Graham Leggett]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Enabled negative caching on attribute comparisons in the LDAP cache.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson Fixed a problem where the default cache TTL was set in milliseconds
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson not microseconds causing the cache to time out almost immediately.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson [Graham Leggett]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Fixed all the #if APR_HAS_SHARED_MEMORY checks within the LDAP
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson module code to follow APR. [Graham Leggett]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Fixed LDAP cleanup on graceful restarts. LDAP connections are now
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson cleaned up when the connection pool pool is cleaned up.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson [Graham Leggett]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Fix a minor issue with Jeff Trawick's mod_include
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson patch. Without this patch, the code will just allocate
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson more bytes in get_combined_directive than are needed.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Added the LDAP authentication module mod_auth_ldap.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson [Dave Carrigan <dave@rudedog.org>, Graham Leggett]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Added the LDAP cache and connection pooling module mod_ldap.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson [Dave Carrigan <dave@rudedog.org>, Graham Leggett]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Fix --enable-modules=all breakage with mod_auth_db and mod_auth_digest
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson by allowing a module to disable itself if its prerequisites are not
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson met. [Justin Erenkrantz]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas GustafssonChanges with Apache 2.0.24
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Fix a couple of issues in mod_include when the tag appeared at
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson offsets near 8192 in the file being parsed. [Jeff Trawick]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Fix an assertion failure in mod_ssl when the keepalive timeout is
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson reached. [Jeff Trawick]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Numerous improvements to the Win32 build system. Introduced command line
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson builds without requiring .mak files for MSVC 6.0 and later versions.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson Improved .dsp file compatibility for both Visual Studio 5.0 and 6.0 users.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson [William Rowe]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Assorted corrections and improvements to the winnt_mpm startup code. Better
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson reporting of uninstalled services and other error conditions, and changed the
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson default service name to Apache2. [William Rowe]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Numerous improvements to the Win32 ApacheMonitor utility, including winnt_mpm
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson compatibility with existing Apache 1.3 Win32 Apache management utilites.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson [Mladen Turk <mturk@mappingsoft.com>, William Rowe]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Fixed the segfaults in mod_mime introduced by hash tables in 2.0.20.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [William Rowe, Greg Ames]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Rounded out the mod_mime Add/Remove pairs by adding RemoveLanguage
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson and RemoveCharset directives. [William Rowe]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) The Unix MPMs other than perchild now allow child server
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson processes to use the accept mutex when starting as root and
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson using SysV sems for the accept mutex. Previously, this
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson combination would lead to fatal errors in the child server
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson processes. perchild can't use SysV sems because of security
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson issues. [Jeff Trawick, Greg Ames]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Added Win32 revision stamp resources to all http binaries
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson (including modules/ and support/ tools.) PR7322 [William Rowe]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Fix ap_rvprintf to support more than 4K of data at one time.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson [Cody Sherr <csherr@covalent.net>]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) We have always used the obsolete/deprecated Netscape syntax
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson for our tracking cookies; now the CookieStyle directive
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson allows the Webmaster to choose the Netscape, RFC2109, or
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson RFC2965 format. The new CookieDomain directive allows the
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson setting of the cookie's Domain= attribute, too. PR #s 5006,
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson 5023, 5920, 6140 [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Tweak server/Makefile so that the rules for generating exports.c
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce are compatible with make utilities which don't expand wildcards
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in a dependency list (e.g., OS/390 make, certain levels of GNU
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce make). [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Install the SSL headers. [John Sterling <sterling@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Begin to sanitize the MPM configuration directives. Now, all
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson MPMs use the same functions for all common MPM directives. This
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce should make it easier to catch all bugs in these directives once.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Cody Sherr <csherr@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Close a major resource leak. Every time we had issued a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce graceful restart, we leaked a socket descriptor.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a problem with the new method code. We need to cast
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the 1 to an apr_int64_t or it will be treated as a 32-bit
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce integer, and it will wrap after being shifted 32 times.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Cody Sherr <csherr@covalent.net> and Ryan Morgan <rmorgan@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a bug in mod_expires. Previous to this patch, if you
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce told mod_expires to add 604800 seconds to the last-modified
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce time, it actually added 604800 usec's to the last-modified time,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce so that when looking at the response it looked like nothing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce had been done. The root of the problem was that we always compute
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson time in usec's, but we ask users to input sec's. This means we
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson need to convert to usec's before using those values.
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson *) The worker MPM now handles shutdown and restart requests. It
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson definitely isn't perfect, but we do stop the servers correctly.
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson The biggest problem right now is that SIGHUP causes the server to
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson just die. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.23
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Use the prefork MPM by default on Unix. [various]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added a systray icon monitor application for Win32.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Mladen Turk <mturk@mappingsoft.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_rewrite: Fix the line ending on some non-Unix systems for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce messages written to the rewrite log.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Richard Labennett <rlabenn@us.ibm.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) All mod_autoindex query parsing is now quietly quashed with the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce IndexOption IgnoreClient. The IndexOption SuppressColumnSorting
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce still drops the column sort <a href>'s for the column headers, but
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce IgnoreClient is required to ignore these Query options entirely.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Introduced new mod_autoindex query argument parsing for F=[0|1|2]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to allow the client to select plain, FancyIndexing or HTMLTable
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce formatting, V=[0|1] to inhibit or enable version sorting, and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce P=pattern to return only specific files. The old Query Arguments
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce were reorganized as C=f for sorting column 'f' (same N, D, S, or M
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as before), and O=A|D for ordering ascending or descending.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed an error in mod_include's directive parsing routines which
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce caused #if, #elif, and #else expressions containing backslashes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to be improperly evaluated. [Cliff Woolley]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Introduced new mod_autoindex IndexOptions flags: SuppressIcon to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce drop the icon column, SuppressRules to drop the <hr> elements,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and HTMLTable to create rudimentary HTML table listings (implies
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce FancyIndexing). [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Re-introduced the mod_autoindex IndexOptions flag TrackModified
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce from Apache 1.3.15. This is needed for two reasons, first, given
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce multiple machines within a server farm, ETags and Last-Modified
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce stamps won't correspond from machine to machine, and second, many
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Unixes don't capture changes to the date or time stamp of existing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce files, since these don't modify the dirent itself. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Re-introduced the mod_autoindex IndexOptions flag FoldersFirst
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and DirectoryWidth options from Apache 1.3.10.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe, Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Eliminated FancyIndexing directive, deprecated early in Apache
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce 1.3 by the IndexOptions FancyIndexing syntax. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_autoindex now excludes any file names that would result in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce an error, other than a success or redirect. Also optimized
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the parent directory, always included except in the URI '/'.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Refactored mod_negotiation and mod_mime to help mod_dir accept
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce negotiated index pages, and prevent the server from defaulting
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to an autoindex of the directory. mod_negotiation will now die
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce with a 500 Internal Error if it could match some filenames
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (e.g. for mod_dir) but none can be served. mod_negotation now
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce refuses to serve any file with an extention that mod_mime doesn't
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce recognize, and wasn't part of the request. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Eliminate mod_cgi's handling of .exe files without the .exe file
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce extension. This is already handled by multiviews, if the admin
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce wishes to AddHandler .exe or define a content type handler and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce associate .exe files with that content type. Multiviews must be
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce enabled to allow these to be served. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Speed up the server's response to a spike in incoming workload
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce or restarts by assigning empty scoreboard slots to new processes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce when they are available. [Greg Ames]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a handler to mod_includes.c. This handler is designed to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce implement the XbitHack directive. This can't be done with a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce fixup, because we need to check the content-type, which is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce only available in the handler phase. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make the includes filter check return codes from filters lower in
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson the filter chain. If a lower level filter returns an error, then
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer the request needs to stop immediately. This allows mod_include to
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer stop parsing data once a lower filter recognizes an error.
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer *) Add the ability to extend the methods that Apache understands
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer and have those methods <limit>able in the httpd.conf. It uses
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer the same bit mask/shifted offset as the original HTTP methods
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer such as M_GET or M_POST, but expands the total bits from an int to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce an ap_int64_t to handle more bits for new request methods than
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce an int provides. [Cody Sherr <csherr@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix broken mod_mime behavior in merging its arguments. Possible
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce cause of unexplicable crashes introduced in 2.0.20. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Solve many mod_ssl porting issues (too many to detail) with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce help from the whole team, but most notably [Ralf S. Engelschall,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Doug MacEachern, William Rowe, Cliff Woolley]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) More stall fixes for the threaded & worker mpm's.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Make mod_status output more accurate. Don't
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce count workers in processes which aren't actively
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce serving requests. [Greg Ames]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: Get SSI exec cgi tag working. [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a single listener/multiple worker MPM. This MPM is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce definately not fully correct, but it allows us to solve many
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of the problems that exist in the threaded MPM. This is a
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson modified version of the threaded MPM. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Improve content generation throughout Apache, providing closer
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce compliance with HTML 3.2, HTML 4.01 Transitional and XHTML 1.0
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Transitional specifications. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.22
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a problem where the threaded MPM stalls after restarts or
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce segfaults. Also prevent multiple active processes from using
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the same scoreboard slot. [Greg Ames]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Apache/Win32 now fills in the service description with Apache's
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce server version string, including loaded and advertised modules.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Improved support for the Win32 build, to recover gracefully from
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce missing apr or apr-util directories or the awk interpreter,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce create the proper cgi-bin examples, including a test-cgi.bat, and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce fix the perl shebang line for printenv.pl, when installing from
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the build environment. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a segfault in threaded.c caused by passing uninitialized
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce apr_thread_t * to apr_thread_join(). [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Use new APR number conversion functions to reduce CPU consumption
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce when setting the content length, and in mod_log_config.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Pane]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix problem reported by Taketo Kabe <kabe@sra-tohoku.co.jp>
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce where HEAD response headers were being repeated twice for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce files greater than 32K bytes (4*AP_MIN_BYTES_TO_WRITE). This
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce problem in the http_header filter was exposed by the recent rewrite
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of the content_length filter. [Taketo Kabe, Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix seg faults in mod_status with ExtendedStatus enabled, after
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce restarts. A garbage pointer to a vhost's server_rec from the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce previous generation was being left around under certain
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce conditions. [Greg Ames]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a cosmetic problem with mod_include. Non-existant SSI vars
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce used to appear as '(none', without the closing paren.
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson [G�nter Knauf <eflash@gmx.net>]
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson *) Improve the exports generating awk script. In the past, we had
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson work around problems in the awk script by avoiding some #if and
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson #ifdefs. This has bitten us many times in generating the exports.c
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson file. This improvement allows corrects the header file parsing.
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson [Sander Striker <striker@apache.org>]
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas GustafssonChanges with Apache 2.0.21
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Resolve the Win32 htpasswd bug, where a file that existed would be
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce overwritten, regardless of the -c flag.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe, Mladen Turk <mladen.turk@mail.inet.hr>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Introduce connection sub-pools into ab. Truncating the lifetime
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of these allocations means that ab no longer perpetually grows
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce its working set, running out of memory on large request attempts.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make scoreboard creation a hook. This allows management
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce modules to have access to the scoreboard at the time that it is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce created, and at every restart request.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Cody Sherr <csherr@covalent.net>]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Changed AP_MPMQ_MAX_DAEMONS to refer to MaxClients and
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson added an AP_MPMQ_MAX_DAEMON_USED to refer to the highest
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson daemon index actually used in the scoreboard. I also
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson updated the pertinent calls. [Paul J. Reder]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: Prevent listening sockets from being inherited by
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the Apache child process, CGI scripts, rotatelog process
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce etc. If the Apache child process segfaults, any processes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce that the child started are not reaped. Prior to this fix,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce these processes inherited the listening sockets which sometimes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce prevented the restarted Apache child process from accepting
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce connections (ie, the server would hang).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Provide vhost and request strings when ExtendedStatus is on.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix some issues with the pod and prefork: check the pod *after*
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce processing a connection so that a server processing a time-
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce consuming request bails out as soon as practical; when the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce parent process wakes up a server process via connect(), use an
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce APR timeout on the connect() so that we don't hang for a long
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce time if there aren't server processes around to do accept().
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick, Greg Ames]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Performance improvement to mod_mime.c. find_ct() in mod_mime,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce spends a lot of time in apr_table_get calls. Using the default
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce httpd.conf, the tables for languages and charsets are somewhat
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce large, so the time spent scanning them on each request is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce significant. Replacing the tables with hash tables provides
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a nice speedup. [Brian Pane <bpane@pacbell.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add two functions to allow modules to access random parts of the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce scoreboard. This allows modules compiled for one MPM to access the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce scoreboard, even if it the server was compiled for another MPM.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Harrie Hazewinkel <harrie@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.20
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix problem in content-length filter where the filter would
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce buffer all the output from a CGI before sending any bytes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce down the filter stack to the network. This problem would cause
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce significant memory consumption if the CGIs generated
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce lots of bytes. [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get non-blocking CGI pipe reads working with the bucket brigades.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix seg fault on Windows when serving files cached with mod_file_cache.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a bug in the threaded MPM that would cause it to kill off all
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce workers immediately after starting if the number of workers started
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce was above a certain threshold. [Ryan Bloom, Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.19
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix problem with threaded MPM. The problem was that if each child
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson process was busy serving a single long-lived request and the server
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson was sent a graceful restart signal, the server would stop serving
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson requests. This would happen because each child process would wait to
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson die until the last thread was done, and the parent wouldn't spawn any
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson new children until a process died. Now, the parent looks at the fact
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson that the children are dying gracefully, and starts new children.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Those new children only start enough threads to compliment the number
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson of threads in the other child process that shares the same spot in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the scoreboard. In this way, we make sure to never go over
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce MaxClients. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) modified mod_negotiation and mod_autoindex to speed up by almost a
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson factor of two on apr_dir_read()-enhanced platforms, such as Win32
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson and OS2, by calling ap_sub_request_lookup_dirent() with the results
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce already provided by apr_dir_read(). [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_file_cache is now more robust to filtering and serves requests
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce slightly more efficiently. [Cliff Woolley]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix problem handling FLUSH bucket in the chunked encoding filter.
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson Module was calling ap_rwrite() followed by ap_rflush() but the
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson served content was not being displayed in the browser. Inspection
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson of the output stream revealed that the first data chunk was
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson missing the trailing CRLF required by the RFC. [Bill Stoddard]
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson *) apxs no longer generates ap_send_http_header() in the example handler
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson *) Fix an ab problem which could cause a divide-by-zero exception
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson with certain invocations (e.g., ab -k -c 6 -n 100 localhost/).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ian Holsman <ianh@cnet.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Solve case-insensitive platforms' confusion about negotiated
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce filenames, allowing files of differnt case to match in choosing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the document to serve. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix brokenness when ThreadsPerChild is higher than the built-in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce limit. We left ap_threads_per_child at the higher value which
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce led to segfaults when doing certain scoreboard operations.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix seg faults and/or missing output from mod_include. The
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce default_handler was using the subrequest pool for files and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce MMAPs, even though the associated APR structures typically
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce live longer than the subrequest. [Greg Ames]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Extend mod_setenvif to support specifying regular expressions
c71787bd6356c92e9c7d0a174cd63ab17fcf34c6Eric Luce on the SetEnvIf (and SetEnvIfNoCase) directive attribute field.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Example: SetEnvIf ^TS* [a-z].* HAVE_TS
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce will cause HAVE_TS to be set if any of the request headers begins
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce with "TS" and has a value that begins with any character in the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce set [a-z]. [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) httpd children now re-bind themselves to a random CPU on
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce multiprocessor systems on AIX via bindprocessor() in 2.0.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Victor J. Orlikowski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix htdigest. It would go into a loop in getline when adding
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a second user. [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32 platforms now fully support mod_userdir options. [Will Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Automatically generate httpd.exp for AIX.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce DSOs now work again on AIX in 2.0
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Victor J. Orlikowski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a new request hook, error_log. This phase allows modules
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to act on the error log string _after_ it has been written
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson to the error log. The goal for this hook is to allow monitoring
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson modules to send the error string to the monitoring agent.
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson *) Modify mod_echo to make it use filters for input and output.
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson [Ryan Morgan <rmorgan@covalent.net>]
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson *) Extend mod_headers to support conditional driven Header
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson add, append and set. Use SetEnvIf to set an envar and conditionally
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce add/append/set headers based on this envar thusly:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce SetEnvIf TSMyHeader value HAVE_TSMyHeader
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Header add MyHeader "%t %D" env=HAVE_TSMyHeader
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce If the request contains header "TSMyHeader: value" then header
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce MyHeader: "t=xxxxxxxxxx D=yyyy" will be sent on the response.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Extend mod_headers to support using format specifiers on Header
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce add, append and set header values. Two format specifiers are supported:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce %t - reports, in UTC microseconds since the epoch, when the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce request was received.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce %D - reports the time, in microseconds, between when the request was
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce received and the response sent.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Header add MyHeader "This request served in %D microseconds. %t"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce results in a header being added to the response that looks like this:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce MyHeader: This request served in D=5438 microseconds. t=991424704447256
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson *) Fix reset_filter(). We need to be careful how we remove filters.
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson If we set r->output_filters to NULL, we also have to reset the
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson connection's filters. [John Sterling]
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson *) Optimise reset_filter() in http_protocol.c. [Greg Stein]
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson *) Add a check to ap_die() to make sure the filter stack is sane and
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson contains the correct basic filters when an error occurs. This fixes
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson a problem where headers are not being sent on error. [John Sterling]
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) New Header directive 'echo' option. "Header echo regex" will
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson cause any headers received on the request that match regex to be
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson echoed to (included in) the response headers.
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson [Bill Stoddard]
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) include/ap_compat.h tested and set APR_COMPAT_H instead of AP_COMPAT_H.
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson This prevented the inclusion of apr_compat.h. PR #7773
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson [Oleg Broytmann <phd@phd.pp.ru>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Moved util_uri to the apr-util library. This required a bunch of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce apr_name changes for the uri utility functions. [Justin Erenkrantz]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Move the addition of default AP_HTTP_HTTP_HEADER filters to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce insert_filter phase so that other filters are not bypassed by default.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Graham Leggett]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Reimplement mod_headers as an output filter. mod_headers can now
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce add custom headers to inbound requests using the RequestHeader directive
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and to responses using the same old Header directive. [Graham Leggett]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.18
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix command-line processing so that if a bad argument is specified
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Apache will exit. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change the make targets and rules to be consistent in all of the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Apache-owned source trees. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix processing of the TRACE method. Previously we passed bogus
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce parms to form_header_field() and it overlaid some vhost structures,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce resulting in a segfault in check_hostalias().
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Greg Ames, Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: Add support for reliable piped logs. If the logging process
ea91cb523112b44b4d2799ac7eb5e878721f2a59Eric Luce goes down, Apache will automatically restart it. This function has
ea91cb523112b44b4d2799ac7eb5e878721f2a59Eric Luce been part of Apache on Unix/Linux/BSD since the early v1.3 releases.
ea91cb523112b44b4d2799ac7eb5e878721f2a59Eric Luce [Bill Stoddard]
ea91cb523112b44b4d2799ac7eb5e878721f2a59Eric Luce *) Do not start piped log processes during the config file
ea91cb523112b44b4d2799ac7eb5e878721f2a59Eric Luce preflight. This change also circumvents a problem on
ea91cb523112b44b4d2799ac7eb5e878721f2a59Eric Luce Windows where the rotatelog processes created during preflight
ea91cb523112b44b4d2799ac7eb5e878721f2a59Eric Luce was not getting cleaned up properly.
ea91cb523112b44b4d2799ac7eb5e878721f2a59Eric Luce [Bill Stoddard]
ea91cb523112b44b4d2799ac7eb5e878721f2a59Eric Luce *) add "Request Phase Participation" info to mod_info
ea91cb523112b44b4d2799ac7eb5e878721f2a59Eric Luce [Doug MacEachern]
ea91cb523112b44b4d2799ac7eb5e878721f2a59Eric Luce *) Make first phase changes to the scoreboard data structures in
ea91cb523112b44b4d2799ac7eb5e878721f2a59Eric Luce preparation for the rewriting of the scoreboard per my posted
ea91cb523112b44b4d2799ac7eb5e878721f2a59Eric Luce design notes. [Paul J. Reder]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix httpd's definition of LTFLAGS to be consistent with that of apr
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and apr-util, allow it to be overridden by the configure command-line
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (default="--silent") and introduce LT_LDFLAGS to replace what we were
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce formerly abusing as LTFLAGS. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Clean up the reporting of incorrect closing container tags.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Barrie Slaymaker <barries@slaysys.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Simplify the configure process by moving all libtool stuff to APR
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and moving hints.m4 inline. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add the AP_DECLARE()/AP_CORE_DECLARE macros on the return types
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of functions used by mod_proxy for export in the DLL
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ian Holsman <IanH@cnet.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Prevent a hang when a cgi handled by mod_cgid tries to read a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce request body from its stdin but no reqest body is being written to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the cgi. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_log_config: %c connection status incorrectly logged
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as "-" (non-keepalive) when MaxKeepAliveRequests is set to 0.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get mod_cern_meta working under Windows
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Create Files, and thus MMAPs, out of the request pool, not the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce connection pool. This solves a small resource leak that had us
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce not closing files until a connection was closed. In order to do
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce this, at the end of the core_output_filter, we loop through the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce brigade and convert any data we have into a single HEAP bucket
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce that we know will survive clearing the request_rec.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom, Justin Erenkrantz <jerenkrantz@ebuilt.com>,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Cliff Woolley]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Completely revamp configure so that it preserves the standard make
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce variables CPPFLAGS, CFLAGS, CXXFLAGS, LDFLAGS and LIBS by moving
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the configure additions to EXTRA_* variables. Also, allow the user
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to specify NOTEST_* values for all of the above, which eliminates the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce need for THREAD_CPPFLAGS, THREAD_CFLAGS, and OPTIM. Fix the setting
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of INCLUDES and EXTRA_INCLUDES. Check flags as they are added to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce avoid pointless duplications. Fix the order in which flags are given
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on the compile and link lines. Remove obsolete macros APR_DOEXTRA,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce AC_ADD_LIBRARY, AC_CHECK_DEFINE, APACHE_PASSTHRU, and APACHE_ONCE.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Added APR_SAVE_THE_ENVIRONMENT and APR_RESTORE_THE_ENVIRONMENT macros.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Renamed AC_TYPE_RLIM_T macro to APACHE_TYPE_RLIM_T. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get mod_tls to compile/work better on Windows. PR #7612
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bernhard Schrenk <b.schrenk@improx.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix shutdown/restart hangs in the threaded MPM.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick, Greg Ames, Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Removed the keptalive boolean from conn_rec because it is now only
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce used by a single routine and can be replaced by a local variable.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Greg Stein, Ryan Bloom, Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Patch prefork to put enough of the signal processing back in so that
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce signals are all handled properly now. The previous patch fixed the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce deadlock race condition, but broke the user directed signal handling.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This fixes it to work the way it did before my previous prefork patch
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (primarily, SIGTERM is now working).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change how input filters decide how much data is returned to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce higher filter. We used to use a field in the conn_rec, with this
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce change, we use an argument to ap_get_brigade to determine how much
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce data is retrieved. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix seg fault at start-up introduced by Ryan's change to enable
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce modules to specify their own logging tags. mod_log_config
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce registers an optional function, ap_register_log_handler().
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ap_register_log_handler() was being called by http_core before
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the directive hash table was created. This patch creates the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directive hash table before ap_register_log_handler() is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce registered as an optional function.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [jean-frederic clere <jfrederic.clere@fujitsu-siemens.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add ap_set_int_slot() function
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [John K. Sterling <sterling@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Under certain circumstances, Apache did not supply the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce right response headers when requiring authentication.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Gertjan van Wingerde <Gertjan.van.Wingerde@cmg.nl>] PR#7114
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (This is a port of the change that went into Apache 1.3.19.)
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson *) Allow modules to specify their own logging tags. This basically
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson allows a module to tell mod_log_config that when %x is encountered
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson a specific function should be called. Currently, x can be any single
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson character. It may be more useful to make this a string at some point.
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas GustafssonChanges with Apache 2.0.17
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If a higher-level filter handles the the byterange aspects of a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce request, then the byterange filter should not try to redo the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce work. The most common case of this happening, is a byterange
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce request going through the proxy, and the origin server handles
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the byterange request. The proxy should ignore it.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Graham Leggett <minfrin@sharp.fm>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Changed the threaded mpm to have child_main join to each of the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce worker threads to make sure the kids are all gone before child_main
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce exits after a signal (cleanup from perform_idle_server_maintenance).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This is an extension of Ryans recent commit to make the child_main
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the signal thread.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add more options to the ap_mpm_query function. This also allows MPMs to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce report if their threads are dynamic or static. Finally, this also
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce implements a new API, ap_show_mpm, which returns the MPM that was
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce required into the core. [Harrie Hazewinkel <harrie@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Do not install the binaries from the support directory twice.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [jun-ichiro hagino <itojun@iijlab.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The ap_f* functions should flush data to the filter that is passed
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in, not the the filter after the one passed in.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Morgan <rmorgan@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make ab work again by changing its native types to apr types and formats.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Erenkrantz <jerenkrantz@ebuilt.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Move the byterange filter and all of the supporting functions back
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to the HTTP module. The byterange filter turned out to be very
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce HTTP specific, and it belongs in the HTTP module. [Greg Stein]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make clean, distclean, and extraclean consistently according to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Gnu makefile guidelines. [Justin Erenkrantz <jerenkrantz@ebuilt.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix errors in the renaming of the apr_threadattr_detach_xxx functions.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This may have been causing problems stopping processes in the threaded
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mpm's. [Greg Ames]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix content-length in mod_negotiation to a long int representation.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove BindAddress from the default config file.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [giles@nemeton.com.au]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) Allow module authors to add a module to their Apache build using
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce --with-module, without re-running buildconf. The syntax is:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce --with-module=module_type:/path/to/module.c
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce The configure script will copy the module.c file to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce modules/module_type, and it will be added to the relevant Makefiles.
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson currently, this only works for static modules. [Ryan Bloom]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) Changes required to make prefork clean up idle children properly.
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson There was a window during which a starting worker deadlocks when
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson an idle cleanup arrives before it completes init. Apache then keeps
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson trying to cleanup the same deadlocked worker forever (until higher
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson pids come along, but it still will never reduce below the deadlocked
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson pid). Thus the number of children would not reduce to the correct
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson idle level. [Paul J. Reder]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas GustafssonChanges with Apache 2.0.16
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change the default installation directory to /usr/local/apache2,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as now defined by the "Apache" layout in config.layout. [Marc Slemko]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) OS/2: Added support for building loadable modules as OS/2 DLLs.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Havard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get MaxRequestsPerChild working with the Windows MPM.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) Make generic hooks to work, with mod_generic_hook_import/export
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson experimental modules. [Ben Laurie, Will Rowe]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Fix segfaults for configuration file syntax errors such as
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson "<Directory>" followed by "</Directory" and
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson "<Directory>" followed by "</Directoryz>". [Jeff Trawick]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Cleanup the --enable-layout option of configure. This makes
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson us use a consistent location for the config.layout file, and it
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson makes configure more portable.
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson [jun-ichiro hagino <itojun@iijlab.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Changes to 'ab'; fixed int overrun's, added statistics, output in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce csv/gnuplot format, rudimentary ssl support and various other tweaks
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson to make results more true to what is measured. The upshot of this it
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson turns out that 'ab' has often underreported the true performance of
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson apache. Often by a order of magnitude :-) See talk/paper of Sander
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson Temme at April ApacheCon 2001 for details.
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson [Dirk-Willem van Gulik]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) Clean up mod_cgid's temporary request pool. Besides fixing a
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson storage leak this ensures that some unnecessary pipes are closed.
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson [Jeff Trawick]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Performance: Add quick_handler hook. This hook is called at the
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson very beginning of the request processing before location_walk,
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson translate_name, etc. This hook is useful for URI keyed content
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson caches like Mike Abbott's Quick Shortcut Cache.
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson [Bill Stoddard]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) top_module global variable renamed to ap_top_module [Perl]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Move ap_set_last_modified to the core. This is a potentially
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson controversial change, because this is kind of HTTP specific. However
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson many protocols should be able to take advantage of this kind of
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson information. I expect that headers will need one more layer of
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson indirection for multi-protocol work, but this is a small step in
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson the right direction. [Ryan Bloom]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) Enable mod_status by default. This matches what Apache 1.3 does.
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) Add a ScriptSock directive to the default config file. This is
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson only enabled when mod_cgid is used.
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson [Taketo Kabe <kabe@sra-tohoku.co.jp>]
78d65c654251b02c41628914986723cbec93a7a1Andreas GustafssonChanges with Apache 2.0.15
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Untangled the buildconf script and eliminated the need for build's
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson aclocal.m4, generated_lists, build.mk, build2.mk, and a host of other
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson libtool muck that is now under srclib/apr/build. [Roy Fielding]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Win32: Don't accept more connections than we have worker threads
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix bug in the Unix threaded.c MPM that allowed child processes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to fork() new child processes.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson *) SECURITY: Fix a major security problem with double-reverse lookup
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson checking. Previously, a client connecting over IPv4 would not be
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson matched properly when the server had an IPv6 listening socket.
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson PR #7407 [Taketo Kabe <kiabe@sra-tohoku.co.jp>]
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson *) Change the way the beos MPM handles polling to allow it to stop and
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson restart. Problem was the sockets being polled were being reset by
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson the select call, so once it had accepted a connection it was no
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce longer listening on the UDP socket we use for shutdown instructions.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce APR needs to be altered, patch on it's way. [David Reid]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Empty out the brigade shared by ap_getline()/ap_get_client_block()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on error exit from ap_getline(). Some other code got upset because
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the wrong data was in the brigade. [Greg Ames, Jeff Trawick]
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson *) Handle ap_discard_request_body() being called more than once.
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson [Greg Ames, Jeff Trawick]
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson *) Get rid of an inadvertent close of file descriptor 2 in
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson mod_mime_magic. [Greg Ames, Jeff Trawick]
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson *) Add a hook, create_request. This hook allows modules to modify
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson a request while it is being created. This hook is called for all
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce request_rec's, main request, sub request, and internal redirect.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce When this hook is called, the the r->main, r->prev, r->next
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce pointers have been set, so modules can determine what kind of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce request this is. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Cleanup the build process a bit more. The Apache configure
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce script no longer creates its own helper scripts, it just
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [jean-frederic clere <jfrederic.clere@fujitsu-siemens.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Stop the forced downgrade of the connection to HTTP/1.0 for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce proxy requests. [Graham Leggett]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Avoid using sscanf to determine the HTTP protocol number in
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson the common case because sscanf is a performance hog. From
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson Mike Abbot's Accelerating Apache patch number 6.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Mike Abbot <mja@trudge.engr.sgi.com>, Bill Stoddard]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) SECURITY: Fix a security exposure in mod_access. Previously when
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson IPv6 listening sockets were used, allow/deny-from-IPv4-address rules
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson were not evaluated properly (PR #7407). Also, add the ability to
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson specify IPv6 address strings with optional prefix length on Allow
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and Deny. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Enhance rotatelogs so that a UTC offset can be specified, and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the logfile name can be formatted using strftime(3). (Brought
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce forward from 1.3.) [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Reimplement the Windows MPM (mpm_winnt.c) to eliminate calling
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce DuplicateHandle on an IOCompletionPort (a practice which
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce MS "discourages"). The new model does not rely on associating
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the completion port with the listening sockets, thus the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce completion port can be completely managed within the child
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce process. A dedicated thread accepts connections off the network,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce then calls PostQueuedCompletionStatus() to wake up worker
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce threads blocked on the completion port.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Bring forward the --suexec-umask option which allows the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce builder to preset the umask for suexec processes. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a -V flag to suexec, which causes it to display the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce compile-time settings with which it was built. (Only
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce usable by root or the AP_HTTPD_USER username.) [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Mod_include should always unset the content-length if the file is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce going to be passed through send_parsed_content. There is no to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce determine if the content will change before actually scanning the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce entire content. It is far safer to just remove the C-L as long
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as we are scanning it. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make sure Apache sends WWW-Authenticate during a reverse proxy
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce request and not Proxy-Authenticate.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Graham Leggett <minfrin@sharp.fm>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.14
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix content-length computation. We ONLY compute a content-length if
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce We are not in a 1.1 request and we cannot chunk, and this is a keepalive
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce or we already have all the data. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Report unbounded containers in the config file. Previously, a typo
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in the </container> directive could result in the rest of the config
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce file being silently ignored, with undesired defaults used.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make the old_write filter use the ap_f* functions for the buffering.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Move more code from the http module into the core server. This
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is core code, basically the default handler, the default input
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and output filters, and all of the core configuration directives.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce All of this code is required in order for the server to work, with or
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce without HTTP. The server is closer to working without the HTTP
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce module, although there is still more to do. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a number of SGI compile warnings throughout the server. Fix some
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce bad parameters to apr_bucket_read(). Fix a bad statement in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ap_method_in_list(). For the mod_rewrite cache use apr_time_t
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce consistently; we were mixing apr_time_t and time_t in invalid ways
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce before. In load_file(), call apr_dso_error() instead of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce apr_strerror() so that we get a more specific string on some platforms.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR #6980 [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow modules to query the MPM about it's execution profile. This
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce query API can and should be extended in the future, but for now,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce max_daemons, and threading or forking is a very good start.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jon Travis <jtravis@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Modify mod_include to send blocks of data no larger than 9k.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Without this, mod_include will wait until the whole file is parsed,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce or the first tag is found to send any data to the client.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Paul J. Reder <rederpj@raleigh.ibm.com>]
035cd7b5bd983b3845da08680ac311c754809403Andreas Gustafsson *) Fix mod_info, so that <Directory> and <Location> directives are
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce not displayed twice when displaying the current configuration.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Morgan <rmorgan@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add config directives to override DEFAULT_ERROR_MSG and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce DEFAULT_TIME_FORMAT. This was sent in as PR 6193.
035cd7b5bd983b3845da08680ac311c754809403Andreas Gustafsson [Dan Rench <drench@xnet.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get mod_info building and loading on Win32. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Begin to move protocol independant functions out of mod_http. The goal
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is to have only functions that are HTTP specific in the http directory.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.13
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Don't assume that there will always be multiple calls to the byterange
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce filter. It is possible that we will need to do byteranges with only
035cd7b5bd983b3845da08680ac311c754809403Andreas Gustafsson one call to the filter. [Ryan Morgan <rmorgan@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Move the error_bucket definition from the http module to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce core server. Every protocol will need this ability, not just
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce HTTP. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0.12
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Modify mod_file_cache to save pre-formatted strings for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce content-length and last-modified headers for performance.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Mike Abbot <mja@trudge.engr.sgi.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Namespace protect IOBUFSIZ since it is exposed in the API.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jon Travis <jtravis@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Use "Basic" authentication instead of "basic" in ab, as the spec
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce says we should. [Andre Breiler <andre.breiler@rd.bbc.co.uk>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a seg fault in mod_userdir.c. We used to use the pw structure
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce without ever filling it out. This fixes PR 7271.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Taketo Kabe <kabe@sra-tohoku.co.jp> and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Cliff Woolley <cliffwoolley@yahoo.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a couple of GCC attribute tags to printf style functions.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jon Travis <jtravis@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add the correct language tag for interoperation with the Taiwanese
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce versions of MSIE and Netscape. [Clive Lin <clive@CirX.ORG>] PR#7142
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Migrate the perchild MPM to use the new apr signal child, and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce APR thread functions. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Close one copy of the CGI's stdout before creating the new process.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce The CGI will still have stdout, because we have already dup'ed it.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This keeps Apache from waiting forever to send the results of a CGI
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce process that has forked a long-lived child process.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Taketo Kabe <kabe@sra-tohoku.co.jp>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove the rest of the pthreads functions from the threaded MPM.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This requires the APR support for a signal thread that was just
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce added. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make mod_dir use a fixup for sending a redirect to the browser.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Before this, we were using a handler, which doesn't make much
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce sense, because the handler wasn't generating any data, it would
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce either return a redirect error code, or DECLINED. This fits the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce current hooks better. [Ryan Morgan <rmorgan@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make the threaded MPM use APR threads instead of pthreads.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get mod_tls to the point where it actually appears to work in all cases.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) implement --enable-modules and --enable-mods-shared for "all" and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce "most". [Greg Stein]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Move the threaded MPM to use APR locks instead of pthread locks.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Rename mpmt_pthread to threaded. This is more in line with the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce fact that mpmt_pthread shouldn't be using pthreads directly, and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce it is a smaller name that doesn't tie into anything.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Rename the module structures so that the exported symbol matches
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the file name, and it is easier to automate the installation
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce process (generating LoadModule directives from the module filenames).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove the coalesce filter. With the ap_f* functions, this filter
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson is no longer needed. [Ryan Bloom]
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas GustafssonChanges with Apache 2.0.11
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson *) Remove the dexter MPM. Perchild is the same basic idea, but it has the
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson added feature of allowing a uid/gid per child process. If no
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson uid/gid is specified, then Perchild behaves exactly like dexter.
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson *) Get perchild building again. [Ryan Bloom]
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson *) Don't disable threads just because we are using the prefork MPM.
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson If somebody wants to compile without threads, they must now add
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson --disable-threads to the configure command line. [Ryan Bloom]
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson *) Begin to move the calls to update_child_status into common code, so
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson that each individual MPM does not need to update the scoreboard itself.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow mod_tls to compile under Unix boxes where openssl has been
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce installed to the system include files.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Gomez Henri <new-httpd@slib.fr>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Cleanup the mod_tls configure process. This should remove any need
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to hand-edit any files. We require OpenSSL 0.9.6 or later, but
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce configure doesn't check that yet. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a very early prototype of SSL support (in mod_tls.c). It is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce vital that you read modules/tls/README before attempting to build
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce it. [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a potential seg fault on all platforms. David Reid fixed this
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on BEOS, but the problem could happen anywhere, so we don't want
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to #ifdef it. [Cliff Woolley <cliffwoolley@yahoo.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add new LogFormat directive, %D, to log time it takes to serve a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce request in microseconds. [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change AddInputFilter and AddOutputFilter to SetInputFilter and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce SetOutputFilter. This corresponds nicely with the other Set
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directives, which operate on containers while the Add* directives
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce tend to work directly on extensions. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Cleanup the header handling a bit. This uses the apr_brigade_*
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce functions for the buffering so that we don't need to compute
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the length of the headers before we actually create the header
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce buffer. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow filters to buffer data using the ap_f* functions. These have
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce become macros that resolve directly to apr_brigade_*.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get the Unix MPM's to do a graceful restart again. If we are going
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to register a cleanup with ap_cleanup_scoreboard, then we have to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce kill the cleanup with the same function, and that function can't be
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce static. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Install all required header files. Without these, it was not
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce possible to compile some modules outside of the server.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson *) Fix the AliasMatch directive in Apache 2.0. When we brought a patch
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson forward from 1.3 to 2.0, we missed a single line, which broke regex
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson aliases. [Ryan Bloom]
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson *) We have a poor abstraction in the protocol. This is a temporary
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson hack to fix the bug, but it will need to be fixed for real. If
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson we find an error while sending out a custom error response, we back
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson up to the first non-OK request and send the data. Then, when we send
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson the EOS from finalize_request_protocol, we go to the last request,
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson to ensure that we aren't sending an EOS to a request that has already
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson received one. Because the data is sent on a different request than
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson the EOS, the error text never gets sent down the filter stack. This
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson fixes the problem by finding the last request, and sending the data
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson with that request. [Ryan Bloom]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Make the server status page show the correct restart time, and
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson thus the proper uptime. [Ryan Bloom]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Move the CGI creation logic from mod_include to mod_cgi(d). This
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson should reduce the amount of duplicate code that is required to
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson create CGI processes.
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson [Paul J. Reder <rederpj@raleigh.ibm.com>]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) ap_new_connection() closes the socket and returns NULL if a socket
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson call fails. Usually this is due to a connection which has been
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson reset. [Jeff Trawick]
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson *) Move the Apache version information out of httpd.h and into release.h.
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson This is in preparation for the first tag with the new tag and release
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson system. [Ryan Bloom]
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson *) Begin restructuring scoreboard code to enable adding back in
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson the ability to use IPC other than shared memory.
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson Get mod_status working on Windows again. [Bill Stoddard]
e250148432865805a3d2fd0029c02af8a67ff266Andreas Gustafsson *) Make mod_status work with 2.0. This will work for prefork,
e250148432865805a3d2fd0029c02af8a67ff266Andreas Gustafsson mpmt_pthread, and dexter. [Ryan Bloom]
e250148432865805a3d2fd0029c02af8a67ff266Andreas Gustafsson *) Correct a typo in httpd.conf.
e250148432865805a3d2fd0029c02af8a67ff266Andreas Gustafsson [Kunihiro Tanaka <tanaka@apache.or.jp>] PR#7154
e250148432865805a3d2fd0029c02af8a67ff266Andreas Gustafsson *) Really fix mod_rewrite map lookups this time. [Tony Finch]
e250148432865805a3d2fd0029c02af8a67ff266Andreas Gustafsson *) Get the correct IP address if ServerName isn't set and we can't
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson find a fully-qualified domain name at startup.
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson PR#7170 [Danek Duvall <dduvall@eng.sun.com>]
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson *) Make mod_cgid work with SuExec. [Ryan Bloom]
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson *) Adopt apr user/group name features for mod_rewrite. Eliminates some
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson 'extra' stat's for user/group since they should never occur, and now
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson resolves the SCRIPT_USER and SCRIPT_GROUP, including on WinNT NTFS
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson volumes. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Adopt apr features to simplify mod_includes. This changes the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce behavior of the USER_NAME variable, unknown uid's are now reported
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as USER_NAME="<unknown>" rather than the old user#000 result.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce WinNT now resolves USER_NAME on NTFS volumes. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Adopt apr features for simplifing mod_userdir, and accept the new
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Win32/OS2 exceptions without hiccuping. [William Rowe]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Replace configure --with-optim option by using and saving the
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson environment variable OPTIM instead. This is needed because configure
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce options do not support multiple flags separated by spaces.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix some byterange handling. If we get a byte range that looks like
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce "-999999" where that is past the end of the file, we should return
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a PARTIAL CONTENT status code, and return the whole file as one big
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce byterange. This matches the 1.3 handling now. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make the error bucket a real meta-data bucket. This means that the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce bucket length is 0, and a read returns NULL data. If one of these
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce buckets is passed down after the headers are sent, this data will
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce just be ignored. [Greg Stein]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) The prefork MPM wasn't killing child processes correctly if a restart
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce signal was received while the process was serving a request. The child
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce process would become the equivalent of a second parent process. If
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson we break out of the accept loop, then we need to do die after cleaning
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson up after ourselves. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change the Prefork MPM to use SIGWINCH instead of SIGUSR1 for graceful
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce restarts. [Ryan Bloom]
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) Modify the apr_stat/lstat/getfileinfo calls within apache to use
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson the most optimal APR_FINFO_wanted bits. This spares Win32 from
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson performing very expensive owner, group and permission lookups
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and allows the server to function until these apr_finfo_t fields
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce are implemented under Win32. [William Rowe]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Support for typedsafe optional functions - that is functions exported by
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson optional modules, which, therefore, may or may not be present, depending
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on configuration. See the experimental modules mod_optional_fn_{ex,im}port
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for sample code. [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) filters can now report an HTTP error to the server. This is done
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce by sending a brigade where the first bucket is an error_bucket.
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson This bucket is a simple bucket that stores an HTTP error and
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson a string. Currently the string is not used, but it may be needed
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson to output an error log. The http_header_filter will find this
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson bucket, and output the error text, and then return
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson AP_FILTER_ERROR, which informs the server that the error web page
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce has already been sent. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If we get an error, then we should remove all filters except for
4c706de3c7129fb8e3ea21c439a86cf57a71c99aAndreas Gustafsson those critical to serving a web page. This fixes a bug, where
4c706de3c7129fb8e3ea21c439a86cf57a71c99aAndreas Gustafsson error pages were going through the byterange filter, even though
4c706de3c7129fb8e3ea21c439a86cf57a71c99aAndreas Gustafsson that made no sense. [Ryan Bloom]
4c706de3c7129fb8e3ea21c439a86cf57a71c99aAndreas Gustafsson *) Relax the syntax checking of Host: headers in order to support
4c706de3c7129fb8e3ea21c439a86cf57a71c99aAndreas Gustafsson iDNS. PR#6635 [Tony Finch]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Cleanup the byterange filter to use the apr_brigade_partition
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and apr_bucket_copy functions. This removes a lot of very messy
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce code, and hopefully makes this filter more stable.
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson *) Remove AddModule and ClearModuleList directives. Both of these
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson directives were used to ensure that modules could be enabled
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson in the correct order. That requirement is now gone, because
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson we use hooks to ensure that modules are in the correct order.
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson *) When SuExec is specified, we need to add it to the list of
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson targets to be built. If we don't, then any changes to the
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson configuration won't affect SuExec, unless 'make suexec' is
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson specifically run. [Ryan Bloom]
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson *) Cleaned out open_file from mod_file_cache, as apr now accepts
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson the APR_XTHREAD argument to open a file for consumption by
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson parallel threads on win32. [William Rowe]
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson *) Correct a bug in determining when we follow symlinks. The code
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson expected a stat -1 result, not an apr_status_t positive error.
4c706de3c7129fb8e3ea21c439a86cf57a71c99aAndreas Gustafsson Also check if the APR_FINFO_USER fields are valid before we
4c706de3c7129fb8e3ea21c439a86cf57a71c99aAndreas Gustafsson follow the link. [William Rowe]
4c706de3c7129fb8e3ea21c439a86cf57a71c99aAndreas Gustafsson *) Move initgroupgs, ap_uname2id and ap_gname2id from util.c to
4c706de3c7129fb8e3ea21c439a86cf57a71c99aAndreas Gustafsson mpm_common.c. These functions are only valid on some platforms,
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson so they should not be in the main-line code. [Ryan Bloom]
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson *) Remove ap_chdir_file(). This function is not thread-safe,
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson and nobody is currently using it. [Ryan Bloom]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Do not try to run make depend if there are no .c files in the
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson current directory, doing so makes `make depend` fail.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Update highperformance.conf to work with either prefork or
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce pthreads mpms. [Greg Ames]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Stop checking to see if this is a pipelined request if we know
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for a fact that it isn't. Basically, if r->connection->keepalive == 0.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This keeps us from making an extra read call when serving a 1.0
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce request. [Ryan Bloom and Greg Stein]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the handling of variable expansion look-ahead in mod_rewrite,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce i.e. syntax like %{LA-U:REMOTE_USER}, and also fix the parsing of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce more complicated nested RewriteMap lookups. PR#7087 [Tony Finch]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Fix the RFC number mentioned when complaining about a missing
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson Host: header. PR#7079 [Alexey Toptygin <alexeyt@wam.umd.edu>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix an endless loop in ab which occurred when ab was posting
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and the server dropped the connection unexpectedly.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a segfault while handling request bodies in ap_http_filter().
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson This problem has been seen with mod_dav usage as well as with
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson requests where the body was just being discarded. [Jeff Trawick]
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson *) Some adjustment on the handling and automatic setting (via
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson hints.m4) of various compilation flags (eg: CFLAGS). Also,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce add the capability to specify flags (NOTEST_CFLAGS and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce NOTEST_LDFLAGS) which are used to compile Apache, but
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson not used during the configuration process. Useful for
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson flags like "-Werror". [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Stop using environment variables to force debug mode or
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce no detach. We now use the -D command line argument to
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson specify the correct mode. -DONE_PROCESS and -DNO_DETACH.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Greg Stein, Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change handlers to use hooks. [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Stop returning copies of filenames from both apr_file_t and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce apr_dir_t. We pstrdup the filenames that we store in the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce actual structures, so we don't need to pstrdup the strings again.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_cgi: Fix some problems where the wrong error value was being
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce traced. [Jeff Trawick]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) EBCDIC: Fix some missing ASCII conversion on some protocol data.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add generic hooks. [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Use a real pool to dup the error log descriptor. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a segfault caused by mod_ext_filter when the external filter
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce program does not exist. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix an output truncation error when on an HTTP >= 1.0 request an
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce object of size between DEFAULT_BUCKET_SIZE and AP_MIN_BYTES_TO_WRITE
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce was served through mod_charset_lite (or anything else that would
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce create a transient bucket in this size range). ap_bucket_make_heap()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce silently failed (fixed), transient_setaside() discovered it, but
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ap_save_brigade() ignored it (fixed). [Jeff Trawick]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Ignore \r\n or \n when using PEEK mode for input filters. The problem
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is that some browsers send extra lines at the end of POST requests, and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce we don't want to delay sending data back to the user just because the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce browser isn't well behaved. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get SuEXEC working again. We can't send absolute paths to suExec
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce because it refuses to execute those programs. SuEXEC also wasn't
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce always recognizing configuration changes made using the autoconf
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce setup. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow the buildconf process to find the config.m4 files in the correct
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce order. Basically, we can now name config.m4 files as config\d\d.m4,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and we will sort them correctly when inserting them into the build
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce process. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get mod_cgid to use apr calls for creating the actual CGI process.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This also allows mod_cgid to use ap_os_create_priviledged_process,
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson thus allowing for SuExec execution from mod_cgid. Currently, we do
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson not support everything that standard SuExec supports, but at least
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce it works minimally now. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow SuExec to be configured from the ./configure command line.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Update some of the docs in README and INSTALL to reflect some of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the changes in Apache 2.0 [Cliff Woolley <cliffwoolley@yahoo.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If we get EAGAIN returned from the call to apr_sendfile, then we
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce need to call sendfile again. This gets us serving large files
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce such as apache_2.0a9.tar.gz on FreeBSD again. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get the support programs building cleanly again.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Cliff Woolley <cliffwoolley@yahoo.com>]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) The Apache/Win32 Apache.exe and dll's now live in bin. The
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce current directory logic now backs up over bin/ to determine the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce server root from the Apache.exe path.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Apache/Win32 now follows the standard conventions of mod_foo.so
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson loadable modules, dynamic libs are all named libfoo.dll, and the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce makefile.win populates the include, lib and libexec directories.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Apache is now IPv6-capable. On systems where APR supports IPv6,
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson Apache gets IPv6 listening sockets by default. Additionally, the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Listen, NameVirtualHost, and <VirtualHost> directives support IPv6
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson numeric address strings (e.g., "Listen [fe80::1]:8080").
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Modify the install directory layout. Modules are now installed in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce modules/. Shared libraries should be installed in libraries/, but
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce we don't have any of those on Unix yet. All install directories
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson are modifyable at configure time. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Install all header files in the same directory on Unix. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get the functions in server/linked into the server, regardless of
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson which modules linked into the server. This uses the same hack
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson for Apache that we use for APR and apr-util to ensure all of the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce necessary functions are linked. As a part of thise, the CHARSET_EBCDIC
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce was renamed to AP_CHARSET_EBCDIC for namespace protection, and to make
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson the scripts a bit easier.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Rework the RFC1413 handling to make it thread-safe, use a timeout
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on the query, and remove IPv4 dependencies. [Jeff Trawick]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Get all of the auth modules to the point that they will install and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce be loadable into the server. Our new build/install mechanism expects
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce that all modules will have a common name format. The auth modules
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce didn't use that format, so we didn't install them properly.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API routines ap_pgethostbyname() and ap_pduphostent() are no longer
699095b077b0e4e6138b7546d5bb3f05b0d00bb7Andreas Gustafsson available. Use apr_getaddrinfo() instead. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get "NameVirtualHost *" working in 2.0. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Return HTTP_RANGE_NOT_SATISFIABLE if the every range requested starts
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce after the end of the response. [Ryan Bloom]
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson *) Get byterange requests working with responses that do not have a
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson content-length. Because of the way byterange requests work, we have to
4c706de3c7129fb8e3ea21c439a86cf57a71c99aAndreas Gustafsson have all of the data before we can actually do the byterange, so we
4c706de3c7129fb8e3ea21c439a86cf57a71c99aAndreas Gustafsson can compute the content-length in the byterange filter.
4c706de3c7129fb8e3ea21c439a86cf57a71c99aAndreas Gustafsson *) Get exe CGI's working again on Windows.
4c706de3c7129fb8e3ea21c439a86cf57a71c99aAndreas Gustafsson [Allan Edwards]
4c706de3c7129fb8e3ea21c439a86cf57a71c99aAndreas Gustafsson *) Get mod_cgid and mod_rewrite to work as DSOs by changing the way
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson they keep track of whether or not their post config hook has been
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson called before. Instead of a static variable (which is replaced when
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the DSO is loaded a second time), use userdata in the process pool.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas GustafssonChanges with Apache 2.0a9
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32 now requires perl to complete the final install step for users
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to build + install on Win32. Makefile.win now rewrites @@ServerRoot@
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson and installs the conf, htdocs and htdocs/manual directories.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson [William Rowe]
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Make mod_include use a hash table to associate directive tags with
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson functions. This allows modules to implement their own SSI tags easily.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce The idea is simple enough, a module can insert it's own tag and function
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce combination into a hash table provided by mod_include. While mod_include
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson parses an SSI file, when it encounters a tag in the file, it does a
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson hash lookup to find the function that implements that tag, and passes
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson all of the relevant data to the function. That function is then
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson responsible for processing the tag and handing the remaining data back
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson to mod_include for further processing.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson [Paul J. Reder <rederpj@raleigh.ibm.com>]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Get rid of ap_new_apr_connection(). ap_new_connection() now has
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson fewer parameters: the local and remote socket addresses were removed
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson from the parameter list because all required information is available
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson via the APR socket. [Jeff Trawick]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Distribution directory structure reorganized to reflect a
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson normal source distribution with external install targets.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Roy Fielding]
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson *) The MPMs that need multiple segments of shared memory now create
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson two apr_shmem_t variables, one for each shared memory allocation.
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson the problem is that we can't determine how much memory will be required
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson for shared memory allocations once we try to allocate more than one
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson variable. The MM code automatically aligns the shared memory allocations,
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson so we end up needing to pad the amount of shared memory we want based
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson on how many variables will be allocated out of the shared memory segment.
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson It is just easier to create a second apr_shmem_t variable, and two
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson shmem memory blocks.
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson *) Cleanup the export list a bit. This creates a single unified list of
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson functions exported by APR. The export list is generated at configure
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson time, and that list is then used to generate the exports.c file.
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson Because of the way the export list is generated, we only export those
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson functions that are valid on the platform we are building on.
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson *) Enable logging the cookie with mod_log_config
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson [Sander van Zoest <sander@covalent.net>]
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson *) Fix a segfault in mod_info when it reaches the end of the configuration.
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson [Jeff Trawick]
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson *) Added lib/aputil/ as a placeholder for utility functions which are not
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson specific to the Apache HTTP Server (but do not make sense with APR).
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson The first utility is "apu_dbm": a set of functions to work with DBM
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson files. This first version can be compiled for SDBM or GDBM databases.
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) Complete re-write of mod_include. This makes mod_include a filter that
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce uses buckets directly. This has now served the FAQ correctly.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Paul Reder <rederpj@raleigh.ibm.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow modules to specify the first filter in a sub_request when
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce making the sub_request. This keeps modules from having to change the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce output_filter immediately after creating the sub-request, and therefore
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson skip the sub_req_output_filter. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Update ab to accept URLs with IPv6 literal address strings (in the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce format described in RFC 2732), and to build Host header fields in
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson the same format. This allows IPv6 literal address strings to be
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson used with ab. This support has been tested against Apache 1.3 with
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson the KAME patch, but Apache 2.0 does not yet work with this format
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson of the Host header field. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Accomodate an out-of-space condition in the piped logs and the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce rotatelogs.c code, and no longer churn log processes for this
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson condition. [Victor J. Orlikowski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add support for partial writes with apr_sendfile() to core_output_filter.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0a8
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a directive to mod_mime so that filters can be associated with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a given mime-type.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get multi-views working again. We were setting the path_info
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce field incorrectly if we couldn't find the specified file.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix 304 processing. The core should never try to send the headers
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce down the filter stack. Always, just setup the table in the request
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce record, and let the header filter convert it to data that is ready
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for the network.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) More fixes for the proxy. There are still bugs in the proxy code,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce but this has now proxied www.yahoo.com and www.ntrnet.net (my ISP)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce successfully.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix params for apr_getaddrinfo() call in connect proxy handler.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Chuck Murcko]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) APR: Add new apr_getopt_long function to handle long options.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [B. W. Fitzpatrick <fitz@red-bean.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) APR: Change apr_connect() to take apr_sockaddr_t instead of hostname.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Add generic apr_create_socket(). Add apr_getaddrinfo() for doing
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson hostname resolution/address string parsing and building
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson apr_sockaddr_t. Add apr_get_sockaddr() for getting the address
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of one of the apr_sockaddr_t structures for a socket. Change
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce apr_bind() to take apr_sockaddr_t. [David Reid and Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove the BUFF from the HTTP proxy. This is still a bit ugly, but
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce I have proxied pages with it, cleanup will commence soon.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make the proxy work with filters. This isn't perfect, because we
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce aren't dealing with the headers properly. [Ryan Bloom]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Do not send a content-length iff the C-L is 0 and this is a head
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson request. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make cgi-bin work as a regular directory when using mod_vhost_alias
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce with no VirtualScriptAlias directives. PR#6829 [Tony Finch]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Remove BUFF from the PROXY connect handling. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get the default_handler to stop trying to deal with HEAD requests.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce The idea is to let the content-length filter compute the C-L before
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce we try to send the data. If we can get the C-L correctly, then we
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce should send it in the HEAD response.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The Header filter can now determine if a body should be sent based
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on r->header_only. The general idea of this is that if we delay
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce deciding to send the body, then we might be able to compute the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce content-length correctly, which will help caching proxies to cache
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce our data better. Any handler that doesn't want to try to compute
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the content-length can just send an EOS bucket without data and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce everything will just work.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add the referer to the error log if one is available.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Markus Gyger <mgyger@itr.ch>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Mod_info.c has now been ported to Apache 2.0. As a part of this
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce change, the root of the configuration tree has been exposed to modules
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as ap_conftree.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Ryan Morgan <rmorgan@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get the core_output_filter to use the bucket interface directly.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This keeps us from calling the content-length filter multiple times
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for a simple static request.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) We are sending the content-type correctly now.
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson [Ryan Bloom and Will Rowe]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) APR on FreeBSD: Fix a bug in apr_sendfile() which caused us to report
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a bogus bytes-sent value when the only thing being sent was trailers
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson and writev() returned an error (or EAGAIN). [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get SINGLE_LISTEN_UNSERIALIZED_ACCEPT working again. This uses the
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson hints file to determine which platforms define
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson SINGLE_LISTEN_UNSERIALIZED_ACCEPT.
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson *) APR: add apr_get_home_directory() [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Initial import of 1.3-current mod_proxy. [Chuck Murcko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Not all platforms have INADDR_NONE defined by default. Apache
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce used to make this check and define INADDR_NONE if appropriate,
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson but APR needs the check too, and I suspect other applications will
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson as well. APR now defines APR_INADDR_NONE, which is always a valid
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce value on all platforms.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Branko �ibej <brane@xbc.nu>]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Destroy the pthread mutex in lock_intra_cleanup() for PR#6824.
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson [Shuichi Kitaguchi <ki@hh.iij4u.or.jp>]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Relax the syntax checking of Host: headers in order to support
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson iDNS. PR#6635 [Tony Finch]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) When reading from file buckets we convert to an MMAP if it makes
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson sense. This also simplifies the default handler because the
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson default handler no longer needs to try to create MMAPs.
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) BUFF has been removed from the main server. The BUFF code will remain
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson in the code until it has been purged from the proxy module as well.
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Byteranges have been completely re-written to be a filter. This
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson has been tested, and I believe it is working correctly, but it could
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson doesn't work for the Adobe Acrobat plug-in. The output almost matches
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson the output from 1.3, the only difference being that 1.3 includes
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson a content-length in the response, and this does not.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) APR read/write functions and bucket read functions now operate
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson on unsigned integers, instead of signed ones. It doesn't make
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson any sense to use signed ints, because we return the error codes,
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson so if we have an error we should report 0 bytes read or written.
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Always compute the content length, whether it is sent or not.
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson The reason for this, is that it allows us to correctly report
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson the bytes_sent when logging the request. This also simplifies
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson content-length filter a bit, and fixes the actual byte-reporing
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Remove AP_END_OF_BRIGADE definition. This does not signify what
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson it says, because it was only used by EOS and FLUSH buckets. Since
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson neither of those are required at the end of a brigade, this was
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson really signifying FLUSH_THE_DATA, but that can be determined better
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson by checking AP_BUCKET_IS_EOS() or AP_BUCKET_IS_FLUSH. EOS and FLUSH
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson buckets now return a length of 0, which is actually the amount of data
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson read, so they make more sense.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Allow the core_output_filter to save some data past the end of a
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson request. If we get an EOS bucket, we only send the data if it
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson makes sense to send it. This allows us to pipeline request
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson responses. As a part of this, we also need to allocate mmap
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson buckets out of the connection pool, not the request pool. This
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson allows the mmap to outlive the request.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Make blocking and non-blocking bucket reads work correctly for
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson sockets and pipes. These are the only bucket types that should
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson have non-blocking reads, because the other bucket types should
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson ALWAYS be able to return something immediately.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) In the Apache/Win32 console window, accept Ctrl+C to stop the
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson server, but use Ctrl+Break to initiate a graceful restart
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson instead of duplicating behavior. [John Sterling]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Patch mod_autoindex to set the Last-Modified header based on
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson the directory's mtime, and add the ETag header. [William Rowe]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Merge the 1.3 patch to add support for logging query string in
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson such a way that "%m %U%q %H" is the same as "%r".
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson [Bill Stoddard]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Port three log methods from mod_log_config 1.3 to 2.0:
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson CLF compliant '-' byte count, method and protocol.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson [Bill Stoddard]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Add a new LogFormat directive, %c, that will log connection
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson status at the end of the response as follows:
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson 'X' - connection aborted before the response completed.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson '+' - connection may be kept-alive by the server.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson '-' - connection will be closed by the server.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson [Bill Stoddard]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Expand APR for WinNT to fully accept and return utf-8 encoded
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson Unicode file names and paths for Win32, and tag the Content-Type
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson from mod_autoindex to reflect that charset if the the feature
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson macro APR_HAS_UNICODE_FS is true. [William Rowe]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Compute the content length (and add appropriate header field) for
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson the response when no content length is available and we can't use
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson chunked encoding. [Jeff Trawick]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Changed ap_discard_request_body() to use REQUEST_CHUNKED_DECHUNK,
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson so that content input filters get dechunked data when using
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson the default handler. Also removed REQUEST_CHUNKED_PASS.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson [Sascha Schumann]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Add mod_ext_filter as an experimental module. This module allows
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson the administrator to use external programs as filters. Currently,
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson only filtering of output is supported. [Jeff Trawick]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Most Apache functions work on EBCDIC machines again, as protocol
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson data is now translated (again). [Jeff Trawick]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Introduce ap_xlate_proto_{to|from}_ascii() to clean up some of
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson the EBCDIC support. They are noops on ASCII machines, so this
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson type of translation doesn't have to be surrounded by #ifdef
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson CHARSET_EBCDIC. [Jeff Trawick]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Fix mod_include. tag commands work again, and the server will
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson send the FAQ again. This also allows mod_include to set aside
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson buckets that include partial buckets.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson [Ryan Bloom and David Reid]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Add suexec support back. [Manoj Kasichainula]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Lingering close now uses the socket directly instead of using
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson BUFF. This has been tested, but since all we can tell is that it
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson doesn't fail, this needs to be really hacked on.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Allow filters to modify headers and have those headers be sent to
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson the client. The idea is that we have an http_header filter that
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson actually sends the headers to the network. This removes the need
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson for the BUFF to send headers.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Charset translation: mod_charset_lite handles translation of
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson request bodies. Get rid of the xlate version of ap_md5_digest()
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson since we don't compute digests of filtered (e.g., translated)
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson response bodies this way anymore. (Note that we don't do it at
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson all at the present; somebody needs to write a filter to do so.)
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson [Jeff Trawick]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Input filters and ap_get_brigade() now have a input mode parameter
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson (blocking, non-blocking, peek) instead of a length parameter.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Update the mime.types file to the registered media types as
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson of 2000-10-19. PR#6613 [Carsten Klapp <carsten.klapp@home.net>,
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Namespace protect some macros declared in ap_config.h
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Support HTTP header line folding with input filtering.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Mod_include works again. This should still be re-written, but at
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson least now we can serve an SHTML page again.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Begin to remove BUFF from the core. Currently, we keep a pointer
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson to both the BUFF and the socket in the conn_rec. Functions that
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson want to use the BUFF can, functions that want to use the socket,
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson can. They point to the same place.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) apr_psprintf doesn't understand %lld as a format. Make it %ld.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson [Tomas "�gren" <stric@ing.umu.se>]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) APR pipes on Unix and Win32 are now cleaned up automatically when the
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson associated pool goes away. (APR pipes on OS/2 were already had this
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson logic.) This resolvs a fatal file descriptor leak with CGIs.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson [Jeff Trawick]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) The final line of the config file was not being read if there was
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson no \n at the end of it. This was caused by apr_fgets returning
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson APR_EOF even though we had read valid data. This is solved by
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson making cfg_getline check the buff that was returned from apr_fgets.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson If apr_fgets return APR_EOF, but there was data in the buf, then we
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson return the buf, otherwise we return NULL.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Piped logs work again in the 2.0 series.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Restore functionality broken by the mod_rewrite security fix:
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson rewrite map lookup keys and default values are now expanded
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson so that the lookup can depend on the requested URI etc.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson PR #6671 [Tony Finch]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) SECURITY: Tighten up the syntax checking of Host: headers to fix a
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson security bug in some mass virtual hosting configurations
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson that can allow a remote attacker to retrieve some files
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson on the system that should be inaccessible. [Tony Finch]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Add a pool bucket type. This bucket is used for data allocated out
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson of a pool. If the pool is cleaned before the bucket is destroyed, then
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson the data is converted to a heap bucket, allowing it to survive the
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson death of the pool.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Add a flush bucket. This allows modules to signal that the filters
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson should all flush whatever data they currently have. There is no way
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson to actually force them to do this, so if a filter ignores this bucket,
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson that's life, but at least we can try with this.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Add an output filter for sub-requests. This filter just strips the
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson EOS bucket so that we don't confuse the main request's core output
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson filter by sending multiple EOS buckets. This change also makes sub
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson requests start to send EOS buckets when they are finished.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Make ap_bucket_(read|destroy|split|setaside) into macros. Also
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson makes ap_bucket_destroy a return void, which is okay because it
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson used to always return APR_SUCCESS, and nobody ever checked its
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson return value anyway.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson [Cliff Woolley <cliffwoolley@yahoo.com>]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Remove the index into the bucket-type table from the buckets
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson structure. This has now been replaced with a pointer to the
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson bucket_type. Also add some macros to test the bucket-type.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Renamed all MODULE_EXPORT symbols to AP_MODULE_DECLARE and all symbols
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson for CORE_EXPORT to AP_CORE_DECLARE (namespace protecting the wrapper)
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson and retitled API_EXPORT as AP_DECLARE and APR_EXPORT as APR_DECLARE.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson All _VAR_ flavors changes to _DATA to be absolutely clear.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson [William Rowe]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Add support for /, //, //servername and //server/sharename
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson parsing of <Directory> blocks under Win32 and OS2.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson [Tim Costello, William Rowe, Brian Harvard]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Remove the function pointers from the ap_bucket type. They have been
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson replaced with a global table. Modules are allowed to register bucket
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson types and use then use those buckets.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) mod_cgid: In the handler, shut down the Unix socket (only for write)
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson once we finish writing the request body to the cgi child process;
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson otherwise, the client doesn't hit EOF on stdin. Small request bodies
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson worked without this change (for reasons I don't understand), but large
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson ones didn't. [Jeff Trawick]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Remove file bucket specific information from the ap_bucket type.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson This has been moved to a file_bucket specific type that hangs off
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson the data pointer in the ap_bucket type.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Input filtering now has a third argument. This is the amount of data
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson to read from lower filters. This argument can be -1, 0, or a positive
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson number. -1 means give me all the data you have, I'll deal with it and
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson let you know if I need more. 0 means give me one line and one line
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson only. A positive number means I want no more than this much data.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson Currently, only 0 and a positive number are implemented. This allows
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson us to remove the remaining field from the conn_rec structure, which
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson has also been done.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Big cleanup of the input filtering. The goal is that http_filter
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson understands two conditions, headers and body. It knows where it is
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson based on c->remaining. If c->remaining is 0, then we are in headers,
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson and http_filter returns a line at a time. If it is not 0, then we are
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson in body, and http_filter returns raw data, but only up to c->remaining
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson bytes. It can return less, but never more.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson [Greg Ames, Ryan Bloom, Jeff Trawick]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) mod_cgi: Write all of the request body to the child, not just what
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson the kernel would accept on the first write. [Jeff Trawick]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Back out the change that moved the brigade from the core_output_filters
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson ctx to the conn_rec. Since all requests over a given connection
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson go through the same core_output_filter, the ctx pointer has the
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson correct lifetime.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Fix another bug in the send_the_file() read/write loop. A partial
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson send by apr_send would cause unsent data in the read buffer to
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson get clobbered. Complete making send_the_file handle partial
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson writes to the network.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson [Bill Stoddard]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Fix a couple of type fixes to allow compilation on AIX again
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson [Victor J. Orlikowski <v.j.orlikowski@gte.net>]
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson *) Fix bug in send_the_file() which causes offset to be ignored
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson if there are no headers to send.
b7554e2bc93290f579e392cd86cf8107072130a4Andreas Gustafsson [Bill Stoddard]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Handle APR_ENOTIMPL returned from apr_sendfile in the core
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce filter. Useful for supporting Windows 9* with a binary
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce compiled on Windows NT.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas GustafssonChanges with Apache 2.0a7
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Reimplement core_output_filter to buffer/save bucket brigades
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce across multiple calls to the core_filter. The brigade will be
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce sent when either MIN_BYTES_TO_SEND or MAX_IOVEC_TO_WRITE
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson thresholds are hit or the EOS bucket is received.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Create experimental filter (buffer_filter) that coalesces bytes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce into one large buffer before invoking the next filter in the
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson chain. This filter is particularly useful with the current
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson implementation of mod_autoindex when it inserted above the
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson chunk_filter. mod_autoindex generates a lot of brigades that
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson containing buckets holding just a few bytes each. The
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce buffer_filter coalesces these buckets into a single large bucket.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Add apr_sendfile() support into the core_output_filter.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Bill Stoddard]
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson *) Add apr_sendv() support into the core_output_filter.
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix mod_log_config so that it compiles cleanly with BUFFERED_LOGS
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson [Mike Abbott <mja@sgi.com>]
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson *) Remove ap_send_fb. This is no longer used in Apache, and it doesn't
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson make much sense, because Apache uses buckets instead of BUFFs now.
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson *) send_the_file now falls back to a read/write loop on platforms that
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson do not have sendfile.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Ryan Bloom and Brian Havard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Install apachectl correctly, and substitute the proper values so
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce that it works again. [Ryan Bloom]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Better(??) handle platforms that lack sendfile().
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) APR now has UUID generation/formatting/parsing support.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Greg Stein]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Begin the http_filter. This is an input filter that understands
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the absolute basic amount required to parse an HTTP Request. The
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce goal is to be able to split headers from request body before passing
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson the data back to the other filters.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Bring forward from 1.3.13 the config directory implementation
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jim Jagielski]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) install apxs if it is created
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added APR_IS_STATUS_condition test macros to eliminate canonical error
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce conversions. [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Now that we have ap_add_input_filter(), rename ap_add_filter() to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ap_add_output_filter(). [Jeff Trawick]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Multiple build and configuration fixes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Build process:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce -add datadir and localstatedir substitutions
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce -fix layout name
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson -fix logfilename misspelling
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson -fix evaluation of installation dir variables and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce -replace $foobar by $(foobar) to be usefull in the makefile
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson Cross compile:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce -add rules for cross-compiling in rules.mk. Okay, rule to check for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce $CC_FOR_BUILD is still missing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce -use CHECK_TOOL instead of CHECK_PROG for ranlib
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson -add missing "AR=@AR@" to severaly Makefile.in's
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson -cache result for "struct rlimit"
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson -compile all helper programs with native and cross compiler
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson and use the native version to generate header file
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ["R�diger" Kuhlmann <Tadu@gmx.de>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Prepare our autoconf setup for autoconf 2.14a and for cross-
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson ["R�diger" Kuhlmann <Tadu@gmx.de>]
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson *) Fix a bug where a client which only sends \n to delimit header
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson lines (netcat) gets a strange looking HTTP_NOT_IMPLEMENTED
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson message. Start working on ebcdic co-existance with input
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [William Rowe, Greg Ames]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If mod_so is enabled in the server always create libexec, even
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce if there are no modules installed in this directory. This is a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce requirement for APXS to work correctly.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Connection oriented output filters are now stored in the
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson conn_rec instead of the request_rec. This allows us to add the
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson output filter in the pre-connection phase instead of the
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson post_read_request phase, which keeps us from trying to write an
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce error page before we have a filter to write to the network.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom, Jeff Trawick, and Greg Ames]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Cleaning up an mmap bucket no longer deletes the mmap. An
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mmap can be used across multiple buckets (default_handler with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce byte ranges, mod_file_cache, mod_mmap_static), so cleanup of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the mmap itself can't be associated with the bucket.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add .dll caching directive ISAPICacheFile to mod_isapi.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Radical surgery to improve mod_isapi support under Win32.
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson Includes a number of newer ServerSupportFunction calls, support
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for ReadClient (in order to retrieve POSTs greater than 48KB),
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and general bug fixes to more reliably load ISAPI .dll's and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce prevent leaking handle resources. Note: There are still
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce discrepancies between IIS's and Apache's ServerVariables, and
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson async calls are still not supported. Additional warnings are
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson logged to facilitate debugging of unsupported ISAPI calls.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add input filtering to Apache. The basic idea for the input
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce filters is the same as the ideas for output filters. The biggest
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson difference is that instead of calling ap_pass_brigade, ap_get_brigade
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson should be called, and the order of execution for the filter itself is
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson different. When writing an output filter, a brigade is passed in,
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson and filters operate directly on that brigade, when done, they call
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson ap_pass_brigade. Input filters are the exact opposite. Because input
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson is not a push operation, filters first call ap_get_brigade. When this
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson function returns, the input filter will be left with a valid brigade.
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson The input filter should then operate on the brigade, and return.
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson *) Fix building on BSD/OS using its native make. The build system
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson falls back to the BSD .include directive on that host platform.
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson [Sascha Schumann]
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson *) Expand dbmmanage to allow -d -m -s -p options for Crypt, MD5,
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson SHA1 and plaintext password encodings. Make feature tests a
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson bit more flexible. [William Rowe]
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson *) Charset translation: mod_charset_lite handles output content
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson translation in a filter. mod_charset_lite no longer ignores
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson subrequests. A bunch of cruft related to BUFF's support for
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson translating request and response bodies was removed.
7598325e6bbc3eb3cebcb08c7a9dec7ea4a64c27Andreas Gustafsson [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Move the addition of the CORE filter to the post_read_request
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson hook in http_core.c. This removes the need to add the filter in
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson multiple places and allows for an SSL module to be added much
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce simpler. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY [CVE-2000-0913] (cve.mitre.org):
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Fix a security problem that affects certain configurations of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_rewrite. If the result of a RewriteRule is a filename that
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson contains expansion specifiers, especially regexp backreferences
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce $0..$9 and %0..%9, then it may be possible for an attacker to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce access any file on the web server. [Tony Finch]
5dccc8b2a55f0222ffda0ff0a981bad4eb0563beAndreas Gustafsson *) Fix a bug where errors that are detected during early request parsing
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson don't produce visible HTTP error messages at the browser, because
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson the core_filter wasn't present. [Greg Ames]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Provide apr_socklen_t as a portability aid.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Victor J. Orlikowski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Overhaul of dbmmanage to allow a groups arg (as in Apache 1.2)
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson as well as a comment arg to the add, adduser and update cmds.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson update allows the user to clear or preserve pw/groups/comment.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Fixed a bug in dbmmanage that prevented the check option from
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce parsing a password followed by :group... text. Corrected the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce seed calcualation for Win32 systems, and added -lsdbm support.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Configured mod_auth_dbm to compile with sdbmlib under Win32.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
c71787bd6356c92e9c7d0a174cd63ab17fcf34c6Eric Luce *) Avoid a segfault when parsing .htaccess files. An
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson uninitialized tree pointer was passed to ap_build_config().
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Jeff Trawick]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Change the way that inet_addr & inet_network are checked for
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson in APR's configure process to allow BeOS BONE to correctly
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson find them. With this change BeOS BONE now builds from source
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson with no problems. [David Reid]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Fix a bug in apr_create_process() for Unix. The NULL signifying
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson the end of the parameters to execve() was stored in the wrong
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson location, overlaying the storage beyond the newargs[] array and
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson also passing uninitialized storage to execve(), which would
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson sometimes fail with EFAULT. [Jeff Trawick]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Fix a bug parsing configuration file containers. With a sequence
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson like this in the config file
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson the second container would be terminated at the blank line due to
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson sediment in the buffer from reading the prior </IfModule> and an
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson error message would be generated for the real </IfModule> for the
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson second container. Also due to this problem, any two characters
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson could be used for "</" in the close of a container.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) ap_add_filter prototype changed to remove the ctx pointer. The
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson pointer still remains in the filter structure, but it can not be
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a part of the ap_add_filter prototype. The reason is that when
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the core uses AddFilter to add a filter to the stack it doesn't
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce know how to allocate the ctx pointer, or even how much memory should
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce be allocated. The filters will have to be responsible for allocating
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the ctx memory when they need it.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add an AddFilter directive. This directive takes a list of filters
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson that should be activated for the requested resource.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) apr_snprintf(): Get quad format strings working on OS/390 (and perhaps
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce some other platforms). [Jeff Trawick]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Modify mod_include to be a filter. Currently, it has only been tested
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson on actual files, but it should work for CGI scripts too.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) apr_putc(), apr_puts() for Unix: handle buffered files and interrupted
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce writes. apr_flush() for Unix: handle interrupted writes.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) NameVirtualHost can now take "*" as an argument instead of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce an IP address. This allows you to create a purely name-based
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson virtual hosting server that does not have any IP addresses in
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson the configuration file and which ignores the local address
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson of any connections. PR #5595, PR #4455 [Tony Finch]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix some compile warnings in mod_mmap_static.c
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Mike Abbott <mja@sgi.com>]
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson *) Fix chunking problem with CGI scripts. The general problem was that
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson the CGI modules were adding an EOS bucket and then the core added an
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson EOS bucket. The chunking filter finalizes the chunked response when it
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson encounters an EOS bucket. Because two EOS buckets were sent, we
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson finalized the response twice. The fix is to make sure we only send one
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson EOS, by utilizing a flag in the request_rec.
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson *) apr_put_os_file() now sets up the unget byte appropriately on Unix
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson and Win32. Previously, the first read from an apr_file_t set up via
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce apr_put_os_file() would return a '\0'. [Jeff Trawick]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Mod_cgid now creates a single element bucket brigade, with a pipe
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson bucket, instead of using BUFF's and ap_r*.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) APRVARS.in no longer overwrites the EXTRA_LIBS variable.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Mike Abbott <mja@sgi.com>]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Remove ap_bopenf from buff code. This required modifying the file_cache
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson code to use APR file's directly instead of going through BUFFs.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix compile break on some platforms for mod_mime_magic.c
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [John K. Sterling <sterling@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix merging of AddDefaultCharset directive.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR #5872 (1.3) [Jun Kuriyama <kuriyama@imgsrc.co.jp>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Minor revamp of the rlimit sections of code. We now test
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce explicitly for setrlimit and getrlimit. Also, unixd_set_rlimit()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is now "available" even if the platform doesn't support
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the rlimit family (it's just a noop though). [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Migrate the pre-selection of which MPM to use for specific
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson platforms to hints.m4, which contains (or should contain)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce all platform specific "hints". [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove IOLs from Apache. With filtering, IOLs are no longer necessary
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add tables with non-string/binary values to APR.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix some bad calls to ap_log_rerror() in mod_rewrite.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Update PCRE to version 3.2. [Ryan Bloom]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Change the way buckets' destroy functions are called so that
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce they can be more directly used when changing the type of a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce bucket in place. [Tony Finch]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Add generic support for reference-counting the resources used by
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson buckets, and alter the HEAP and MMAP buckets to use it. Change
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the way buckets are initialised to support changing the type of
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson buckets in place, and use it when setting aside TRANSIENT buckets.
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson Change the implementation of TRANSIENT buckets so that it can be
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson mostly shared with IMMORTAL buckets, which are now implemented.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Tony Finch]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0a6
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Add support to Apache and APR for dsos on OS/390. [Greg Ames]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Add a chunking filter to Apache. This brings us one step closer
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson to removing BUFF. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) ap_add_filter now adds filters in a LIFO fashion. The first filter
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson added to the stack is the last filter to be called. [Ryan Bloom]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Apache 2.0 has been completely documented using Scandoc. The
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer docs can be generated by running 'make docs'. [Ryan Bloom]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Add filtered I/O to Apache. This is based on bucket brigades,
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson Currently the buckets still use BUFF under the covers, but that
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson should change quickly. The only currently written filter is the
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson core filter which just calls ap_bwrite. [The Apache Group]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) APR locks on Unix: Let APR_LOCKALL locks work when APR isn't
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson built with thread support. [Jeff Trawick]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Abort configuration if --with-layout was specified and there's
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson no layout definition file. [Ken Coar]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Add support for '--with-port=n' option to configure. [Ken Coar]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Add support for extension methods for the Allow response header
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson field, and an API routine for accessing r->allowed and the
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer list of extension methods in a unified manner. [Ken Coar]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) mod_cern_meta: fix broken file reading loop in scan_meta_file().
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer [Rob Simonson <simo@us.ibm.com>]
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer *) Get xlate builds working again. The apr renaming in 2.0a5 broke
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson APACHE_XLATE builds. [Jeff Trawick]
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson *) A configuration file parsing problem was fixed. When the
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson configuration file started with an IfModule/IfDefine container,
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson only the last statement in the container would be retained.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Jeff Trawick]
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael SawyerChanges with Apache 2.0a5
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Perchild is serving pages after passing them to different child
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson processes. There are still a lot of bugs, but this does work. I
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson have made requests against the same installation of Apache, and had
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson different servers use different user IDs to serve the responses.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson This change moves to using socketpair instead of an AF_UNIX socket.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Perchild MPM still doesn't work perfectly, but it is serving pages.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson It can't seem to pass between child processes yet, but I think we
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson are closer now than before. This moves us back to using Unix
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson Domain Sockets. [Ryan Bloom]
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) libapr functions and types renamed with apr_ prefix.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson #include "apr_compat.h" for 1.3.x backwards compat
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Fix problems with APR sockaddr handling on Win32. It didn't always
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson return the right information on the local socket address.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson [Gregory Nicholls <gnicholls@level8.com>]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) ap_recv() on Win32: Set bytes-read to 0 on error.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Gregory Nicholls <gnicholls@level8.com>]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Add an option to not detach from the controlling terminal without
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson going into single process mode. This allows for much easier
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson debugging of the process startup code. [Ryan Bloom]
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson *) ab: don't use perror() to report the failure of an APR function.
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson [Jeff Trawick]
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson *) Make dexter, mpmt_pthread, and perchild MPMs not destroy the
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson scoreboard on graceful restarts.
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson *) Fix segfault/SIGSEGV when running gzip from mod_mime_magic.c.
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson An invalid ap_proc_t was passed to ap_create_process().
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson [Jeff Trawick]
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson *) Allow modules to register filters. Those filters are still
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson never called, but this is a step in the right direction.
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson [Ryan Bloom and Greg Stein]
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson *) Register the mod_cgid daemon process for cleanup so that it is
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson killed at termination if it does not die when the parent gets
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson SIGTERM. This change is to fix occasional problems where the
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson process stays around. Bugs in similar logic in mod_rewrite and
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson mod_include were also fixed. [Jeff Trawick]
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson *) Fix a bug in the time handling. Basically, we were imploding a time
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson in ap_parseHTTPdate, but it had bogus data in the exploded time format.
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson Namely, tm_usec and tm_gmtoff were not filled out. ap_implode_time
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson uses those two fields to adjust the time value. Because of the HTTP
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson spec, both of those values can be zero'ed out safely. This fixes
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson the bug correctly. [Ryan Bloom]
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson *) Fix a couple of place in the Windows code where the wrong error
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson code was being returned. [Gregory Nicholls <gnicholls@level8.com>]
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson *) Fix POOL_DEBUG (at least for prefork mpm). [Dean Gaudet]
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson *) Added the APR_EOL_STR macro for platform dependent differences in
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson logfiles and other raw text (such as all APR files). Fixes logfiles
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce not terminated with cr/lf sequences in Win32. [William Rowe]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Move all strings functions in APR to src/lib/apr/strings and create
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce apr_strings.h for the prototypes. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) APR lock fixes: when using SysV sems, flock(), or fcntl(), be sure
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to repeat the syscall until we stop getting EINTR. I noticed a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce related problem at termination (SIGTERM) on FreeBSD when using
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer fcntl(). Apache 1.3 had these new loops too. Also, make the flock()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce implementation work properly with child init. Previously, ap_lock()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce was essentially a no-op because all children were using different
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer locks and thus nobody ever blocked. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The htdocs/ tree has been moved out of the CVS source tree into
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a separate area for easier development. This has NO EFFECT on
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce end-users or Apache installations. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Integrate the mod_dav module for WebDAV protocol handling. This
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce adds the dav and dav_fs modules, the SDBM library, and additional
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce XML handling utilities. [Greg Stein]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Clean out obsolete names (from httpd.h) for the HTTP Status Codes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Greg Stein]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Update the lib/expat-lite/ library (bring forward changes from
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the Apache 1.3 repository). [Greg Stein]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) If sizeof(long long) == sizeof(long), then prefer long in APR
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce configure.in. [Dave Hill <ddhill@zk3.dec.com>]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Add ap_sendfile for Tru64 Unix. Also, add an error message for
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson machines where sendfile is detected, but nobody has written ap_sendfile.
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson [Dave Hill <ddhill@zk3.dec.com>]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Compile fixes in mod_mmap_static. [Victor J. Orlikowski]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) ab would start up more connections than needed, then quit when the
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson desired number were finished. Also fixed a logic error involving
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson ab keepalives. [Victor J. Orlikowski]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) WinNT: Implement non-blocking pipes with timeouts to communicate
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson with CGIs. Apache 2.0a4 had non-blocking pipes but without
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson timeouts (i.e, if a timeout was specified, the pipe reverted to
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson a full blocking pipe). Now the behaviour is more in line with
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson Unix non-blocking pipes.
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson [Bill Stoddard]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) WinNT: Implement accept socket reuse. Using mod_file_cache to
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson cache open file handles along with accept socket reuse enables
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson Apache 2.0 to serve non-keepalive requests for static files at
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson 3x the rate of Apache 1.3.(e.g, Apache 1.3 will serve 400 rps
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson and Apache 2.0 will serve almost 1200 rps on my system).
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson [Bill Stoddard]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Merge mod_mmap_static function into mod_file_cache. mod_file_cache
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson supports two config directives, mmapfile (same behavious as
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson mod_mmap_static) and cachefile. Use the cachefile directive
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson to cache open file handles. This directive only works on systems
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson that have implemented the ap_sendfile API. cachefile works today
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson on Windows NT, but has not been tested on any flavors of Unix.
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson [Bill Stoddard]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Cleanup the configuration. With the last few changes the
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson configuration process automatically:
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson inherits information about how to build from APR. Allowing
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson APR to inform Apache that it should or should not use -ldl
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson Detects which mod_cgi should be used mod_cgi or mod_cgid,
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson based on the threading model
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson Apache calls APR's configure process before finishing it's
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson configuration processing, allowing for more information flow
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson between the two.
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson *) Change Unix and Win32 ap_setsockopt() so that APR_SO_NONBLOCK
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson with non-zero argument makes the socket non-blocking. BeOS and
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson OS/2 already worked this way. [Jeff Trawick]
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson *) ap_close() now calls ap_flush() for buffered files, so write
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson operations work a whole lot better on buffered files.
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson [Jeff Trawick]
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson *) Fix error messages issued from MPMs which explain where to change
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson compiled-in limits (e.g., ThreadsPerChild, MaxClients, StartTreads).
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson *) ap_create_pipe() now leaves pipes in blocking state. (This helps
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson reduce the number of syscalls on Unix.) ap_set_pipe_timeout() is
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson now the way that the blocking state of a pipe is manipulated.
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson ap_block_pipe() is gone. [Jeff Trawick]
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson *) Correct the problem where the only local host name that the IP stack
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson can discover are 'undotted' private names. If no fully qualified
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson domain name can be identified, the default ServerName will be set to
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson the machine's IP address string. A warning is always provided if the
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson ServerName not specified, but assumed. Solves PR6215 [William Rowe]
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson *) Repair problems with config file processing which caused segfault
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson at init when virtual hosts were defined and which caused ServerName to
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson be ignored when there was no valid DNS setup. [Jeff Trawick]
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson *) Removed pointless ap_is_aborted macro function. [Roy Fielding]
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson *) Add ap_sendfile implementation for AIX
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson [Victor J. Orlikowski]
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson *) Repair C++ compatibility in ap_config.h, apr_file_io.h,
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson [Tyler J. Brooks <tylerjbrooks@home.com>, Jeff Trawick]
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson *) Bring the allocation and pool debugging code back into a working
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson state. This will need to be tested as so far it's only been used on
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson BeOS. [David Reid]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Change configuration command setup to be properly typesafe when in
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson maintainer mode. Note that this requires a compiler that can initialise
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson unions. [Ben Laurie]
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson *) Turn on buffering for config file reads. Part of this was to
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson repair buffered I/O support in Unix and implement buffered
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson ap_fgets() for all platforms. [Brian Havard, Jeff Trawick]
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson *) Win32: Fix problem where UTC offset was not being set correctly
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson in the access log. Problem reported on news group by Jerry Baker.
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson [Bill Stoddard]
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson *) Fix segfault when reporting this type of syntax error:
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson "</container> without matching <container> section", where
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson container is VirtualHost or Directory or whatever.
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson [Jeff Trawick]
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson *) SECURITY [CAN-2000-1204] (cve.mitre.org):
1328f25787fcdaacf2dd7b094dcac26342cea341Andreas Gustafsson Prevent the source code for CGIs from being revealed when
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson using mod_vhost_alias and the CGI directory is under the document root
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson and a user makes a request like http://www.example.com//cgi-bin/cgi
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson as reported in <news:960999105.344321@ernani.logica.co.uk>
faf83c82e0825a2e6ce6ac975a8e3faab1357310Andreas Gustafsson *) Add support for the new Beos NetwOrking Environment (BONE)
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson *) xlate: ap_xlate_conv_buffer() now tells the caller when the
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson final input char is incomplete; ap_bwrite_xlate() now handles
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson incomplete final input chars. [Jeff Trawick]
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson *) Yet another update to saferead/halfduplex stuff -- need to ensure
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson that a bhalfduplex call occurs before logging or else DNS and
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson such can delay the last packet of the response. [Dean Gaudet]
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson *) Some syscall reduction in APR on unix -- don't seek when setting
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson up an mmap; and don't fcntl() more than once per socket.
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson *) When mod_cgid is started as root, the cgi daemon now switches
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson to the configured User/Group (like other httpd processes)
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson instead of continuing as root. [Jeff Trawick]
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson *) The prefork MPM now uses an APR lock for the accept() mutex.
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson It has not been getting a lock at all recently. httpd -V now
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson displays APR's selection of the lock mechanism instead of the
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson symbols previously respected by prefork. [Jeff Trawick]
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson *) Change the mmap() feature test to check only for existence.
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson The previous check required features not used by Apache.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Fix a couple of bugs in mod_cgid: The cgi arguments were
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce sometimes mangled. The len parm to accept() was not
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson initialized, leading sometimes to an endless loop of failed
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce accept() calls on OS/390 and anywhere else that failed the call
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce if the len was negative. Use <sys/un.h> for struct sockaddr_un
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce instead of declaring it ourselves to fix a compilation problem
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on Solaris. [Jeff Trawick]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Add Resource limiting code back into Apache 2.0. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix zombie process problem with mod_cgi. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Port mod_mmap_static to 2.0. Make it go faster. [Greg Ames]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Fix storage overlay when loading dsos. Symptom: Apache dies at
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce initialization if ALLOC_DEBUG is defined; no known symptom
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce otherwise. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix typo in configure script when checking for mod_so. bash
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce doesn't seem to have a problem but /bin/sh on Solaris does.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Symptom: "./configure: test: unknown operator =="
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson [Jeff Trawick]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Rebind the Win32 NT and 9x services control into the MPM.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson All console, WinNT SCM and Win9x pseudo-service control code is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce now wrapped within the WinNT MPM.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Make a copy of getenv("PATH") before storing for later use. Some
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson getenv() implementations use the same storage for successive calls.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce CGIs on OS/390 had a bad PATH due to this. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Server Tokens work in 2.0 again. This also propogates the change
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to allow just the product name in the server string using
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PRODUCT_ONLY.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0a4
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) EBCDIC: Rearrange calls to ap_checkconv() so that most handlers
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce won't need to call it. [Greg Ames, Jeff Trawick]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Move pre_config hook call to between configuration read and config
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson tree walk. This allows all modules to implement pre_config hooks
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson and know that they will be called at an appropriate time.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_cgi, mod_cgid: Make ScriptLog directive work again.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Add pre-config hooks back to all modules.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Fix a SIGSEGV in ap_md5digest(), which is used when you have
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson ContentDigest enabled and we can't/don't mmap the file.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Jeff Trawick]
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) We now report the correct line number for syntax errors in config
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce files. [Ryan Bloom, Greg Stein, Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Brought mod_auth_digest up to synch with 1.3, fixed ap_time_t-
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce related bugs, and changed shmem/locking to use apr API. Shared-mem
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is currently disabled, however, because of problems with graceful
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce restarts. [Ronald Tschal�r]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix corruption of IFS variable in --with-module= handling.
c71787bd6356c92e9c7d0a174cd63ab17fcf34c6Eric Luce Depending on the user's shell or customization thereof, there
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce would be errors generating ap_config_auto.h later in the configure
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson procedure. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_cgi: Restore logging of stderr from child process when ScriptLog
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce isn't used (as in 1.3), except that on Unix it is now logged via
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ap_log_rerror() instead of by the child having STDERR_FILENO refer
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to the error log. [Greg Ames, Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add '-D' argument processing for run time configuration defines.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Organize http_main.c as independent code, such that no code or
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce global data is exported from it. WIN32 will dynamically link it
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to the server core, so this will prevent mutual dependency.
c71787bd6356c92e9c7d0a174cd63ab17fcf34c6Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add separate dynamic linkage tags APR_EXPORT(), APR_EXPORT_NONSTD()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and APR_VAR_EXPORT to correctly resolve apr functions and globals.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add Win9x service execution and Ctrl+C/Ctrl+Break/Shutdown handlers.
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson [William Rowe, Jan Just Keijser <KEIJSERJJ@logica.com>]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Add mod_charset_lite for configuring character set translation.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add '-n' option to htpasswd to make it print its user:pw record
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson on stdout rather than having to frob a text file. [Ken Coar]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Fix saferead. Basically, we flush the output buffer if a read on the
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson input will block.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) APR: Add ap_xlate_get_sb() so that an app can find out whether or not
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson a conversion is single-byte only. [Jeff Trawick]
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson *) BEOS: ap_shutdown should return APR_SUCCESS or errno. Note that
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson the BeOS 5.0 documentation says that shutdown doesn't work yet.
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson [Roy Fielding]
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson *) Fix some minor errors where pid was being manipulated as an int
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson instead of the portable pid_t. [Roy Fielding]
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson *) Fix some error log prints that were printing the pointer to a
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson structure rather than the pid within the structure.
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson [Jeff Trawick, Roy Fielding]
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson *) ab: Fix a command-line processing bug; track bad headers in
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson err_response; support reading headers up to 2K.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Ask Bjoern Hansen <ask@valueclick.com>]
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson *) Fix ap_resolve_env() so that it handles new function added in a prior
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce alpha (see "Added the capability to do ${ENVVAR} constructs in the
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson config file.") as well as the constructs used by mod_rewrite.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Paul Reder <rederpj@raleigh.ibm.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Apache 2.0 builds and runs on OS/390. [Jeff Trawick, Greg Ames]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change the EBCDIC support in functions for MD5, SHA1, and base 64 to use
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce APR to perform translation, instead of accessing the hard-coded tables
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in 1.3's ebcdic.c. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix some bugs (mostly lost 1.3 code) in ab's command-line processing.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add the ability to hook into the config file reading phase. Basically
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce if a directive is specified EXEC_ON_READ, then when that directive is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce read from the config file, the assocaited function is executed. This
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce should only be used for those directives that must muck with HOW the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce server INTERPRETS the config. This should not be used for directives
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson that re-order or replace items in the config tree. Those changes should
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson be made in the pre-config step.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add mod_example to the build system.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) APR: Add ap_xlate_conv_byte() to convert one char between single-
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce byte character sets. [Jeff Trawick]
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson *) Pick up various EBCDIC fixes from 1.3 (from Martin
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson Kraemer and Oliver Reh originally according to the change log).
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson [Jeff Trawick]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Fix a couple of problems in RFC1413 support (controlled by the
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson IdentityCheck directive). Apache did not build the request string
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce properly and more importantly Apache would loop forever if the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce would-be ident server dropped the connection before sending a
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson properly terminated response. [Jeff Trawick]
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson *) apxs works in 2.0.
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson *) Reliable piped logs work in 2.0.
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson *) Introduce a hash table implementation into APR to be used for
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson replacing tables and other random data structures in Apache.
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson *) Add some more error reporting to htpasswd in the case of problems
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson generating or accessing the temporary file. Also, pass in a
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson buffer if the implementation knows how to use it (i.e., if L_tmpnam
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson is defined). [Ken Coar]
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson *) Configure creates config.nice now containing your configure
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson options. Syntax: ./config.nice [--more-options]
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson [Sascha Schumann]
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson *) Fix various return code problems in APR on Win32. For most of
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson these, APR was returning APR_EEXIST instead of GetLastError()/
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson WSAGetLastError(). [Jeff Trawick]
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson *) Make piped logs work again in version 2.0
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson *) Add VPATH support to UNIX build system of Apache and APR.
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson [Sascha Schumann]
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson *) Fix ap_tokenize_to_argv to respect the const arguments that are
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson *) Fix mm's memcpy/memset macros, pointer arithmetic was broken.
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson Patch submitted to author.
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson [Sascha Schumann]
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson *) Fix mm configuration on Solaris 8 x86 and OS/390. Don't require
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson /sbin in PATH on FreeBSD (all submitted to rse previously)
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson [Jeff Trawick]
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson *) Fix building Pthread-based MPMs on OpenBSD
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson [Sascha Schumann] PR#26
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) Fix ap_readdir() problem on systems where d_name[] field in
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson struct dirent is declared with only one byte. (This problem only
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson affected multithreaded builds.) This caused a segfault during
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson pool cleanup with mod_autoindex on Solaris (Solaris 8 x86, at
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson least). [Jeff Trawick]
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) Fix some make-portability problems on at least Tru64, Irix
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson [Sascha Schumann] PR#18, PR#39
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) Add ap_sigwait() to support old-style sigwait() on systems
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson like OS/390 and UnixWare.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Sascha Schumann]
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) Add POSIX-thread flags for more platforms.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Sascha Schumann]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Fix some minor bugs in ap_strerror(). Teach ap_strerror()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (on Unix, at least) to handle resolver errors. Fix a bug in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the definition of APR_ENOMEM so that ap_strerror() can spit
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce out the correct error message for it.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0a3
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_so reports ap_os_dso_error() if ap_dso_load() fails
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Doug MacEachern]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: *HOOK* macros now have an AP_ prefix
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Doug MacEachern]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: Eliminate redundant calls to initialize winsock.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Tim Costello <timcostello@ozemail.com.au>]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Fix bugs initializing ungetchar for pipes.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Chia-liang Kao <clkao@CirX.ORG>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The ab program in the src/support directory is now portable using
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Support directory is being compiled when the server is built
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The configure option --with-program-name has been added to allow
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce developers to rename the executable at configure time. This also
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce changes the name of the config files to match the executable's name.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) mod_autoindex: Add `IndexOptions +VersionSort', to nicely sort filenames
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson containing version numbers. [Martin Pool]
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) ap_open(..,APR_OS_DEFAULT,..) uses perms 0666 instead of 0777 on
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Unix; access_log and error_log now created with these perms; non-
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Unix is unaffected [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Finished move of ap_md5 routines to apr_md5. Removed ap_md5.h.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Replaced more magic numbers with MD5_DIGESTSIZE.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [William Rowe, Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: Get mod_auth_digest compiling and added to the Windows
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce build environment. Not tested and I'd be suprised if it
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce actually works. [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Revamp the Win32 make environment. Makefiles have been removed and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Apache.dsw created to bring together all the pieces. Create new file
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce os/win32/BaseAddr.ref to define module base addresses (to prevent
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce dll relocation at start-up).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe, Greg Marr, Tim Costello, Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) [EBCDIC] Port Paul Gilmartin's CRLF patch from 1.3. This replaces most
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of the \015, \012, and \015\012 constants with macros.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add ap_xlate_open() et al for translation of text between different
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce character sets. The initial implementation requires iconv().
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) More FAQs and answers from comp.infosystems.www.servers.unix.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Joshua Slive <slive@finance.commerce.ubc.ca>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) CGI output is being timed out now.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the problem with dieing quietly. dupfile now takes a pool which
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is used by the new apr file. There is no reason to create a new file
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce with the same lifetime as the original file.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Win32: Attempt to eliminate dll relocation at start-up by specifying
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson module base addresses. This will help shooting seg faults
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in the field. [William Rowe <wrowe@lnd.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Update Apache on Windows documentation. Add new document
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce describing how to compile Apache on Windows.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe <wrowe@lnd.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) ap_set_pipe_timeout(), ap_poll(), and APR_SO_TIMEOUT now take
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce microseconds instead of seconds. Some storage leaks and other
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce minor bugs in related code were fixed. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: First cut at getting mod_isapi working under 2.0
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [William Rowe <wrowe@lnd.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) First stab at getting mod_auth_digest working under 2.0
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce quick change summary:
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson - moved the random byte generation (ap_generate_random_bytes) into APR
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson - now uses ap_time_t
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson - compiles and runs on linux
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - tested with amaya
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Martin <bmartin@penguincomputing.com>]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Win32: Move the space stripping of physical service names
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce fix up from Apache 1.3. #include'ing "ap_mpm.h" fixes up an
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce unresolved symbol. Add dependency checking to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce CreateService call to ensure TCPIP and AFP (winsock) is started
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson before Apache.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe <wrowe@lnd.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: Add code to perform latebinding on functions that may
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson not exist on all levels of Windows where Apache runs. This
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is needed to allow Apache to start-up on Win95/98. All calls
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to non portable functions should be protected with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ap_oslevel checks to prevent runtime segfaults.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe <wrowe@lnd.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix fallback default values for SHM_R and SHM_W [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get lingering_close() working again. [Dean Gaudet, Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: Get non-blocking CGI pipe reads working under Windows NT.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This addresses PR 1623. Still need to address timing out runaway
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce CGI scripts. [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: Make ap_stat Windows 95/98 friendly
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe <wrowe@lnd.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: Fix a bug in ap_get_oslevel which causes GetVersionEx() to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce always fail. Need to initialise the dwOSVersionInfoSize member of the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce OSVERSIONINFO struct before calling GetVersionEx, so GetVersionEx
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce always fails.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce The patch also enhances ap_get_oslevel (and the associated enum) to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce handle selected service packs for NT4, and adds recognition for
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson Windows 2000. This is useful, eg. if we can recognise NT4 SP2 then
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson we can use ReadFileScatter and WriteFileGather in readwrite.c.
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson [Tim Costello <Tim.Costello@BTFinancialgroup.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get mod_rewrite building and running, and mod_status building for Win NT
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Allan Edwards <ake@raleigh.ibm.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Patch to port mod_auth_db to the 2.0 api and also to support
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Berlekey DB 3.0. It works for me with both Berkeley DB 3.0.55 and
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson 2.7.7. It should work with version 1 as well but I haven't tested it.
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson [Brian Martin <bmartin@penguincomputing.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get APR DSO code working under Windows. Includes cross platform
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Tim.Costello@BTFinancialgroup.com]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix some of the Windows APR time functions.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) FAQ changes related to tidying up historical documents on the web site.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Joshua Slive <slive@finance.commerce.ubc.ca>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Move Windows DSO code into APR.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Eliminate apr_win.h and apr_winconfig.h (and the ugly #ifdefs they cause).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Now, apr.h and apr_config.h are generated from apr.hw and apr_config.hw
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce at build time. At this point, the server will not compile on Windows because
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of the recent DSO commits. Fixing those next.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Rowe & Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added error checking for file I/O APR routines.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jon Travis <jtravis@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) APR: Don't use the values of resolver error codes for the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce corresponding APR error codes. On Unix and Win32, return the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce proper APR error code after a resolver error. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0a2
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Renamed the executable back to httpd on all platforms other
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow BeOS to survive restarts, log properly and a few
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce small things it had problems with due to the way it setup
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce users and groups. [David Reid]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get mod_rewrite working with APR locks
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Paul Reder <rederpj@raleigh.ibm.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Actually remove the sempahore when the lock cleanup routine
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is called on BeOS. [David Reid]
699095b077b0e4e6138b7546d5bb3f05b0d00bb7Andreas Gustafsson *) Clear hook registrations between reads of the config file.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce When DSOs are unloaded and re-loaded the old hook pointers may
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce no longer be valid. This fix eliminates potential segfaults.
699095b077b0e4e6138b7546d5bb3f05b0d00bb7Andreas Gustafsson [Allan Edwards <ake@raleigh.ibm.com>]
699095b077b0e4e6138b7546d5bb3f05b0d00bb7Andreas Gustafsson *) Fix a problem with Sigfunc not being defined or bypassed
699095b077b0e4e6138b7546d5bb3f05b0d00bb7Andreas Gustafsson if sigaction() wasn't found. [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the locking mechanism on BSD variants. They now use fcntl
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce locks. This allows the server to start and serve pages.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) First cut at getting the Win32 installer to work
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe <wrowe@lnd.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Get htpasswd compiling under Windows
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson [William Rowe <wrowe@lnd.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change the log message for a bind() failure to show the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce interface and port number. [Jeff Trawick]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Import the documentation from 1.3.12 and bring parts of it
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce up-to-date with respect to the changes that have occurred
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Tony Finch]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) BeOS MPM updated. CGI bug on BeOS fixed. IP addresses
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson now logged correctly on BeOS.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Create one makefile for all Win32 distributions (NT/2000/95/98).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Makefile.win includes the same user interface as the old
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [William Rowe <wrowe@lnd.com>, Jeff Trawick <trawick@us.ibm.com>]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Win32 exec now uses COMSPEC environment string for command
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce shell path resolution.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson [William Rowe <wrowe@lnd.com>] PR#3715
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Win32: ap_connect() was not returning correct error condition
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Allen Prescott <allen@clanprescott.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: ap_open() was broken on Win9x because an NT-specific
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce flag was passed to CreateFile. ap_puts() added an unnecessary
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Trawick <trawick@us.ibm.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Put in Korean and Norwegian index.html pages (2.0 and 1.3)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce which where donated by Lee Kuk Hyun and Lorant Czaran. 'Fixed'
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce confusing ee/et name and made all extensions language/dialect
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce rather than country reflecting. Changed example files to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce explicit reflect the ISO charset and added a few common
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ones to the example config [dirkx]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Extend external module capability. To use this, you call
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce configure with --with-module=path/to/mod1,path/to/mod2,etc.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Backported the various "default charset" fixes from 1.3.12,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce including the AddDefaultCharset directive. [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added the capability to do ${ENVVAR} constructs in the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce config file. E.g. 'ServerAdmin ${POSTMASTER}'. As commited
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce it does this on a line by line basis; i.e. if the envvar
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson expands to something with spaces you have to protect it
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson by adding quotes around it (Unless of course you expect it
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to contains more than one argument. Alternatively you
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce can compile it on a per token basis; which is what people
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce usually expect by setting RESOLVE_ENV_PER_TOKEN. But this
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson hampers fancier hacks.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Dirk-Willem van Gulik]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Changed the 'ErrorDocument' syntax in that it NO longer
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce supports the asymetric
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson ErrorDocument 301 "Some message
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Note the opening " quote, without a closing quote. It now
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce has either the following syntaxes
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson ErrorDocument XXX /local/uri
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson ErrorDocument XXX http://valid/url
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ErrorDocument XXX "Some Message"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce The recognition heuristic is: if it has a space it
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is a message. If it has no spaces and starts with a /
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson or is a valid URL then treat it that way. Otherwise it
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson is assumed to be a message.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This breaks backward compatibility but makes live a hell
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of a lot easier for GUI's and config file parsers.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Dirk-Willem van Gulik]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Changed 'CacheNegotiatedDocs' from its present/not-present
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce syntax into a 'on' or 'off' syntax. As it currently is the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce only non nesting token which uses NO_ARGS and thus is an
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce absolute pain for any config interface automation. This
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson breaks backward compatibility. [Dirk-Willem van Gulik]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add ability to add external modules to the build process. This is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce done with --with-module=/path/to/module. Modules can only be added
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as static modules at this point.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 2.0a1
fafd1d771905532e8dc3efa2ce90ce4c9e74af61Eric Luce *) Fix FreeBSD 3.3 core dump.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Basically, ap_initialize() needs to get called before
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson create_process(), since create_process() passes op_on structure
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson to semop() to get a lock, but op_on isn't initialized until
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ap_initialize() calls setup_lock(). Here is a slight
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce rearrangement to main() which calls ap_initialize() earlier...
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson [Jeff Trawick <trawick@us.ibm.com>]
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson *) Enable Apache to use sendfile/TransmitFile API
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson [Bill Stoddard, David Reid, Paul Reder]
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson *) Re-Implement Win32 APR network I/O APIs and most of the file I/O
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Bill Stoddard]
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson *) Make file I/O and network I/O writev/sendv APIs consistent.
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson Eliminate use of ap_iovec_t and use Posix struct iovec.
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson Use seperate variable on ap_writev to set the number of iovecs
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson passed in and number of bytes written.
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson [Bill Stoddard]
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson *) Adapt file iol to use APR functions. Replaced ap_open_file()
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson with ap_create_file_iol(). ap_create_file_iol() requires that
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson the file be opened prior to the call using ap_open().
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson [Bill Stoddard]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Port mod_include and mod_cgi to 2.0
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Paul Reder, Bill Stoddard]
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson *) ap_send{,v}, ap_recv, ap_sendfile API clarification --
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce bytes_read/bytes_written is always valid (never -1). Plus
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson some fixes to buff.c to correct problems introduced by the
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson errno => ap_status_t changes a while back. Plus a fix to
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson chunked encoding introduced right at the beginning of 2.0.
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson *) Revamped UNIX build system to use autoconf and libtool.
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson [Manoj Kasichainula, Sascha Schumann]
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson *) port mod_rewrite to 2.0. [Paul J. Reder <rederpj@raleigh.ibm.com>]
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson *) SECURITY: More rigorous checking of Host: headers to fix security
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson problems with mass name-based virtual hosting (whether using mod_rewrite
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson or mod_vhost_alias).
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson [Ben Hyde, Tony Finch]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Add back support for UseCanonicalName in <Directory> containers.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Manoj Kasichainula]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added APLOG_STARTUP log type. This allows us to write an error
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce message without any of the date and time information. As a part
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson of this change, I also removed all of the calls to fprintf(stderr
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson and replaced them with calls to ap_log_error using APLOG_STARTUP
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce writing to stderr is no longer portable, because we don't direct
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson stderr to the error log on all platforms.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Convert error logging functions to take errno as an argument.
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson This makes our error logs more portable, because some Windows API's
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce don't set errno. This change allows us to still output a valid
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce message on all of our platforms.
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson *) mod_mime_magic runs in 2.0-dev now.
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson [Paul Reder <rederpj@raleigh.ibm.com>]
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson *) sendfile has been added to APR.
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson [John Zedlewski <zedlwski@Princeton.EDU>]
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson *) buff.c has been converted to no longer use errno.
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson [Manoj Kasichainula]
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson *) mod_speling runs in 2.0-dev now: a bug in readdir_r handling and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce interface adaption to APR functions did it. [Martin Kraemer]
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson *) Support DSOs properly on 32-bit HP-UX 11.0
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson [Dilip Khandekar <dilip@cup.hp.com>]
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson *) Updated MM in APR source tree from version 1.0.8 to 1.0.11
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson [Ralf S. Engelschall]
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson *) Cleaned APR build environment integration and bootstrap APR
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce automatically for developers from src/Configure.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed building of src/support/htpasswd.c
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson *) When generating the Location: header, mod_speling forgot
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to escape the spelling-fixed uri. (Forw-Port from 1.3)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer]
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson *) Moved mod_auth_digest.c from experimental to standard. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change all pools to APR contexts. This is the first step to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce incorporating APR into Apache. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Move "handler not found" warning message to below the check
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson for a wildcard handler. [Dirk <dirkm@teleport.com>, Roy Fielding]
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson PR#2584, PR#2751, PR#3349, PR#3436, PR#3548, PR#4384, PR#4795, PR#4807
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Support line-continuation feature in config.option file and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce allow the loading of multiple option sections at once via
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson ``--with-option=<section1>,<section2>,...''
9ffd207c48e20881634d91210885c0a177124ca9Andreas Gustafsson [Ralf S. Engelschall]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Rebuilt CVS repository with Apache 1.3.9 as basis. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache MPM
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Use asynchronous AcceptEx() and a completion port to accept and
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson dispatch connections to threads in Windows NT/2000.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Implement WINNT Win32 MPM from original Win32 code in http_main.c
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Implement the APACI --with-option facility
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (per default used the config.option file).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) MPM BEOS port. [David Reid <abb37@dial.pipex.com>]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Start to implement module-defined hooks that are a) fast and b) typesafe.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson Replace pre_connection module call with a register_hook call and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce implement pre_connection as a hook. The intent is that these hooks will
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce be extended to allow Apache to be multi-protocol, and also to allow the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce calling order to be specified on a per-hook/per-module basis.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Implement mpm_* methods as "modules". Each method gets its own
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce subdir in src/modules (eg: src/modules/prefork). Selection
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of method uses Rule MPM_METHOD. [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Port the hybrid server from the apache-apr repository as
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mpm_mpmt_pthread. [Manoj Kasichainula]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) os/unix/unixd.[ch]: detach, setuid, setgid, stuff which will be common
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson amongst the unix MPMs.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mpm_prefork: throw away all the alarm/timeout crud; and clean up the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce signal handling for the new world order. [Dean Gaudet]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Crude ap_thread_mutex abstraction so that we get the pthread stuff out
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of alloc.c for now. [Dean Gaudet]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Handle partial large writes correctly. [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Eliminate conn_rec's pointer to server. All it knows is the base server
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce based on IP/port. [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Port a bunch of modules to the new module structure.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ["Michael H. Voase" <mvoase@midcoast.com.au>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) I/O layering and BUFF revamp. See docs/buff.txt. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Basic restructuring to introduce the MPM concept; includes various
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce changes to the module API... better described by
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache pthreads
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) New buff option added: BO_TIMEOUT. It describes the timeout for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce buff operations (generally over a network).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet, Ryan Bloom, Manoj Kasichainula]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Created http_accept abstraction. Added 4 new functions (not exported):
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson init_accept(), begin_accepting_requests(), get_request(),
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson stop_accepting_requests() [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix to ap_rprintf call that allows mod_info to work properly.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [James Morris <jmorris@intercode.com.au>]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) user and ap_auth_type fields were moved from connection_rec to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce request_rec. [Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Removed the ap_block_alarms and ap_unblock_alarm calls. These aren't
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce needed in a threaded server.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Initial pthread implementation from from Dean's apache-nspr code.
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson [Bill Stoddard, Ryan Bloom]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.3.9
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove bogus error message when a redirect doesn't set Location.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Instead, use an empty string to avoid coredump if the error message
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce was supposed to include a location. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Don't allow configure to include mod_auth_digest unless it is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce explicitly requested, even if the user asked for all modules.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Translate module names to dll names for OS/2 so that they are no more
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson than 8 characters long and have an extension of "dll" instead of "so".
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Havard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Print out pointer to Rule DEV_RANDOM when truerand lib not found.
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson Fix test-compile check to check for randbyte instead of trand32.
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson Use ap_base64encode_binary/decode instead of copy in mod_auth_digest.c
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson and tweak to make Amaya happier. [Ronald Tschal�r]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) Ensure that the installed expat include files are world readable,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce just like the other header files. [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed generated AddModule adjustments in APACI's `configure' script
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in order to allow (new) modules like mod_vhost_alias to be handled
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson correctly (which was touched by the adjustments for mod_alias).
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) For binary builds, add -R flag to apachectl to work around the lack of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce an absolute path to the ./libexec directory where the libhttp.ep file
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson is needed for SHARED_CORE architectures. [Randy Terbush]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Create the CGI script process as DETACHED. This may solve the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce problem observed by some Win95/98 users where they get CGI script
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce output sent to the console. [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix (re)naming in the uuencode/decode section. The ap/ap_
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce routines are now called ap_base64* and are 'plain' (i.e., no
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson pool access or anything clever). Inside util.c the routines acting
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson like pstrdup are called ap_pbase64encode() and ap_pbase64decode().
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson The oddly named ap_uuencode(), ap_uudecode() are kept around for
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson now but deprecated. [dirkx]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Clean up the base64 and SHA1 additions and make sure they are
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson represented in the ApacheCore.def, ApacheCoreOS2.def, and httpd.exp
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson files. [Roy Fielding]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) WIN32: Migrate to InstallShield 5.5 and provide a bit more error
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson checking. Allow compiling on VS 6.0. [Randy Terbush]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) Fixed assumption of absolute paths in binbuild.sh. [Tony Finch]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) Use TestCompile to search for the truerand library (rather than blindly
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson assuming its existence). If it is not found, complain (but do not
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson exit - yet). [Martin Kraemer]
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson *) We forgot to add the new exported function names to
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson src/support/httpd.exp. [Bill Stoddard, Randy Terbush]
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson *) Add description of -T command-line option to usage().
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson [Ralf S. Engelschall]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) For "some" platforms (notably, EBCDIC based ones), libos needs to be
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson searched only AFTER libap has been searched, because libap needs
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson some symbols from libos. [Martin Kraemer]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Fix conflict with original mod_digest related to the symbol of the
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson module dispatch list (which has to be unique for DSO and follow the
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson usual conventions for the installation procedure).
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson [Ralf S. Engelschall]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Add a dbm-library check for the "usual places" (-ldbm, -lndbm, -ldb)
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson for other platforms as well. [Martin Kraemer]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Make ap_sha1.c compile for EBCDIC platforms: replace remaining LONG
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson types by AP_LONG and replace reference to renamed variable 'ubuf'
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson by 'buffer'. [Martin Kraemer]
78d65c654251b02c41628914986723cbec93a7a1Andreas GustafssonChanges with Apache 1.3.8 [not released]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Flush the output buffer immediately after sending an error or redirect
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson response, since the result may be needed by the client to abort a
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson long data transfer or restart a series of pipelined requests.
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson [Tom Vaughan <tvaughan@aventail.com>, Roy Fielding]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) PORT: Improved compilation and DSO support on Sequent DYNIX/ptx.
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson [Ian Turner <iant@sequent.com>] PR#4735
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) Local struct mmap in http_core.c conflicted with system structure
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson name on DYNIX -- changed to mmap_rec. [Roy Fielding] PR#4735
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added updated mod_digest as modules/experimental/mod_auth_digest.
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson [Ronald Tschal�r <ronald@innovation.ch>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a memory leak where the module counts were getting messed
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce up across restarts. [David Harris <dharris@drh.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) CIDR addresses such as a.b.c.d/24 where d != 0 weren't handled
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson properly in mod_access.
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson ["Paul J. Reder" <rederpj@raleigh.ibm.com>] PR#4770
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) RewriteLock/RewriteMap didn't work properly with virtual hosts.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Dmitry Khrustalev <dima@bog.msu.su>] PR#3874
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) PORT: Support for compaq/tandem/com.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Michael Ottati <michael.ottati@compaq.com>, dirkx]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added SHA1 password encryption support to easy migration from
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson Netscape servers. See support/SHA1 for more information.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Caused the separation of ap_md5.c into md5, sha1 and a general
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ap_checkpass.c with just a validate_passwd routine. Added a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce couple of flags to support/htpasswd. Some reuse of the to64()
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson function; hence renamed to ap_to64().
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dirk-Willem van Gulik, Clinton Wong <clintdw@netcom.com>]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Change for EBCDIC platforms (TPF and BS2000) to correctly deal
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson with ASCII/EBCDIC conversions in "ident" query.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [David McCreedy <McCreedy@us.ibm.com>]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Get rid of redefinition warning on MAC_OS_X_SERVER platform.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson Change "Power Macintosh" to Power* so if uname prints "Power Book"
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson we're still happy on Rhapsody platforms. [Wilfredo Sanchez]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix SIGSEGV on some systems because the Vary fix below included
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson a call to table_do with a variable argument list that was not
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce NULL terminated. Replaced with better implementation. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.3.7 [not released]
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson *) The "Vary" response header field is now sanitised right before
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson the header is sent back to the client. Multiple "Vary" fields
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson are combined, and duplicate tokens (e.g., "Vary: host, host" or
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson "Vary: host, negotiate, host, accept-language") are reduced to
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson single instances. This is a better solution than the force-no-vary
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce one (which is still valid for clients that can't cope with Vary
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson at all). PR#3118 [Dean Gaudet, Roy Fielding, Ken Coar]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Portability changes for BeOS. [David Reid abb37@dial.pipex.com]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Link DSO's with "gcc -shared" instead of "ld -Bshareable" at
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce least on Linux and FreeBSD for now.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Rasmus Lerdorf]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Win32: More apache -k restart work. Restarts are now honored
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce immediately and connections in the listen queue are -not- lost.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This is made possible by the use of the WSADuplicateSocket()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce call. The listeners are opened in the parent, duplicated, then
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the duplicates are passed to the child. The original listen sockets
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce are not closed by the parent across a restart, thus the listen queue
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is preserved.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Bill Stoddard <stoddard@raleigh.ibm.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix handling of case when a client has sent "Expect: 100-continue"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and we are going to respond with an error, but get stuck waiting to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce discard the body in the pointless hope of preserving the connection.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Roy Fielding, Joe Orton <jeo101@york.ac.uk>] PR#4499, PR#3806
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix 'configure' to work correctly with SysV-based versions of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce 'tr' (consistent with Configure's use as well). [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) apxs: Add "-S var=val" option which allows for override of CFG_*
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce built-in values. Add "-e" option which works like -i but doesn't
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson install the DSO; useful for editing httpd.conf with apxs. Fix
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson editing code so that multiple invocations of apxs -a will not
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson create duplicate LoadModule/AddModule entries; apxs can now be
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson used to re- enable/disable a module. [Wilfredo Sanchez]
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson *) Win32: Update the server to use Winsock 2. Specifically, link with
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson ws2_32.lib rather than wsock32.lib. This gives us access to
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson WSADuplcateSocket() in addition to some other enhanced comm APIs.
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson Win 95 users may need to update their TCP/IP stack to pick up
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson Winsock 2. (See http://www.microsoft.com/windows95/downloads/)
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson [Bill Stoddard stoddard@raleigh.ibm.com]
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson *) Win32: Redirect CGI script stderr (script debug info) into the
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson error.log when CGI scripts fail. This makes Apache on Win32
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson behave more like Unix.
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson [Bill Stoddard stoddard@raleigh.ibm.com]
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson *) Fixed `httpd' usage display: -D was missing.
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson [Ralf S. Engelschall] PR#4614
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Fix `make r' test procedure in src/regex/: ap_isprint was not found.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Ralf S. Engelschall] PR#4561, PR#4562
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) OS/2: Fix problem with accept lock semaphores where server would die with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce "OS2SEM: Error 105 getting accept lock. Exiting!"
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Brian Havard] PR#4505
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add DSO support for DGUX 4.x using gcc. Tested on x86 platforms.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Randy Terbush <randy@covalent.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add the new mass-vhost module (mod_vhost_alias.c) developed and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce used by Demon Internet, Ltd. [Tony Finch <fanf@demon.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Better GCC detection for DSO flags under Solaris 2 where the `cc'
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson command potentially _is_ GCC. [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix apxs build issues on AIX
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Rasmus Lerdorf <rasmus@raleigh.ibm.com>]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) DocumentRoot Checking: Under previous versions, when Apache
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson first started up, it used to do a stat of each DocumentRoot to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce see if it existed and was a directory. If not, then an error
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson message was printed. THIS HAS BEEN DISABLED. If DocumentRoot
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson does not exist, you will get error messages in error_log. If
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson the '-t' command line option is used (to check the configuration)
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson the check of DocumentRoot IS performed. An additional command
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson line option, '-T', has been added if you want to avoid the
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson DocumentRoot check even when checking the configuration.
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson [Jim Jagielski]
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson *) Win32: The query switch "apache -S" didn't exit after showing the
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson vhost settings. That was inconsistent with the other query functions.
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson [Bill Stoddard - Fixed by Martin on Unix in 1.3.4]
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson *) Win32: Changed behaviour of apache -k restart.
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson Previously, the server would drain all connections in the stack's
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson listen queue before honoring the restart. On a busy server, this
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson could take hours. Now, a restart is honored almost immediately.
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson All connections in Apache's queues are handled but connections in
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson the stack's listen queue are discarded. Restart triggered by
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson MaxRequestPerChild is unchanged.
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson [Bill Stoddard <stoddard@raleigh.ibm.com>]
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson *) Win32: Eliminated unnecessary call to wait_for_multiple_objects in
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson the accept loop. Good for a 5% performance boost. Cleaned up
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson parent/child process management code.
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson [Bill Stoddard <stoddard@raleigh.ibm.com>]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Added ceiling on file size for memory mapped files.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [John Giannandrea <jg@meer.net>] PR#4122
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson *) Fix ndbm.h include problems with brain-dead glibc >= 2.1 which
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson has ndbm.h in a non-standard db1/ subdir. PR#4431, PR#4528
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Henri Gomez <gomez@slib.fr>, Ralf S. Engelschall]
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson *) Determine AP_BYTE_ORDER for ap_config_auto.h and already
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson use this at least for Expat. [Ralf S. Engelschall]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Allow .module files to specify libraries with Lib:.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Allow SetEnvIf[NoCase] to test environment variables as well
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson as header fields and request attributes. [Ken Coar]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Fix mod_autoindex's handling of ScanHTMLTitles when file
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson content-types are "text/html;parameters". PR#4524 [Ken Coar]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Remove "mxb" support from mod_negotiation -- it was a draft feature
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson never accepted into any standard, and it opens up certain DoS
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson attacks. [Koen Holtman <Koen.Holtman@cern.ch>]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) TestCompile updated. We can now run programs and output the
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson results during the Configure process. [ Jim Jagielski]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) The source is now quad (long long) aware as needed. Specifically,
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson the Configure process determines the correct size of off_t and
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *void. When the OS/platform/compiler supports quads, ap_snprintf()
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson provides for the 'q' format qualifier (if quads are not available,
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson 'q' is silently "demoted" to long). [Jim Jagielski]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) When the username or password fed to htpasswd is too long, include the
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson size limit in the error message. Also report illegal characters
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson (currently only ':') in the username. Add the size restrictions
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson to the man page. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed the configure --without-support option so it doesn't result in
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson an infinite loop. [Marc Slemko]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Piped error logs could cause a segfault if an error occured
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce during configuration after a restart.
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson [Aidan Cully <aidan@panix.com>] PR#4456
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson *) If a "Location" field was stored in r->err_headers_out rather
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce than r->headers_out, redirect processing wouldn't find it and
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson the server would core dump on ap_escape_html(NULL). Check both
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson tables and raise HTTP_INTERNAL_SERVER_ERROR with a log message
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson if Location isn't set. [Doug MacEachern, Ken Coar]
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson *) Add RULE_EXPAT, the src/lib/ directory structure, and a modified copy
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson of the Expat 1.0.2 distribution. [Greg Stein]
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson *) Replace regexec() calls with calls to a new API stub function
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson ap_regexec(). This solves problems with DSO modules which use the regex
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson library. [Jens-Uwe Mager <jum@helios.de>, Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add 'Request_Protocol' special keyword to mod_setenvif so that
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce environment variables can be set according to the protocol version
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (e.g., HTTP/0.9 or HTTP/1.1) of the request. [Ken Coar]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Add DSO support for OpenStep (Mach 4.2) platform.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall, Rex Dieter <rdieter@math.unl.edu>] PR#3997
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson *) Fix sed regex for generating ap_config_auto.h in src/Configure.
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson [Jan Gallo <gallo@pvt.sk>] PR#3690, PR#4373
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Switch to /bin/sh5 in APACI on Ultrix and friends to avoid problems with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce their brain-dead /bin/sh. [Ralf S. Engelschall] PR#4372
e250148432865805a3d2fd0029c02af8a67ff266Andreas Gustafsson *) Better DSO flags recognition on NetBSD platforms using ELF.
e250148432865805a3d2fd0029c02af8a67ff266Andreas Gustafsson [Todd Vierling <tv@pobox.com>] PR#4310
e250148432865805a3d2fd0029c02af8a67ff266Andreas Gustafsson *) Always log months in english format for %t in mod_log_config.
e250148432865805a3d2fd0029c02af8a67ff266Andreas Gustafsson [Petr Lampa <lampa@fee.vutbr.cz>] PR#4366, 679
e250148432865805a3d2fd0029c02af8a67ff266Andreas Gustafsson *) Support for server-parsed and multiview-determined ReadmeName and
e250148432865805a3d2fd0029c02af8a67ff266Andreas Gustafsson HeaderName files in mod_autoindex. Removed the restriction on
e250148432865805a3d2fd0029c02af8a67ff266Andreas Gustafsson "/"s in ReadmeName and HeaderName directives since the *sub_req*
e250148432865805a3d2fd0029c02af8a67ff266Andreas Gustafsson routines will deal with the access issues. (It's now possible to
e250148432865805a3d2fd0029c02af8a67ff266Andreas Gustafsson have {site|group|project|customer|...} wide readmes and headers.)
e250148432865805a3d2fd0029c02af8a67ff266Andreas Gustafsson [Raymond S Brand <rsbx@rsbx.net>, Ken Coar] PR#1574, 3026, 3529,
e250148432865805a3d2fd0029c02af8a67ff266Andreas Gustafsson *) When stat() fails, don't assume anything about the contents of
e250148432865805a3d2fd0029c02af8a67ff266Andreas Gustafsson the struct stat. [Ed Korthof <ed@bitmechanic.com>]
e250148432865805a3d2fd0029c02af8a67ff266Andreas Gustafsson *) It's OK for a semop to return EINTR, just loop around and try
e250148432865805a3d2fd0029c02af8a67ff266Andreas Gustafsson again. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix configuration engine re-entrant hangups, which solve a
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson handful of problems seen with mod_perl <Perl> configuration sections
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Salvador Ortiz Garcia <sog@msg.com.mx>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Mac OS and Mac OS X Server now use the appropriate custom layout
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce by default when building with APACI; allow for platform-specific
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce variable defaults in configure. [Wilfredo Sanchez]
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson *) Do setgid() before initgroups() in http_main; some platforms
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce zap the grouplist when setgid() is called. This was fixed in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce suexec earlier, but the main httpd code missed the change.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Rob Saccoccio <robs@InfiniteTechnology.com>] PR#2579
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) Add recognition of .tgz as a gzipped tarchive.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Bertrand de Singly <bertrand.de-singly@polytechnique.fr>] PR#2364
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_include's fsize/flastmod should allow only relative paths, just
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce like "include file". [Jaroslav Benkovsky <benkovsk@pha.pvt.cz>]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) OS/2: Add support for building loadable modules using DLLs.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Brian Havard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add iconsdir, htdocsdir, and cgidir to config.layout.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Wilfredo Sanchez]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix minor but annoying bug with the test for Configuration.tmpl
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce being newer than Configuration so that it is less likely to fail
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce when using APACI and shadow sources. [Wilfredo Sanchez]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) PORT: Add initial support for Mac OS (versions 10.0 and
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson greater). Use Mac OS X Server layout for now. Clean up dyld code
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in unix/os.c, and don't install the dyld error handlers, which
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce are no longer needed in Mac OS. [Wilfredo Sanchez]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Rename Rhapsody layout to "Mac OS X Server". Change install
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson locations to appropriate ones for user-built (as opposed to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce system) installs. [Wilfredo Sanchez]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Modify mod_autoindex's handling of AddDescription so that the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce behaviour matches the documentation. [Ken Coar] PR#1898, 3072.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add functionality to the install-bindist.sh script created by
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce binbuild.sh to use tar when copying distribution files to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce serverroot. This allows upgrading an existing installation
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson without nesting the new distribution in the old.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce install-bindist.sh now detects the local perl5 path to install
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce apxs and dbmmanage with proper path to perl interpreter.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson Add an install-binsupport target which copies the source files
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson for apxs and dbmmanage to bindist to allow these scripts to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce be properly installed relative to the destination serverroot.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Randy Terbush, Covalent Technologies, randy@covalent.net]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix intermittent SEGV in ap_proxy_cache_error() in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce src/modules/proxy_util.c where a NULL filepointer and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce temporary filename were closed and unlinked.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Graham Leggett <minfrin@sharp.fm>,
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson Tim Costello <tjcostel@socs.uts.edu.au>] PR#3178
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Fix inconsistent error messages reported by mod_proxy.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Graham Leggett <minfrin@sharp.fm>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) OS/2: Fix terminating CGIs that aren't compiled by EMX GCC when a
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson connection is aborted. [Brian Havard]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Force the LANG envariable to the known state of "C" so that we
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson have assurance about how string manipulators (e.g., tr) will
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce function. [Ken Coar] PR#1630
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a directive to allow customising of the tracking cookie name.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Ken Coar] PR#2921, 4303
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add "force-no-vary" envariable to allow servers to work around
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson clients that choke on "Vary" fields in the response header.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ken Coar, Dmitry Khrustalev <dima@zippy.machaon.ru>] PR#4118
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed a bug in mod_dir that causes a child process will infinitely
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce recurse when it attemps to handle a request for a directory wnd the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce value of the DirectoryIndex directive is a single dot. Also likely
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to happen for anyother values of DirectoryIndex that will map back
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to the same directory. The handler now only considers regular files
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as being index candidates. No PR#s found.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Raymond S Brand <rsbx@rsbx.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Ease configuration debugging by making TestCompile fall back to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce using "make" if the $MAKE variable is unset [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed the ServerSignature directive to work as documented.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Raymond S Brand <rsbx@rsbx.net>] PR#4248
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add "opt" (SysV-style) layout to config.layout. [Raymond S Brand
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce <rsbx@rsbx.net>]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Add APACI --without-execstrip option which can be used to disable the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce stripping of executables on installation. This is very important for DSO
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson and debugging situations. [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add support for OS/2 (case insenstive filesystem, .exe suffix, etc)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to APACI files and related scripts.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Yitzchak Scott-Thoennes <sthoenna@efn.org>, Ralf S. Engelschall] PR#4269
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add support for standalone mode in TPF
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson [Joe Moenich <moenich@us.ibm.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix number of bytes copied by read_connection() in src/support/ab.c
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Jim Cox <jc@superlink.net>] PR#4271
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix special RewriteCond "-s" pattern matching.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bob Finch <bob@nas.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix value quoting in src/Configure script for ap_config_auto.h
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Paul Sutton <paul@awe.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make sure RewriteLock can be used only in the global context, (i.e.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce outside of any <VirtualHost> sections) because it's a global facility of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the rewrite engine. [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the ownership delegation for proxy directory under `make install'.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) APACI would not correctly build suexec. [Maria Verina
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce <mariav@icgeb.trieste.it>] PR#4260
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_mime_magic passed only the first 4k of a file to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce uncompress/gzip, but those tools sometimes do not produce
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce any output unless a sufficient portion of the compressed
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce file is input. Change to pass the entire file -- but
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce only read 4k of output.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Marcin Cieslak <saper@system.pl>] PR#4097
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) "IndexOptions None" generated extra spaces at the end of each
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce line. [inkling@firstnethou.com] PR#3770
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The "100 Continue" response wasn't being sent after internal
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce redirects. [Jose KAHAN <kahan@w3.org>] PR#3910, 3806, 3575
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) When padding the name with spaces for display, mod_autoindex would
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce count &, <, and > in their escaped width, messing up the display.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#4075, 3758
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: fixed a compilation problem on NEXT.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jacques Distler <distler@golem.ph.utexas.edu>] PR#4130
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) r->request_time wasn't being set properly in certain error conditions.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#4156
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: deal with UTS compiler error in http_protocol.c
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dave Dykstra <dwd@bell-labs.com>] PR#4189
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add ap_vrprintf() function. [John Tobey <jtobey@banta-im.com>] PR#4246
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the mod_mime hash table to work properly with locales other
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson than C. [Dean Gaudet] PR#3427
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a memory leak which is exacerbated by certain configurations.
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson [Dean Gaudet] PR#4225
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Prevent clobbering saved IFS values in APACI. [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix buffer overflows in ap_uuencode and ap_uudecode pointed out
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce by "Peter 'Luna' Altberg <peter@altberg.nu>" and PR#3422
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Peter 'Luna' Altberg <peter@altberg.nu>, Ronald Tschal�r]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make {Set,Unset,Pass}Env per-directory instead of per-server.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ben Laurie]
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson *) Correct an apparent typo: on the Windows and MPE platforms, the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce htpasswd utility was limiting passwords to only 8 characters.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) EBCDIC platforms: David submitted patches for two bugs in the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce MD5 digest port for EBCDIC machines:
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson a) the htdigest utility overwrote the old contents of the digest file
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson b) the Content-MD5 header value (ContentDigest directive) was wrong
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson when the returned file was not converted from EBCDIC, but was a
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson binary (e.g., image file) in the first place.
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson [David McCreedy <mccreedy@us.ibm.com>]
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson *) support/htpasswd now permits the password to be specified on the
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson command line with the '-b' switch. This is useful when passwords
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson need to be maintained by scripts -- particularly in the Win32
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson environment. [Ken Coar]
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson *) Win32: Win32 multiple services patch. Added capability to install and
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson run multiple copies of apache as individual services.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce apache -n apache1 -i -f c:/httpd.conf
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Installs apache as service 'apache1' and associates c:/httpd.conf
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson with that service.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce net start apache1
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Starts apache1 service.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce net stop apache1
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Stops apache1 service
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce apache -n apache2 -i
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson Installs apache as service 'apache2'. httpd.conf is located under
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson the default server root (/apache/conf/httpd.conf).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce net start apache2
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Starts apache2 service.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce apache -n apache3 -i -d c:/program files/apache
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Install apache as service 'apache3' and sets server root to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce apache -n apache2 -k restart
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Restart apache2 service
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Keith Wannamaker, Ken Parzygnat, Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Correct the signed/unsigned character handling for the MD5 routines;
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mismatches were causing compilation problems with gcc -pedantic and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in the TPF cross-compilation. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) OS/2: Rework CGI handling to use spawn*() instead of fork/exec, achieving
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a roughly 5 fold speed up. [Brian Havard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) proxy ftp: instead of using the hardwired string "text/plain" as
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a fallback type for files served by the ftp proxy, use the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ap_default_type() function to determine the configured type.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This allows for special configurations like
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce <Directory proxy:ftp://some.host>
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce </Directory>
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Additionally, add the Content-Encoding: header to FTP proxy replies
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce when the encoding is defined (by the AddEncoding directive).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Because it was missing, it was almost impossible to browse compressed
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce files using the FTP proxy (works now perfectly in Communicator).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce The ftp proxy now also returns the Date: and Server: header lines (if not
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce much else... This code is "somewhat" broken) like normal requests do.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Be more smart in APACI's configure script when determining the UID/GID
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for User/Group directives and use the determined UID/GID to initialize
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the permissions on the proxycachedir.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dirk-Willem van Gulik, Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Changed the forking-prior-to-cleanup in the proxy module to first
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce check wether it actually needs to collect garbage. This reduces
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the number of fork()s from one/request to just the odd one an hour.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dirk-Willem van Gulik]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added proxy, auth and header support to src/support/ab.c. Added a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce README file to src/support/
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dirk-Willem van Gulik]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Don't hard-code the path to AWK in --shadow bootstrapping Makefile.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#4050
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add support for DSO module compilation on BSD/OS 3.x.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Randy Terbush, Covalent Technologies]
8e245ec21beee31a780de9b89ba1e8bb2b9f4c9aAndreas Gustafsson *) Fix sed-substitutions in `make install': path elements like `httpd/conf'
8e245ec21beee31a780de9b89ba1e8bb2b9f4c9aAndreas Gustafsson (for instance from an APACI configure --sysconfdir=/etc/httpd/conf
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson option) were substituted with $(TARGET).conf, etc. Same for other strings
8e245ec21beee31a780de9b89ba1e8bb2b9f4c9aAndreas Gustafsson with dots where the dot wasn't matched as plain text.
8e245ec21beee31a780de9b89ba1e8bb2b9f4c9aAndreas Gustafsson [Ralf S. Engelschall]
8e245ec21beee31a780de9b89ba1e8bb2b9f4c9aAndreas Gustafsson *) PORT: Add support for FreeBSD 4.x [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix verbose output of APACI configure (option -v)
8e245ec21beee31a780de9b89ba1e8bb2b9f4c9aAndreas Gustafsson [Martin Kraemer, Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.3.6
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Removed new PassAllEnv code due to DSO problems. [Lars Eilebrecht]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.3.5 [not released]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) M_INVALID needed a value within the scope of METHODS so that unknown
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce methods can be access controlled. [Roy Fielding] PR#3821
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added PassAllEnv; makes server's entire environment available
4e243fdc6b33a6371208b48d64912d8e327b4f5cAndreas Gustafsson to CGIs and SSIs executed within directive's scope. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) ap_uuencode() always added two trailing '='s and encoding of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce 8 bit characters on a machine with signed char may produced
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce incorrect results. Additionally ap_uuencode() should now
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce work correctly on EBCDIC platforms.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ronald Tschal�r <ronald@innovation.ch>] PR#3411
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Binary installer now runs the configuration DLL before
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the reboot prompt (which is only given if MSVCRT.DLL system
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce DLL is new or updated). This should avoid the configuration
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directory being empty after installation. [Paul Sutton]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR#3767, 3800, 3827, 3850, 3900, 3953, 3988
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Binary installer now creates Start menu options to start
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and stop Apache as a console application and to uninstall
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the Apache service on NT. [Paul Sutton] PR#3741
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Apache.exe now contains an icon. [Paul Sutton]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Switch back to using fcntl() locking on Linux -- instabilities
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce have been reported with flock() locking (probably related to kernel
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce version). [Dean Gaudet] PR#2723, 3531
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Using APACI, the main config file (usually httpd.conf) was
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce not being adjusted as $(TARGET).conf. [Wilfredo Sanchez
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce <wsanchez@apple.com>]
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson *) PORT: AIX does not require the SHARED_CODE "hack"
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson [Ryan Bloom <rbb@raleigh.ibm.com>]
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson *) Set-Cookie headers were being doubled up for some CGIs by the O(n^2)
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson avoidance code added in 1.3.3.
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson [Dean Gaudet, Jeff Lewis <lewis@stanford.edu>] PR#3872
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson *) ap_isxdigit was somehow neglected when adding the ap_isfoo() macros
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson for 8-bit safeness. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Use -fPIC instead of -fpic on Solaris and SunOS for compiling DSOs
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce because SPARCs have a small machine-specific maximum size for the Global
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Offset Table which is often exceeded when compiling one of the larger
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce third-party modules with Apache. [Peter Urban <Peter.Urban@epfl.ch>] PR#3977
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Move the directive `ExtendedStatus' in httpd.conf-dist-win _after_ the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce DSO/DLL section because it's a directive from mod_status and isn't
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce available before the DLL of mod_status is loaded.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin POESCHL <mpoeschl@gmx.net>] PR#3936
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY: Fix a bug in the calculation of the buffer size for the line
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce continuation facility in Apache's configuration files which could
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce lead to a buffer overflow situation.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Thomas Devanneaux <Thomas.Devanneaux@enst.fr>] PR#3617
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make documentation and error messages of APACI's --activate-module=FILE
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce option more clear. [Jan Wolter <janc@wwnet.net>] PR#3995
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the gcc version check (for enabling the `inline' facility) to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce really support all future gcc versions >= 2.7 until we know more.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [John Tobey <jtobey@banta-im.com>] PR#3983
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Let APACI's configure script correctly complain for unknown --enable-XXX
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and --disable-XXX options. [Ralf S. Engelschall] PR#3958
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Link the shared core bootstrap program (``Rule SHARED_CORE=yes'') also
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce against libap.a and use its ap_snprintf() instead of sprintf() to avoid
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce possible buffer overflows. [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove no longer used non-API function ap_single_module_init().
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add Apple's Mac OS X Server Layout "Rhapsody" to config.layout.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Wilfredo Sanchez]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add cgidir, htdocsdir, iconsdir variables to Makefile.tmpl in order
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to make platform installations easier. [Wilfredo Sanchez]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) In configure, do not append the target name to the directory path if
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the path already contains "apache". [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SIGPIPE is now ignored by the server core. The request write routines
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (ap_rputc, ap_rputs, ap_rvputs, ap_rwrite, ap_rprintf, ap_rflush) now
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce correctly check for output errors and mark the connection as aborted.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Replaced many direct (unchecked) calls to ap_b* routines with the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce analogous ap_r* calls. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Enhanced mod_rewrite's mapfile handling: The in-core cache for text and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce DBM format mapfiles now uses a 4-way hash table with LRU functionality.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Furthermore map lookups for non-existent keys are now cached as well.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Additionally "txt" maps are now parsed with simple string functions
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce instead of using ap_pregcomp(). As a side effect a bug that prevented
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the usage of keys containing the "," character was fixed.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce The changes drastically improve the performance when large rewrite maps
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Michael van Elst <mlelstv@serpens.swb.de>, Lars Eilebrecht] PR#3160
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added ap_sub_req_method_uri() for doing a subrequest with a method
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce other than GET, and const'd the definition of method in request_rec.
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) Use proper pid_t type for saving PIDs in alloc.c. [John Bley]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Replaced use of WIN32 define with HAVE_DRIVE_LETTERS to indicate
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce when the OS allows a DOS drive letter within pathnames. [Brian Havard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add %V to mod_log_config, this logs the hostname according to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce UseCanonicalName setting (this is the pre-1.3.4 behaviour of
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson %v). Useful for mass vhosting. [Tony Finch <dot@dotat.at>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add support for \n and \t to mod_log_config, can be used to produce
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce more reliable logs with multiline entries. [Tony Finch <dot@dotat.at>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed a few compiler nits. [John Bley <jbb6@acpub.duke.edu>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added informative error messages for failed munmap() and fseek() calls
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in http_core.c. [John Bley, Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added some informative error messages for some failed malloc()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce calls. [John Bley <jbb6@acpub.duke.edu>, Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) OS/2 ap_os_canonical_filename()'s behaviour is improved: ap_assert()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is removed. This allows <Directory proxy:*> directives to work and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce prevents invalid requests from killing the process.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Havard <brianh@kheldar.apana.org.au>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Reorganised FAQ document.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Joshua Slive <slive@finance.commerce.ubc.ca>] PR#2497
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) src/support/: The ApacheBench benchmark program was overhauled by
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce David N. Welton: you can now have it generate an HTML TABLE, presumably
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for integration into other HTML sources. David updated the ab man page
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as well and added some missing descriptions. Thanks!
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [David N. Welton <davidw@prosa.it>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: The filename validity checker now allows filenames containing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce characters in the range 0x80 to 0xff (for example accented characters).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Paul Sutton] PR#3890
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added conditional logging based upon environment variables to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_log_config. mod_log_referer and mod_log_agent
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce are now deprecated. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow apache acting as a proxy server to relay the real
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce reason of a failure to a client rather than the "internal
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce server error" it does currently. The general exposure mechanism
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce can be triggered by any module by setting the "verbose-error-to"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce note to "*"; this allows more than just proxy errors to be exposed.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Cliff Skolnick, Roy Fielding, Martin Kraemer] Related to PR#3455, 4086
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Moved man pages for ab and apachectrl to section 8.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Wilfredo Sanchez, Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added -S option to install.sh so that options can be passed to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce strip on some platforms. [Ralf S. Engelschall, Wilfredo Sanchez]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Tweak modules Makefile generated by Configure so that it handles
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the test case of no modules being selected. [chaz@reliant.com]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added a <LimitExcept method ...> sectioning directive that allows
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the user to assign authentication control to any HTTP method that
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is *not* given in the argument list; i.e., the logical negation
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of the <Limit> directive. This is particularly useful for controlling
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce access on methods unknown to the Apache core, but perhaps known by
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce some module or CGI script. [Roy Fielding, Tony Finch]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Prevent apachectl from complaining if the PIDFILE exists but
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce does not contain a process id, as might occur if the server is
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson being rapidly restarted. [Wilfredo Sanchez]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: Add global symbols missing from ApacheCore.def. [Carl Olsen]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Entity tag comparisons for If-Match and If-None-Match were not being
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce performed correctly -- weak tags might cause false positives. Also,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce strong comparison wasn't properly enforced in all cases.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Roy Fielding, Ken Coar, Dean Gaudet] PR#2065, 3657
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) OS/2: Supply OS/2 error code instead of errno on semaphore errors.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Havard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Work around a bug in Lynx regarding its sending "Negotiate: trans"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce even though it doesn't understand TCN. [Koen Holtman, Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added ap_size_list_item(), ap_get_list_item(), and ap_find_list_item()
b9c96971964d87c2705c8dc29300ff8103479ee6Andreas Gustafsson to util.c for parsing an HTTP header field value to extract the next
b9c96971964d87c2705c8dc29300ff8103479ee6Andreas Gustafsson list item, taking into account the possible presence of nested comments,
b9c96971964d87c2705c8dc29300ff8103479ee6Andreas Gustafsson quoted-pairs, and quoted-strings. ap_get_list_item() also removes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce insignificant whitespace and lowercases non-quoted tokens.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Roy Fielding] PR#2065
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) proxy: The various calls to ap_proxyerror() can return HTTP/1.1 status
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce code different from 500. This allows the proxy to, e.g., return
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce "403 Forbidden" for ProxyBlock'ed URL's. [Martin Kraemer] Related to PR#3455
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson *) Fix ordering of language variants for the case where the traditional
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce negotiation algorithm is being used with multiple language variants
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and no Accept-Language. [James Treacy <treacy@debian.org>] PR#3299, 3688
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Do not round the TCN quality calculation to 5 decimal places,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce unlike RFC 2296, because the calculation might need 12 decimal places
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to get the right result. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove unused code to disable transparent negotiation when
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce negotiating on encoding only, as we now handle encoding too
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (though this is nonstandard for TCN), remove charset=ISO-8859-1
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce fiddle from the fiddle-averse RVSA comparison, and fix bugs in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce some debugging statements within mod_negotiation. [Koen Holtman]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed a rare memory corruption possibility in mod_dir if the index
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson file is negotiable and no acceptable variant can be found.
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson [Dean Gaudet, Roy Fielding, Martin Kraemer]
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson *) Win32: Add new config directive, ScriptInterpreterSource, to enable
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson searching the Win32 registry for script interpreters.
6c6af6107a75ce28a0af57851dca3c87b042ab4aAndreas Gustafsson [Bill Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: The compiled-in default filename for the error log is now
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce error.log, which matches the default in the distributed httpd.conf.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Paul Sutton]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32: Any error messages from -i or -u command line options are now
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce displayed on the console output rather than sent to the error log.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Also the "Running Apache..." message is not output unless Apache is
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson going to serve requests. [Paul Sutton]
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) Rework the MD5 authentication scheme to use FreeBSD's algorithm,
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson and use a private significator ('$apr1$') to mark passwords as
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson being smashed with our own algorithm. Also abstract the password
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson checking into a new ap_validate_password() routine. [Ken Coar]
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) Win32: The filename validity checker now allows "COM" but refuses
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson access to "COM1" through "COM4". This allows filenames such
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson as "com.name" to be served. [Paul Sutton] PR#3769.
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) BS2000: Adapt to the new ufork() system call interface which will
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson make subtasking easier on the OSD/POSIX mainframe environment.
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson [Martin Kraemer]
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) Add a compatibility define for escape_uri() -> ap_escape_uri() to
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson ap_compat.h. [David White <david@persimmon.com>] PR#3725
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) Make NDBM file suffix determination for mod_rewrite more accurate, i.e.
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson use `.db' instead of `.pag' not only for FreeBSD, but also when
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson the NDBM library looks like Berkeley-DB based.
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson [Ralf S. Engelschall] PR#3773
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) Add ability to handle DES or MD5 authentication passwords.
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson [Ryan Bloom <rbb@Raleigh.IBM.Com>]
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) Fix O(n^2) memory consumption in mod_speling. [Dean Gaudet]
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) SECURITY: Avoid some buffer overflow problems when escaping
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson quoted strings. (This overflow was on the heap and we believe
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson impossible to exploit.) [Rick Perry <perry@ece.vill.edu>]
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) Let src/Configure be aware of CFLAGS options starting with plus
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson signs as it's the case for the HP/UX compiler.
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson [Doug Yatcilla <yatcilda@umdnj.edu>] PR#3681
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) Remove the hard-wire of TAR=tar (we now check for gtar and gnutar first)
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson and check to see if the tar we wind up with supports '-h'.
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson [Jim Jagielski] PR#3671
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) A consistent and conservative style for all shell scripts has been
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson implemented. Basically, all shell string tests use the traditional
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson hack of 'if [ "x$var" != "x" ]' or 'if [ "x$var" = "xstring" ]'
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson to protect against bare null variable strings (ie: wrapping both
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson sides with double quotes and prepending 'x'). 'x' was chosen
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson because it's more universal and hopefully easier for old shell
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson prgrammers, as well as being easier to search for in 'vi' (/x\$) :)
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson [Jim Jagielski]
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) The status module now prints out both the main server generation as
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson well as the generation of each process. Also, the vhost info is
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson printed with '?notable'. [Jim Jagielski]
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) Move src/main/md5c.c to src/ap/ap_md5c.c; it's httpd-neutral
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson and this makes its functions available to things in src/support.
3d9b2687475344a87c377a5158c41b43a03fc443Andreas GustafssonChanges with Apache 1.3.4
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) Renamed macros status_drops_connection to ap_status_drops_connection
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson and vestigial scan_script_header to ap_scan_script_header_err,
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson mostly for aesthetic reasons. [Roy Fielding]
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) The query switch "httpd -S" didn't exit after showing the
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson vhost settings. That was inconsistent with the other query functions.
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson [Martin Kraemer]
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson *) Moved the MODULE_MAGIC_COOKIE from before the versions and
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson filename to the end of the STANDARD_MODULE_STUFF. Its
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson presence at the beginning prevented reporting of the filename
3d9b2687475344a87c377a5158c41b43a03fc443Andreas Gustafsson for modules compiled before 1 January 1999. [Ken Coar]
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson *) SECURITY: ap_os_is_filename_valid() has been added to Win32
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to detect and prevent access to special DOS device file names.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Paul Sutton, Ken Parzygnat]
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) WIN32: Created new makefiles Makefile_win32.txt (normal build)
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson and Makefile_win32_debug.txt (debug build) that work on Win95.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson Run each of the following from the src directory:
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson nmake /f Makefile_win32.txt # compiles normal build
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce nmake /f Makefile_win32.txt install # compiles and installs
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce nmake /f Makefile_win32.txt clean # removes compiled junk
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce nmake /f Makefile_win32_debug.txt # compiles debug build
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson nmake /f Makefile_win32_debug.txt install
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Roy Fielding]
fafd1d771905532e8dc3efa2ce90ce4c9e74af61Eric Luce *) Added binbuild.sh and findprg.sh helpers to make it easier for us
fafd1d771905532e8dc3efa2ce90ce4c9e74af61Eric Luce to build binary distributions. [Lars Eilebrecht]
fafd1d771905532e8dc3efa2ce90ce4c9e74af61Eric Luce *) IndexOptions SuppressColumnSorting only turned off making
fafd1d771905532e8dc3efa2ce90ce4c9e74af61Eric Luce the column headers anchors; you could still change the display
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce order by manually adding a '?N=A' or similar query string to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce URL. Now SuppressColumnSorting locks in the sort order so
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce it can't be overridden this way. [Ken Coar]
fafd1d771905532e8dc3efa2ce90ce4c9e74af61Eric Luce *) Added IndexOrderDefault directive to supply a default sort order
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for FancyIndexed directory listings. [Ken Coar] PR#1699
fafd1d771905532e8dc3efa2ce90ce4c9e74af61Eric Luce *) Change the ap_assert macro to a variant that works on all platforms.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Richard Prinz <richard.prinz@cso.net>] PR#2575
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make sure under ELF-based NetBSD (now) and OpenBSD (future) we don't
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce search for an underscore on dlsym() (as it's already the case
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for FreeBSD 3.0). [Todd Vierling <tv@pobox.com>] PR#2462
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Small fix for mod_env.html: The module was documented as to be _not_
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce compiled into Apache per default, although it _IS_ compiled into
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Apache per default. [Sim Harbert <sim@mindspring.com>] PR#3572
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Instead of fixing a bug in the generation procedure for config.status (a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce backslash was missing) we remove the bug together with it's complete
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce context because the special cases of the past can now no longer occur
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce because of the recent magic for the --with-layout default.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#3590
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make top-level Makefile aware of a parallel build procedures (make -j) by
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce making sure the src/support/ tools are _forced_ to be build last (they
fafd1d771905532e8dc3efa2ce90ce4c9e74af61Eric Luce depend on other libraries).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Markus Theissinger <markus.theissinger@gmx.de>]
fafd1d771905532e8dc3efa2ce90ce4c9e74af61Eric Luce *) Fix installation procedure: Now that os-inline.c is actually used (a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce recently fixed bug prevented this) we need to also install os-include.c
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in addition to os.h into the PREFIX/include/ location or building of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce module DSOs with APXS fails. [Ralf S. Engelschall] PR#3527
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added MODULE_MAGIC_COOKIE as the first field in a module structure to
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson allow us to distinguish between a garbled DSO (or even a file which isn't
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson an Apache module DSO at all) and a DSO which doesn't match the current
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Apache API. [Ralf S. Engelschall] PR#3152
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Two minor enhancements to mod_rewrite: First RewriteRule now also
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson supports the ``nocase|NC'' flag (as RewriteCond already does for ages) to
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson match case insensitive (this especially avoids nasty patterns like
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce `[tT][eE][sS][tT]'). Second two additional internal map functions
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce `escape' and `unescape' were added which can be used to escape/unescape
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to/from hex-encodings in URLs parts (this is especially useful in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce combination with map lookups).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Magnus Bodin, Ian Kallen, Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Renamed the macro escape_uri() to ap_escape_uri() which was
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson forgotten (because it was a macro) in the symbol renaming process.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix some inconsistencies related to the scopes of directives. The only
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce user visible change is that the directives `UseCanonicalName' and
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson `ContentDigest' now use the (more correct) `Options' scope instead of
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson (less correct) `AuthConfig' scope. [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Using DSO, the Server token was being mangled. Specifically, the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce module's token was being added first before the Apache token. This
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce has been fixed. [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Major overhaul of mod_negotiation.c, part 2.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - properly handle "identity" within Accept-Encoding.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - allow encoded variants in RVSA negotiation and let them appear in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the Alternates field using the non-standard "encoding" tag-list.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson - fixed both negotiation algorithms so that an explicitly accepted
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce encoding is preferred over no encoding if "identity" is not
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce included within Accept-Encoding.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - added ap_array_pstrcat() to alloc.c for efficient concatenation
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of large substring sequences.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - replaced O(n^2) memory hogs in mod_negotiation with ap_array_pstrcat.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Major overhaul of mod_negotiation.c, part 1.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - cleanups to mod_negotiation comments and code structure
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson - made compliant with HTTP/1.1 proposed standard (rfc2068) and added
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce support for everything in the upcoming HTTP/1.1
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson - language tag matching also handles tags with more than 2
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson levels like x-y-z
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - empty Accept, Accept-Language, Accept-Charset headers are
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce processed correctly; previously an empty header would make all
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce values acceptable instead of unacceptable.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson - allowed for q values in Accept-Encoding
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson - added support for transparent content negotiation (rfc2295 and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce rfc2296) (though we do not implement all features in these drafts,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce e.g. no feature negotiation). Removed old experimental version.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - implemented 'structured entity tags' for better cache correctness
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (structured entity tags ensure that caches which can deal with Vary
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce will (eventually) be updated if the set of variants on the server
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - this involved adding a vlist_validator element to request_rec
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - this involved adding the ap_make_etag() function to the global API
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - modified guessing of charsets used by Apache negotiation algorithm
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to guess 'no charset' if the variant is not a text/* type
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - added code to sort multiviews variants into a canonical order so that
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce negotiation results are consistent across backup/restores and mirrors
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - removed possibility of a type map file resolving to another type map
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson file as its best variant
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson [Koen Holtman, Roy Fielding, Lars Eilebrecht] PR#3451, 3299, 1987
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson *) RFC2396 allows the syntax http://host:/path (with no port number)
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson but the proxy disallowed it (ap_proxy_canon_netloc()).
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson [David Kristol <dmk@bell-labs.com>] PR#3530
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson *) When modules update/modify the file name in the configfile_t structure,
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson syntax errors will report the updated name, not the original one.
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson [Fabien Coelho <coelho@cri.ensmp.fr>] PR#3573
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson *) Correct some filename case assumptions from WIN32 to
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson CASE_BLIND_FILESYSTEM. [Brian Havard <brianh@kheldar.apana.org.au>]
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson *) For %v log ServerName regardless of the UseCanonicalName
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson setting (similarly for %p). [Dean Gaudet]
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson *) Configure was initializing the variables $OSDIR, $INCDIR and $SHELL
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson rather late (too late for some invocations of TestCompile).
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson This improves the make environment available to TestCompile and
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson the *.module scripts. [Martin Kraemer]
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson *) The hashbang emulation code in ap_execve.c would interpret
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson #!/hashbang/scripts correctly, but failed to fall back to a
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson standard shell for scripts which did NOT start with #!
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson Now SHELL_PATH is started in these cases. [Martin Kraemer]
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson *) PORT: Added the Cyberguard V2 port [Richard Stagg <stagg@lentil.org>]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Update APXS manual page: some -q option arguments were missing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and another was incorrect. [Mark Anderson <mda@discerning.com>] PR#3553
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Cleanup the command line options: `-?' was documented to show
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the usage list but does it with an error because `?' is not a valid
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce command. OTOH a lot of users expect `-h' to print such a usage list and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce instead are annoyed for ages by our huge unreadable list of directives.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce So we now changed the command line options this way:
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson 1. `-L' => `-R'
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson Intent: we need `-L' to be free, and `-R' for the DSO run-time path is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce very similar to the popular linker option.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce 2. `-h' => `-L'
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson Intent: while -l gives the small list of modules, -L now gives the
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson large list of directives implemented by these modules. This is also
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson consistent with -v (short version info) and -V (large version info).
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson 3. `-?' => `-h'
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson Intent: it's now the expected option ;-)
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson The manual page was adjusted accordingly.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#2714
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Fixed problem of fclose() on an unopened file in suexec if LOG_EXEC
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson wasn't defined. [Rick Franchuk <rickf@transpect.net>]
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Removed recently introduced bugs and disfigurements in APACI:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce o fixed argument line processing: using $args was broken: It was not
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson initialized and using args="$args $apc_option" and even args="$args
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson \"$apc_option\"" fails in the second processing round for any arguments
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson containing whitespaces. The only correct way is to use the construct
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson "$@" (but not possible here) or iterate _both_ times over the implicit
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson argument line (no argument to for-loop) which is what we now use.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson o make --with-layout=Apache the default without creating
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson redundancy (copying the --with-layout block in the argument parsing
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson loop). We achieve this by using the "$@" construct together with the
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson `set' command to prepend --with-layout=Apache to the command line in
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson case --with-layout is not used.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson o fixed auto-suffix handling now that config.layout exists.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson Paths which are auto-suffixed are marked with a trailing plus sign in
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson config.layout and every path now can be marked this way (not only the
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson four paths for which we do it currently). Additionally the suffix is
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson no longer a static one. Instead it's now `/<target>' where <target> is
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson the argument of the --target option or per default `httpd'.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson o allow also tabs (and only spaces) where we match whitespaces
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson o various fixes and cleanups related to used shell coding style
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson o made Jim happy by replacing `Written by' with `Initially written by' ;-)
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson o trimmed output of --help to fit into 80 columns
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson [Ralf S. Engelschall]
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Added two new core API functions, ap_single_module_configure() and
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson ap_single_module_init(), which are now used by mod_so to configure a module
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson after loading. [Ralf S. Engelschall]
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) PORT: Add defines for USE_FLOCK_SERIALIZED_ACCEPT and
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson SINGLE_LISTEN_UNSERIALIZED_ACCEPT to NetBSD/OpenBSD section
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson of ap_config.h to allow serialized accept for multiport listens.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson [Roy Fielding, Curt Sampson] PR#3120
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) PORT: Fixed a misplaced #endif for NetBSD/OpenBSD section
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson of ap_config.h that would skip several defines if DEFAULT_GROUP
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson was overridden. [Roy Fielding]
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) PORT: The I86 version of DGUX has support for strncasecmp and
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson strcasecmp, so allow it in ap_config.h. [Amiel Lee Yee] PR#3247
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Fix ordering of definitions in ap_config.h so that ap_inline is
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson defined before it might be used. [Victor Khimenko]
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) PORT: Add Dynamic Shared Object (DSO) support for BSDI (v4.0).
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson [Tom Serkowski <tks@bsdi.com>] PR#3453
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Make generation of src/Configuration.apaci more robust: It failed to
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson differenciate between modules when one module name was a postfix of
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson another (e.g. cgi vs. fastcgi). We now check for mod_XXX, libXXX and even
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson just XXX (think about totally non-standard names like "apache_ssl", too).
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson [Ralf S. Engelschall] PR#3380
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) In src/Configure remove the SERVER_SUBVERSION support (already deprecated
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson since 1.3b7) and make whitespace handling more robust (it failed horrible
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson when whitespaces were present in the arguments of -D options).
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson [Ralf S. Engelschall] PR#3240
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Add APACI --shadow=DIR variant (in addition to --shadow). This now first
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson creates an external package shadow tree in DIR before the local build
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson shadow tree is generated under DIR. This way one can have the extracted
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson Apache distribution tree read-only on NFS or CDROM and still build Apache
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson from these sources. An automatically triggered VPATH-like mechanism is
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson provided through the TOP variable, too.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson [Ralf S. Engelschall, Wilfredo Sanchez <wsanchez@apple.com>]
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Fix negotiation so that a Vary response header is correctly
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson generated when, for a particular dimension, variants only vary
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson in having or not having a value for that dimension. [Paul Sutton]
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Fix negotiation so that we prefer an encoded variant over an
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson unencoded variant if the user-agent explicitly says it can
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson accept that encoding. Previously we always preferred the unencoded
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson [Paul Ausbeck <paula@alumni.cse.ucsc.edu>, Paul Sutton] PR#3447
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Fix APXS tool: query variables LIBS_SHLIB and TARGET were not recognized
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson and the usage page was inconsistent with the functionality and manpage.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson [Ralf S. Engelschall]
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Allow special options -Wc,xxx and -Wl,xxx on APXS compile/link command.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson They can occur multiple times and their arguments (`xxx') are passed AS
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson IS to the compiler/linker command. [Ralf S. Engelschall]
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Fixed possible (but harmless in practice) bug in the DBM lookup
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson procedure of mod_rewrite: very long keys were truncated.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson [Ralf S. Engelschall]
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Added a generic --with-layout=[FILE:]ID option. ID here is a layout
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson identifier, currently "Apache" and "GNU" are pre-defined in the file
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson config.layout. Custom layouts are possible by using FILE:ID as the
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson argument where the layout ID is taken from FILE.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson The config.layout file consists of <Layout ID>..</Layout> sections
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson where inside those sections "path_variable: path_value" pairs can be
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson specified. These lines are converted to path_variable='path_value'.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Add a DefaultLanguage directive so that files missing a language
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson extension (e.g., .fr, .de) can be labelled as being some other
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson default language. DefaultLanguage can appear in <Directory> and
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson <Files> containers as well as .htaccess files. [Paul Sutton]
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Fix TARGET configuration when configuring and installing using
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson APACI configure. TARGET now defines the basename of the configuration
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson file, startup script, manual page, etc. log_error_core() now reports
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson the server binary name given by argv[0]. TARGET can now also be defined
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson with --target=TARGET parameter passed to APACI configure.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson [Ralf Engelschall, Randy Terbush]
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) mod_include.c:handle_perl() now properly tests for OPT_INCNOEXEC
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson rather than OPT_INCLUDES [Rainer Schoepf <schoepf@uni-mainz.de>]
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) ap_md5_binary() was using sprintf() rather than a table lookup
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson to convert binary bytes to hex digits.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson [Ronald Tschal�r <ronald@innovation.ch>] PR#3409
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Fix SEGV in TCN negotiation if no variants are acceptable.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson [Martin Plechsmid <plechsmi@karlin.mff.cuni.cz>] PR#1987
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) API: ap_exists_config_define() function is now "public" [Doug MacEachern]
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Fix documentation of `Action' directive: It can activate a CGI script
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson when either a handler or a MIME content type is triggered by the request.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson [Andrew Pimlott <pimlott@math.harvard.edu>] PR#3340
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Document the `add' command of `dbmmanage' in `dbmmanage.1' manpage.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson [David MacKenzie <djm@uu.net>] PR#3394
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson *) Ignore a "ErrorDocument 401" directive with a full URL and write a
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson notice to the error log. It is not possible to send a 401 response
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson and a redirect at the same time. [Lars Eilebrecht]
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Fallback to native compilers for IRIX-32 platform. It seems that
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson a gcc 2.8.1 compiled apache is logging client addresses with all
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson bits set (255.255.255.255). This is the second such problem caused
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson by gcc 2.8.1 compiler. The first being broken semaphore locking.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson [Randy Terbush]
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Updated mime.types to reflect current Internet media types
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson and include a URL to the registry.
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson [Manoj Kasichainula, Roy Fielding] PR#2380, 2286, 2246
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) SECURITY: Do a more complete check in mod_include to avoid
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson an infinite loop of recursive SSI includes. [Marc Slemko] PR#3323
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Add APACI --suexec-docroot and --suexec-logfile options which can be
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson used to set the document root directory (DOC_ROOT) and the suexec
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson logfile (LOG_EXEC), respectively. Additionally the --layout option
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson was changed to show more information about the suEXEC setup.
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson [Lars Eilebrecht] PR#3316, 3357, 3361
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Added the last two WebDAV status codes of 424 (Failed Dependency)
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson and 507 (Insufficient Storage) for use by third-party modules.
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson [Roy Fielding]
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Enabled all of the WebDAV method names for use by third-party
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson modules, Limit, and Script directives. That includes PATCH,
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson PROPFIND, PROPPATCH, MKCOL, COPY, MOVE, LOCK, and UNLOCK.
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson Improved mod_actions.c so that it can use any of the methods
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson defined in httpd.h. Added ap_method_number_of(method) for
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson getting the internal method number. [Roy Fielding]
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson *) PORT: Add a port to the TPF OS. [Joe Moenich <moenich@us.ibm.com> and
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson others at IBM]
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson *) Fix problems with handling of UNC names (e.g., \\host\path)
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson on Win32. [Ken Parzygnat <kparz@us.ibm.com>]
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson *) Rework os_canonical_*() on Win32 so it's simpler, more
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson robust, and works. [Ken Parzygnat <kparz@us.ibm.com>]
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson PR#2555, 2915, 3064, 3232
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson *) Work around incomplete implementation of strftime on Win32.
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson [Manoj Kasichainula, Ken Parzygnat <kparz@us.ibm.com>]
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson *) Move a typedef to fix compile problems on Linux with 1.x kernels.
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson [Manoj Kasichainula] PR#3177
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson *) PORT: Add a port to the Concurrent PowerMAX OS. [Tom Horsley
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson <Tom.Horsley@mail.ccur.com>]
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson *) WIN32: Log more explicit error messages if spawning an interpreted
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson script failed, including the command line used to attempt to execute
18914183d997fe982136cdb8c45b41e857d96551Andreas Gustafsson the interpreter and the Win32 error code returned. [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Disable sending of error-notes on a 500 (Internal Server Error) response
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce since it often includes file path info. Enable sending of error-notes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on a 501 (Method Not Implemented). [Roy Fielding] PR#3173
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) http_config.c would respond with 501 (Method Not Implemented) if a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce content type handler was specified but could not be found, which
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce should have been a 500 response. Likewise, mod_proxy.c would responsd
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce with a 501 if the URI scheme is unrecognized instead of the correct
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson response of 403 (Forbidden). [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY: Eliminate DoS attack when a bad URI path contains what
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson looks like a printf format escape. [Marc Slemko, Studenten Net Twente]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix in mod_autoindex: for files where the last modified time stamp was
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce unavailable, an empty string was printed which was 2 bytes short.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce The size and description columns were therefore not aligned correctly.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer] (no PR#)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Update BS2000 OS code to work with recent versions. Starting with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce release A17, the child fork() must be replaced by a _rfork().
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (BS2000 only) [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add the actual server_rec structure of the specific Vhost to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce scoreboard file and avoid a string copy (as well as allow some
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce further future enhancements). [Harrie Hazewinkel
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce <harrie.hazewinkel@jrc.it>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add APACI --permute-module=foo:bar option which can be used to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on-the-fly/batch permute the order of two modules (mod_foo and mod_bar)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in the Configuration[.apaci] file. Two special and important variants are
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce supported for the option argument: first BEGIN:foo which permutes module
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_foo with the begin of the module list, i.e. it `moves' the module to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the begin of the list (gives it lowest priority). And second foo:END
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce which permutes mod_foo with the end of the module list, i.e. it `moves'
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the module to the end of the list (gives it highest priority).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix problem with 'apache -k shutdown' and startup event
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce synchronisation (Win32). [Ken Parzygnat <kparz@raleigh.ibm.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The config parser wasn't correctly noticing a missing '>'
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on container start lines (e.g., it wouldn't spot
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce "<Directory /" as a syntax error). [Ryan Bloom <rbbloom@us.ibm.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a 'RemoveHandler' directive which will selectively remove
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce all handler associations for the specified file extensions.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ryan Bloom <rbbloom@us.ibm.com>] PR#1799.
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson *) Properly handle & allow "nul" and ".*/null" in AccessConfig and
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson ResourceConfig directives on Win32. Also add a note to the effect
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson of 'useless User directive ignored on Win32' to the errorlog if
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson a User directive is encountered on Win32.
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson [Ken Parzygnat <kparz@raleigh.ibm.com>] PR#2078, 2303.
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson *) Fix multiple whitespace handling in imagemaps for mod_imap which was
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson broken since Apache 1.3.1 where we took out compressing of multiple
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson spaces in ap_cfg_getline().
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ivan Richwalski <ivan@seppuku.net>] PR#3249
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix Berkeley-DB/2.x support in mod_auth_db: The data structures were not
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce initialized correctly and the db_open() call used an invalid mode
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce parameter. [Ron Klatchko <ron@ckm.ucsf.edu>] PR#3171
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: DSO support for UnixWare 7
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall, Ron Record <rr@sco.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Merge the contents of the {srm,access}.conf-dist* files into the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce httpd.conf-dist* files. The srm and access files now contain
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce only comments, and httpd.conf has all the combined contents in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a rational order. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: DSO/ELF support for FreeBSD 3.0.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall, Dirk Froemberg <ibex@physik.TU-Berlin.DE>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a "default-handler" handler that calls the default_hander()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce function which is normally called for static content. This allows
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce you to override a specific handler. [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Further simplify checking for absolute paths by replacing an
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce hard-coded syntax check with a call to a routine we already created to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce do this. [Ken Parzygnat <kparz@raleigh.ibm.com>] PR#2976, 3074
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Log an error if we encounter a malformed "require" directive
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in mod_auth if we know that we know that no other module can
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce deal with it. [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove ap_private_extern method of hiding conflicting symbols
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on the NEXT platform because it is not correct for all versions,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and the versions for which it is correct are unknown.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Wilfredo Sanchez <wsanchez@apple.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix inheritance of IndexOptions NameWidth and remove unintended
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce restriction on +NameWidth, +IconHeight, and +IconWidth. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix per-directory config merging for cases in which a 500 error
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is encountered in an .htaccess file somewhere down the tree.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ken Coar] PR#2409
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Minor performance improvement to ap_escape_html(). [Roy Fielding]
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson *) Fixed a segmentation violation in mod_proxy when a response is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce non-cachable. [Roy Fielding, traced by Doug Bloebaum]. PR#2950, 3056
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.3.3
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added a complete implementation of the Expect header field as
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson specified in rev-05 of HTTP/1.1. Disabled the 100 Continue
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson response when we already know the final status, which is mighty
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce useful for PUT responses that result in 302 or 401. [Roy Fielding]
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson *) Remove extra trailing whitespace from the getline results as part
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson of the protocol processing, which is extra nice because it works
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson between continuation lines, is almost no cost in the normal case
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson of no extra whitespace, and saves memory. [Roy Fielding]
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson *) Added new HTTP status codes and default response bodies from the
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson revised HTTP/1.1 (307, 416, 417), WebDAV (102, 207, 422, 423), and
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson HTTP Extension Framework (510) specifications. Did not add the
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson WebDAV 424 and 425 codes because they are bogus. We don't use any
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson of these codes yet, but they are now available to 3rd-party modules.
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson [Roy Fielding]
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson *) Fix a possible race condition between timed-out requests and the
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson ap_bhalfduplex select that might result in an infinite loop on
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson platforms that do not validate the descriptor. [Roy Fielding]
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson *) WIN32: Add "-k shutdown" and "-k restart" options to signal a
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson running Apache server [Paul Sutton]
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson *) Fix mod_autoindex bug where directories got a size of "0k" instead
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson of "-". [Martin Plechsmid <plechsmi@karlin.mff.cuni.cz>, Marc Slemko]
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson *) PORT: DRS 6000 machine. [Paul Debleecker <pdebleecker@jetair.be>]
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson *) Add the server signature text (from the core ServerSignature directive)
873355df80e292cfdd67b9482f1846e2bc9b423eAndreas Gustafsson to the list of envariables available to scripts, SSI, and the like.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Fix sys/resource.h handling for SCO 3.x platform.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [M. Laak <maert@proinv.ee>] PR#3108
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fallback from sysconf-based to plain HZ-based `ticks per second'
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce calculation in mod_status for all systems which don't have POSIX
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce sysconf() (like UTS 2.1) and not only for the NEXT platform.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dave Dykstra <dwd@bell-labs.com>] PR#3055
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix `require ...' directive parsing in mod_auth, mod_auth_dbm and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_auth_db by using ap_getword_white() (which uses ap_isspace())
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce instead of ap_getword(..., ' ') (which parses only according to spaces
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce but not tabs). [James Morris <jmorris@intercode.com.au>,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Ralf S. Engelschall] PR#3105
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the SERVER_NAME variable under sub-request situations (where
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce `UseCanonicalName off' is used) like CGI's called from SSI pages or
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce RewriteCond variables by adopting r->hostname to sub-requests.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [James Grinter <jrg@blodwen.demon.co.uk>] PR#3111
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix stderr redirection under syslog-based error logging situation.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Youichirou Koga <y-koga@jp.FreeBSD.org>] PR#3095
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Document `ErrorLog syslog:facility' variant of error logging.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Youichirou Koga <y-koga@jp.FreeBSD.org>] PR#3096
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Fix http://localhost/ hints in top-level INSTALL document.
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson [Rob Jenson <robjen@spotch.com>, Ralf S. Engelschall] PR#3088
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Quote paths in default configuration files. [Wilfredo Sanchez]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Remove extra HAVE_SYS_RESOURCE_H define for RHAPSODY since
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce it is now taken care of properly by the header file tests.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Wilfredo Sanchez <wsanchez@apple.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix problem with scripts and filehandle inheritance on Win32.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ken Parzygnat <kparz@raleigh.ibm.com>] PR#2884, 2910
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Win32 name canonicalisation could end up using the server's
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson working directory to fill in some blanks. [Ken Parzygnat
33a1b09738baba43edb02ff7d09ef510c73802d0Andreas Gustafsson <kparz@raleigh.ibm.com>] PR#3001
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Correct invalid assumption by ap_sub_req_lookup_file() that all
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce absolute paths begin with "/" -- because they don't on Win32.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ken Parzygnat <kparz@raleigh.ibm.com>] PR#2976, 3074
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add [REDIRECT_]VARIANTS environment variable to mod_speling
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce so that ErrorDocument 300 processors can reformat the list
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson if desired. [Ken Coar] PR#2859
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add +/- incremental prefixes to IndexOptions keywords, and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce enable merging of multiple IndexOptions directives. [Ken Coar]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) PORT: Allow GuessOS to recognize Unixware 7.0.1 [Steve Cameron
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce <steve.cameron@compaq.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Reconstructed the loop through multiple htaccess file names so
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce that missing files are not confused with unreadable files.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The ap_pfopen and ap_pfdopen routines were failing to protect the
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson errno on an error, which leads to one error being mistaken for
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson another when reading non-existent .htaccess files.
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson [Jim Jagielski]
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson *) OS/2: The new header tests get things right, need to update
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson *) The Perl %ENV hash will now be setup by default when using the
3ba6d0298ae3414ab12f1a6ae35e14b119f4311eAndreas Gustafsson mod_include `perl' command [Doug MacEachern]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Add Pyramid DC/OSx support to configuration mechanism.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Earle Ake <akee@wpdiss1.wpafb.af.mil>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Fix sys/resource.h handling for Amdahl's UTS 2.1
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dave Dykstra <dwd@bell-labs.com>] PR#3054
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Correct comment in mod_log_config.c about its internals.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Elf Sternberg <elf@halcyon.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Avoid possible line overflow in Configure: Use an awkfile to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce handle the creation of modules.c [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.3.2
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix bug in ap_remove_module(), which caused problems for dso's
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce who were the top_module. [Doug MacEachern]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add support for Berkeley-DB/2.x (in addition to Berkeley-DB/1.x) to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_auth_db to both be friendly to users who wants to use this version
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and to avoid problems under platforms where only version 2.x is present.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dan Jacobowitz <drow@false.org>, Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) When using ap_log_rerror(), make the error message available to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *ERROR_NOTES envariables by default. [Ken Coar]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) BS2000 platform only: get rid of the nasty BS2000AuthFile.
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson You now must define a BS2000Account name for the server User.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This has fewer security implications than the old approach.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Fix SHARED_CORE feature for HPUX platform: We now use extension `.sl'
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce instead of `.so' and `SHLIB_PATH' instead of `LD_LIBRARY_PATH' on this
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce platform to make the braindead HPUX linker happy. Notice, for the module
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce DSOs we don't have to use this, because these are loaded manually (and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce not via HPUX' dld). [Ralf S. Engelschall] PR#2905, PR#2968
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove 64 thread limit on Win32.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Bill Stoddard <stoddard@raleigh.ibm.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove redundant substitutions in top-level Makefile.tmpl.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix APACI's `Group' configuration adjustment - especially for Linux
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce platforms where `nogroup' exists in /etc/group. [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make PrintPath work generically instead of having one version
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce strictly for OS/2. [Jim Jagielski, Brian Havard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the recently introduced C header file checking: We now use the C
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce pre-processor pass only (and no longer the complete compiler pass) to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce determine whether a C header file exists or not. Because only this way
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce we're safe against inter-header dependencies (which caused horrible
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce portability problems). The only drawback is that we now have a CPP
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce configuration variable which has to be determined first (we do a similar
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce approach as GNU Autoconf does here). When all fails the user still has
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the possibility to override it manually via APACI or src/Configuration.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson As a fallback for the header check itself we can directly check the
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson existance of the file under /usr/include, too.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#2777
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) PORT: Added RHAPSODY (Mac OS X Server) support. MAP_TMPFILE defined
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as an alternate mechanism for mmap'd shared memory for RHAPSODY.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ap_private_extern defined to hide symbols that conflict with loaded
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson dynamic libraries on the NEXT and RHAPSODY platforms.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Wilfredo Sanchez <wsanchez@apple.com>]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Delete PID file on clean shutdowns.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Charles Randall <crandall@matchlogic.com>] PR#2947
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Fix mod_auth_*.html documents: NSCA -> NCSA
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Youichirou Koga <y-koga@jp.FreeBSD.org>] PR#2991
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix INSTALL document: www.gnu.ai.mit.edu -> www.gnu.org
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Karl Berry <karl@gnu.org>] PR#2994
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix dbmmanage.1 manual page.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Youichirou Koga <y-koga@jp.FreeBSD.org>] PR#2992
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix possible buffer overflow situation in suexec.c.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jeff Stewart <jws@purdue.edu>] PR#2790
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add some more LIBS for the SCO5 platform which are needed for the already
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce used -lprot. It's actually a bug in SCO5, of course.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ronald Record <rr@sco.com>] PR#2533
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix documentation of ProxyPass/ProxyPassReverse according to the
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson trailing slash problem. [Jon Drukman <jsd@gamespot.com>] PR#2933
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove `-msym' option from LDFLAGS_SHLIB for the Digital UNIX (OSF/1)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce platform, because it's only supported under version 4.0 and higher. But
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce because our GuessOS is still unaware of Digital UNIX versions and the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce -msym is just to optimize the DSO statup time a little bit it's safe and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce best when we leave it out now. [Ralf S. Engelschall] PR#2969
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the ap_log_error_old(), ap_log_unixerr() and ap_log_printf()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce functions: First all three functions no longer fail on strings containing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce "%" chars and second ap_log_printf() no longer does a double-formatting
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (instead it directly passes through the message to be formatted to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce real internal formatting function). [Ralf S. Engelschall] PR#2941
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow "Include" directives anywhere in the server config
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce files (but not .htaccess files). [Ken Coar] PR#2727
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The proxy was refusing to serve CONNECT requests except to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce port 443 (https://) and 563 (snews://). The new AllowCONNECT
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directive allows the configuration of the ports to which a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce CONNECT is allowed. [Sameer Parekh, Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_expires will now act on content that is not sent from a file
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on disk. Previously it would never add an Expires: header to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce any response that did not come from a file on disk; the only
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce case where it still doesn't (and can't) add one for that type of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce content is if you are using a modification date based setting.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Marc Slemko, Paul Phillips <paulp@go2net.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Problems encountered during .htaccess parsing or CGI execution
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce that lead to a "500 Server Error" condition now provide explanatory
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce text (in the *ERROR_NOTES envariable) to ErrorDocument 500 scripts.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ken Coar] PR#1291
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add NameWidth keyword to IndexOptions directive so that the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce width of the filename column is customisable. [Ken Coar, Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR#1949, 2324.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Recognize lowercase _and_ uppercase `uname' results under
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce SCO OpenServer. [David Coelho <drc@ppt.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) As duplicate "HTTP/1.0 200 OK" lines within the header seem to be
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a common problem of (mis-administrated?) IIS servers, make the apache
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce proxy immune to these errors (and ignore the duplicates, but log
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the fact to error_log). [Martin Kraemer], after the proposal in PR#2914
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The <IfModule and <IfDefine block starting directives now only
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce allow exactly one argument. Previously, the optional negation
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce character '!' could be separated by whitespace without a syntax
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce error being reported, albeit defeating the IfModule functionality
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (enclosed directives would ALWAYS be executed). By using the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce stricter syntax, these hard-to-track errors can be avoided.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Simplify handling of IndexOptions in mod_autoindex -- and BTW
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce cause the standalone FancyIndexing directive to logically OR
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce into any existing IndexOptions settings rather than wiping
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce them out. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Changes in ftp proxy: make URL parsing simpler by using the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce parsed_uri stuff.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce + Add display of the "current directory" in cases where it's
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce different from the supplied path (e.g., ftp://user@host/ lives
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in /home/user, not in /, therefore clicking on "../" in the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce starting directory might send us to /home/).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce + When ftp login fails, (esp. when a user name was part of the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce URL already), we now return [401 Unauthorized ] to allow the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce browser to pop up an authorization dialog. This makes passwords
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce slightly less visible (they don't appear in the regular log files)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and implements a functionality that other www proxy servers
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce already offered.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Triggered by the recent "Via:" header changes, the proxy module would
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce dump core for replies with invalid headers (e.g., duplicate
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson "HTTP/1.0 200 OK" lines). These errors are now logged and the
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson core dump is avoided. Also, broken replies are not cached.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer] PR#2914
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) new `GprofDir' directive when compiled with -DGPROF, where gprof can
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce plop gmon.out profile data for each child [Doug MacEachern]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Use the construct ``"$@"'' instead of ``$*'' in the generated
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce config.status script to be immune against arguments with whitespaces.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Yves Arrouye <yves@apple.com>] PR#2866
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Replace the inlined information grabbing stuff for the configuration
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce adjustment feature (no --without-confadjust) with calls to a new helper
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce script `buildinfo.sh' which is both more flexible and already proofed to
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson be more robust against platform differences. This mainly fixes the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce recently occured ``sed: command garbled: ...'' problems.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#2776, PR#2848
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make ab.c again pass ``gcc -Wall -Wshadow -Wpointer-arith -Wcast-align
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline''
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce without complains after we recently added the POST feature.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Renamed is_HTTP_xxx() macros to ap_is_HTTP_xxx() name. They are used inside
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce modules as API functions and we forgot them at the big symbol renaming.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove bad reference to non-existing SERVER_VERSION in mod_rewrite.html
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Youichirou Koga <y-koga@jp.FreeBSD.ORG>] PR#2895
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Dynamically size the filename column of mod_autoindex output.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add the ability to do POST requests to the ab benchmarking tool.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Kurt Sussman <kls@best.com>] PR#2871
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Bump up MAX_ENV_FLAGS in mod_rewrite.h from the too conservatice limit of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce 5 to 10 because there are some users out there who always have 5 to 8
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce variables in one RewriteRule and had to patch mod_rewrite.h for every
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce release. So 15 should be now more than enough, even for them. (I never
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce needed more than 4 in my RewriteRules ;-)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make the proxy generate and understand Via: headers
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change the proxy to use tables instead of array_headers for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the header lines. [Martin Kraemer]
d510e8695ebcce64e515ce756b1cfe8fc3e531efAndreas Gustafsson *) Make sure the config.status file is not overridden when just
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson ``configure --help'' is used. [Ralf S. Engelschall] PR#2844
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson *) Split MODULE_MAGIC_NUMBER into _MAJOR/_MINOR numbers. This should
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson provide a way to trace API changes that add functionality but do
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson not create a compatibility issue for precompiled modules, etc.
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson See include/ap_mmn.h for more details. [Randy Terbush]
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson *) Fix suexec installation under `make install root=xxx' situation.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Extend the output of the -V switch to include the paths of all
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce compiled-in configuration files, if they were overridden at
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce compile time, for least astonishment of the user.
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson [Martin Kraemer]
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson *) When READing a request in ExtendedStatus mode, the "old"
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson vhost, request and client information is not displayed.
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson [Jim Jagielski]
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson *) STATUS is no longer available. Full status information now
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson run-time configurable using the ExtendedStatus directive.
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson [Jim Jagielski]
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson *) SECURITY [CAN-1999-1199] (cve.mitre.org):
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson Eliminate O(n^2) space DoS attacks (and other O(n^2)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce cpu time attacks) in header parsing. Add ap_overlap_tables(),
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a function which can be used to perform bulk update operations
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on tables in a more efficient manner.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY: Added compile-time and configurable limits for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce various aspects of reading a client request to avoid some simple
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce denial of service attacks, including limits on maximum request-line
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce size (LimitRequestLine), number of header fields (LimitRequestFields),
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and size of any one header field (LimitRequestFieldsize). Also added
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a configurable directive LimitRequestBody for limiting the size of the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce request message body. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make status module aware of DNS and logging states, even if
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce STATUS not defined. [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a problem with the new OS/2 mutexes. [Brian Havard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Enhance mod_speling so that CheckSpelling can be used in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce <Directory> containers and .htaccess files. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: new ap_custom_response() function for hooking into the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ErrorDocument mechanism at runtime [Doug MacEachern]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: new ap_uuencode() function [Doug MacEachern]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: scan_script_header_err_core() now "public" and renamed
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson ap_scan_script_header_err_core() [Doug MacEachern]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The 'status' module will now show the process pid's and their
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce state even without full STATUS accounting. [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Restore the client IP address to the error log messages, this
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce was lost during the transition from 1.2 to 1.3. Add a new
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce function ap_log_rerror() which takes a request_rec * and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce formats it appropriately. [Dean Gaudet] PR#2661
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Cure ap_cfg_getline() of its nasty habit of compressing internal
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce whitespace in input lines -- including within quoted strings.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce but leading and trailing whitespace should continue to be
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce stripped [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Cleanup of the PrintPath/PrintPathOS2 helper functions. Avoid
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the ugly use of an env. variable and use command-line args for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce alternate $PATH. Make more like advanced 'type's as well.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The IRIXN32 Rule was being ignored. Configure now correctly adds
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson -n32 only if IRIXN32 says to. [Jim Jagielski, Alain St-Denis
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson <alain.st-denis@ec.gc.ca>] PR#2736
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Clean up a warning in mod_proxy. [Ralf S. Engelschall]
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson *) Renamed __EMX__ (internal define of the gcc port under OS/2) to OS2
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson following the same idea as "MSVC vs WIN32". Additionally the src/os/emx/
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directory was renamed to src/os/os2/ for consistency.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Havard, Ralf S. Engelschall]
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson *) Add new Rule SHARED_CHAIN which can be used to enable linking of DSO
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson files (here modules) against other DSO files (here shared libraries).
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson This is done by determining a subset of LIBS which can be safely used for
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson linking the DSOs, i.e. PIC libs and shared libs. Currently the rule is
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson disabled for all platforms to avoid problems with this (experimental)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce rule. But we provide it now for those people how ran into problems and
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson want to came out by forcing linking against DSOs.
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson [Ralf S. Engelschall] PR#2587
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson *) Fix suEXEC start message: Has to be of `notice' level to really get
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson printed together with the standard startup message because the `notice'
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson level is handled special inside ap_log_error() for startup messages.
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson [Ralf S. Engelschall] PR#2761 PR#2761 PR#2765
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson *) Add correct `model' MIME types from RFC2077 to mime.types file.
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson [Ralf S. Engelschall] PR#2732
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson *) Fixed examples in mod_rewrite.html document.
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson [Youichirou Koga <y-koga@jp.FreeBSD.org>, Ralf S. Engelschall] PR#2756
ff5760e233f6ab75e33783b6dd48f961ce04d933Andreas Gustafsson *) Allow ap_read_request errors to propagate through the normal request
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson handling loop so that the connection can be properly closed with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce lingering_close, thus avoiding a potential TCP reset that would
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce cause the client to miss the HTTP error response. [Roy Fielding]
ff5760e233f6ab75e33783b6dd48f961ce04d933Andreas Gustafsson *) One more portability fix for APACI shadow tree support: Swap order of awk
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson and sed in top-level configure script to avoid sed fails on some
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce platforms (for instance SunOS 4.1.3 and NCR SysV) because of the
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson non-newline-termined output of Awk. [Ralf S. Engelschall] PR#2729
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: NEC EWS4800 support.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [MATSUURA Takanori <t-matsuu@protein.osaka-u.ac.jp>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a segfault in the proxy on OS/2. [Brian Havard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix Win32 part of ap_spawn_child() by providing a reasonable child_info
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce structure instead of just NULL. This fixes at least the RewriteMap
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce programs under Win32. [Marco De Michele <mdemichele@tin.it>] PR#2483
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add workaround to top-level `configure' script for brain dead
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce `echo' commands which interpet escape sequences per default.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#2654
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make sure that the path to the Perl interpreter is correctly
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce adjusted under `make install' also for the printenv CGI script.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#2595
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Update the mod_rewrite.html document to correctly reflect the situation
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of the `proxy' (`[P]') feature. [Ralf S. Engelschall] PR#2679
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix `install-includes' sub-target of `install' target in top-level
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson Makefile.tmpl: The umask+cp approach didn't work as expected (especially
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for users which extracted the distribution under 'umask 077'), so replace
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce it by an explicit cp+chmod approach.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Richard Lloyd, Curt Sampson, Ralf S. Engelschall] PR#2656 PR#2626
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix `distclean' and `clean' targets in src/Makefile.tmpl to have same
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce behavior and to cleanup correctly even under enabled SHARED_CORE rule.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Use a more straight forward and thus less problematic Sed command in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce src/helper/mkdir.sh script. [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make sure the `configure' scripts doesn't fail when trying to guess the
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson domainname of the machine and there are multiple `domainname' and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce `search' entries in /etc/resolv.conf.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#2710
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson *) Add note about the SHARED_CORE requirement on some platforms also to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce INSTALL file because a lot of users don't read htdocs/manual/dso.html
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce first. [Ralf S. Engelschall] PR#2701
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix document "hyperlink" for dso.html in src/Configuration.tmpl
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson [Knut A.Syed <Knut.Syed@nhh.no>] PR#2674
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson *) Modify mod_rewrite to update the Vary response field if the URL rewriting
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce engine does any manipulations or decisions based upon request fields.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ken Coar] PR#1644
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson *) Document the special APACI behavior for installation paths where
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson ``/apache'' is appended to paths under some (well defined, of course)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce situations to prevent pollution of system locations with Apache files.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#2660
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed problem with buffered response message not being sent for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the read_request error conditions of URI-too-long (414) and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce malformed header fields (400). [Roy Fielding] PR#2646
e1ad5fdd33cb05f65b06825e7b1bcfb720879289Andreas Gustafsson *) Add support for the Max-Forwards: header line required by RFC2068 for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the TRACE method. This allows apache to TRACE along a chain of proxies
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce up to a predetermined depth. [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix SHARED_CORE rule: The CFLAGS_SHLIB variable is no longer doubled
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (compilers complained) and the .so.V.R.P filename extension was adjusted
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to correctly reflect the 1.3.2 version.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#2644
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY: Plug "..." and other canonicalization holes under OS/2.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Havard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: implement serialized accepts for OS/2. [Brian Havard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_include had problems with the fsize and flastmod directives
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson under WIN32. Fix also avoids the minor security hole of using
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson ".." paths for fsize and flastmod.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Manoj Kasichainula <manojk@raleigh.ibm.com>] PR#2355
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Fixed some Makefile dependency problems. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.3.1
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Disable the incorrect entry for application/msword in the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_mime_magic "magic" file because it also matches other Office
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce documents. [Ralf S. Engelschall] PR#2608
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix broken RANLIB handling in src/Configure (the entry from
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson src/Configuration.tmpl was ignored) and additionally force RANLIB to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce /bin/true under HP/UX where ranlib exists but is deprecated.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Ralf S. Engelschall] PR#2627
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) 'apachectl status' failed on some systems.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Steve VanDevender <stevev@darkwing.uoregon.edu>, Lars Eilebrecht] PR#2613
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Add new flags for ap_unparse_uri_components() to make it generate
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the scheme://sitepart string only, or to omit the query string.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Canonicalize ServerRoot before checking to see if it
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is a valid directory. The failure to do this caused certain
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ServerRoot settings (eg. "ServerRoot /apache") to be improperly
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce rejected. [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Global renaming of C header files to both get rid of conflicts with third
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce party packages and to again reach consistency:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce 2. conf_auto.h -> ap_config_auto.h \ these are now merged
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce 3. ap_config.h -> ap_config_auto.h / in the config process
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Backward compatibility files for conf.h and compat.h were created.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_mmap_static will no longer take action on requests unless at
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce least one "mmapfile" directive is present in the configuration.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This experimental module has to do some black magic to operate
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce inside the current API and thus creates side-effects for other
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce modules under some circumstances.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add conservative ticks around more egrep arguments in top-level configure
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to avoid problems under brain-dead platforms like Digital UNIX (OSF1).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#2596
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_rewrite created RewriteLock files under the UID of the parent
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce process, thus the child processes had no write access to the files.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Now a chown() is done on the file to the uid of the children,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce if applicable. [Lars Eilebrecht, Ralf S. Engelschall] PR#2341
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Autogenerate some HAVE_XXXXX_H defines in conf_auto.h (determined via
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce TestCompile) instead of defining them manually in conf.h based on less
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce accurate platform definitions. This way we no longer have to fiddle with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce OS-type and/or OS-version identifiers to discover whether a system header
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce file exists or not. Instead we now directly check for the existence of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce those esoteric ones.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#2093, PR#2361, PR#2377, PR#2434,
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson PR#2524, PR#2525, PR#2533, PR#2569
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson *) mod_setenvif (BrowserMatch* and friends) will now match a missing
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson field with "^$". [Ken Coar]
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson *) Set the RTLD_GLOBAL dlopen mode parameter to allow dynamically loaded
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson modules to load their own modules dynamically. This improves mod_perl
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson and mod_php3 when these modules are loaded dynamically into Apache.
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson [Rasmus Lerdorf]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Cache a proxied request in the event that the client cancels the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce transfer, provided that the configured percentage of the file has
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce already been transfered. It works for HTTP transfers only. The
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce new configuration directive is called CacheForceCompletion.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Glen Parker <glenebob@nwlink.com>] PR#2277
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add the "<!DOCTYPE HTML" magic cookie used by modern documents (and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce required by HTML 3.2 and later) to mod_mime_magic's conf/magic.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Anna Shergold <anna@inext.co.uk>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix yet another signal-based race condition involving nested timers.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Signals suck. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) suexec's error messages have been clarified a little bit. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Clean up some, but perhaps not all, 8-bit character set problems
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce with config file parsing, and URL parsing. We now define
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ap_isdigit(), ap_isupper(), ... which cast to an (unsigned char).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This should work on most modern unixes.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#800, 2282, 2553 (and others)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The "handler not found" error was issued in cases where the handler
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce really did exist, but was just declining to serve the request.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [John Van Essen <jve@gamers.org>] PR#2529
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add Dynamic Shared Object (DSO) support for SCO5 (OpenServer 5.0.x).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ronald Record <rr@sco.com>] PR#2533
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The APACI libexecdir was not extended with an "apache/" subdir
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce if the installation prefix didn't already contain "apache", but
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce it should be because the DSO files are Apache-specific. Now
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce libexecdir is treated the same way sysconfdir, datadir, localstatedir
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and includedir are already treated.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Charles Levert <charles@comm.polymtl.ca>] PR#2551
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The <Limit> parsing routine was incorrectly treating methods as
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce case-insensitive. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The ap_bprintf() code neglected to test if there was an error on
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the connection. ap_bflush() misdiagnosed a failure as a success.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) add support for #perl arg interpolation in mod_include
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Doug MacEachern]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: Name changes of table_elts to ap_table_elts, is_table_empty
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to ap_is_table_empty and bgetflag to ap_bgetflag. [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Add UnixWare 7 support
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Vadim Kostoglodoff <vadim@olly.ru>] PR#2463
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the Guess-DSO-flags-from-Perl stuff in src/Configure: "perl" was
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson used instead of "$PERL" which contains the correctly determined Perl
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce interpreter (important for instance on systems where "perl" and "perl5"
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson exists, like BSDI or FreeBSD, etc).
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson [Ralf S. Engelschall] PR#2505
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson *) Move the initial suEXEC-related startup message from plain
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson fprintf()/stderr to a delayed ap_log_error()-based one to avoid problems
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson when Apache is started from inetd (instead of standalone). Under this
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson situation startup messages on stderr lead to problems (the line is sent
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson to the client in front of the requested document).
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson [Ralf S. Engelschall] PR#871, PR#1318
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a flag so ap_fnmatch() can be used for case-blind pattern matching.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ken Coar, Dean Gaudet]
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson *) WIN32: Don't collapse multiple slashes in PATH_INFO.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ben Laurie, Bill Stoddard <wgstodda@us.ibm.com>] PR#2274
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson *) WIN32 SECURITY: Eliminate trailing "."s in path components. These are
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson ignored by the Windows filesystem, and so can be used to bypass security.
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson [Ben Laurie, Alexei Kosut].
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson *) We now attempt to dump core when we get SIGILL. [Jim Jagielski]
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson *) PORT: remove broken test for MAP_FILE in http_main.c.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Wilfredo Sanchez <wsanchez@apple.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Change support/apachectl to use "kill -0 $pid" to test if the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce httpd is running. This should be more portable than figuring out
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce which of three dozen different versions of "ps" are installed.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [a cast of dozens]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: If we can't figure out how to execute a file in a script
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directory, bail out of the request with an error message. [W G Stoddard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32 SECURITY: Eliminate directories consisting of three or more dots;
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce these are treated by Win32 as if they are ".." but are not detected by
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce other machinery within Apache. This is something of a kludge but
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce eliminates a security hole. [Manoj Kasichainula, Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Move ap_escape_quotes() from src/ap to src/main/util.c; it uses
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce pools and thus pollutes libap (until the pool stuff is moved there).
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) IndexIgnore should be case-blind on Win32 (and any other case-aware
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce but case-insensitive platforms). New #define for this added to conf.h
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (CASE_BLIND_FILESYSTEM). [Ken Coar] PR#2455
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Enable DSO support for OpenBSD in general, not only for 2.x, because it
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce also works for OpenBSD 1.x. [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Fix compilation problem on ARM Linux.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Sam Kington <sam@illuminated.co.uk>] PR#2443
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Let APACI's configure script determine some configuration parameters
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (Group, Port, ServerAdmin, ServerName) via some intelligent tests to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce remove some of the classical hurdles for new users when setting up
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Apache. This is done per default because it is useful for the average
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce user. Package authors can use the --without-confadjust option to disable
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce these configuration adjustments.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added an EXTRA_DEPS configuration parameter which can be used
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to add an extra Makefile dependency for the httpd target, for instance
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to external third-party libraries, etc.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add <IfDefine>..</IfDefine> sections to the core module (with same spirit
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as <IfModule>..</IfModule> sections) which can be used to skip or process
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson contained commands dependend of ``-D PARAMETER'' options on the command
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce line. This can be used to achieve logical conditions like <IfDefine
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ReverseProxy> instead of physically ones (e.g. <IfModule mod_proxy.c>)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and thus especially can be used for conditionally loading DSO-based
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce modules via LoadModule, etc. [Ralf S. Engelschall]
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson *) PORT: clean up a warning in mod_status for OS/2. [Brian Havard]
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson *) Make table elements const. This may prevent obscure errors. [Ben Laurie]
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson *) Fix parsing of FTP `SIZE' responses in proxy module: The newline was not
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson truncated which forced following HTTP headers to be data in the HTTP
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson reponse. [Ralf S. Engelschall, Charles Fu <ccwf@bacchus.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Portability fix for APACI shadow tree support: Swap order of awk and sed
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in top-level configure script to avoid sed fails on some platforms (for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce instance SunOS 4.1.3 and NCR SysV) because of the non-newline-termined
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce output of Awk. [Bill Houle <bhoule@sandiegoca.ncr.com>] PR#2435
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson *) Improve performance of directory listings (mod_autoindex) by comparing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce integer keys (last-modified and size) as integers rather than converting
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson them to strings first. Also use a set of explicit byte tests rather
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson than strcmp() to check for parent directory-ness of an entry. Oh, and
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson make sure the parent directory (if displayed) is *always* listed first
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson regardless of the sort key. Overall performance winnage should be good
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson in CPU time, instruction cache, and memory usage, particularly for large
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson directories. [Ken Coar]
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson *) Add a tiny but useful goody to APACI's configure script: The generation
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of a config.status script (as GNU Autoconf does) which remembers the used
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce configure command and hence can be used to restore the configuration by
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce just re-running this script or for remembering the configuration between
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add httpd -t (test) option for running configuration syntax tests only.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce If something is broken it complains and exits with a return code
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce non-equal to 0. This can be used manually by the user to check the Apache
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce configuration after editing and is also automatically used by apachectl
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on (graceful) restart command to make sure Apache doesn't die on restarts
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce because of a configuration which is now broken since the last (re)start.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This way `apachectl restart' can be used inside cronjobs without having
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to expect Apache to be falling down. Additionally the httpd -t can be run
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce via `apachectl configtest'.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#2393
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Minor display fix for "install" target of top-level Makefile:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the displayed installation command was incorrect although the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce executed command was correct. Now they are in sync.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#2402
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Correct initialization of variable `allowed_globals' in http_main.c
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Justin Bradford <justin@ukans.edu>] PR#2400
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Apache would incorrectly downcase the entire Content-Type passed from
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce CGIs. This affected server-push scripts and such which use
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce multipart/x-mixed-replace;boundary=ThisRandomString.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#2394
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: QNX update to properly guess 32-bit systems.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Sean Boudreau <seanb@qnx.com>] PR#2390
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make sure the DSO emulation code for HPUX finds the proprietary shl_xxx()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce functions which are in libdld under HPUX 9/10.
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson [Ralf S. Engelschall] PR#2378
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make sure the "install" target of the top-level Makefile doesn't break
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce because of a return code of 1 from an "if" (for instance under braindead
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Ultrix the result code of an "if" construct is 1 if the "then" clause
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce didn't match). [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add an additional "dummy" target to the "$(LIB)" target in generated
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson modules/xxx/Makefile's to avoid problems with SVR4 Make under "full-DSO"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce situation (no libxxx.a built, only mod_xxx.so's) where LIB and OBJS are
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson empty. [Ralf S. Engelschall, Dean Gaudet, Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Replace two bad sprintf() calls with ap_snprintf() variants in
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson mod_rewrite. [Ralf S. Engelschall]
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson *) Fix missing usage description for MetaFiles directive.
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson [David MacKenzie <djm@va.pubnix.com>] PR#2384
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson *) mod_log_config wouldn't let vhosts use log formats defined in the
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson main server. [Christof Damian <damian@mediaconsult.com>] PR#2090
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson *) mod_usertrack was corrupting the client hostname. As part of the
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson fix, the cookie values were slightly extended to include the
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson fully qualified hostname of the client.
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson [Dean Gaudet] PR#2190, 2229, 2366
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a typo in pool debugging code. [Alvaro Martinez Echevarria]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_unique_id did not work on alpha linux (in general on any
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce architecture that has 64-bit time_t).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Alvaro Martinez Echevarria]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Make SCO 5 (and probably 3) compile again. [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: NCR MPRAS systems have the same bug with SIGHUP restart that
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Solaris systems experience. So define WORKAROUND_SOLARIS_BUG.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Klaus Weber <kweber@chephren.germany.ncr.com>] PR#1973
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change "Options None" to "Options FollowSymLinks" in the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce <Directory /> section of the default access.conf-dist
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (and -win even though it doesn't matter there). This has better
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce performance, and more intuitive semantics. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Updated support for UTS 2.1.2.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dave Dykstra <dwd@bell-labs.com>] PR#2320
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix symbol export list (src/support/httpd.exp) after recent
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce API changes in the child spawning area.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jens-Uwe Mager <jum@helios.de>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Workaround for configure script and old `test' commands which do not
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce support the -x flag (for instance under platforms like Ultrix). This is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce solved by another helper script findprg.sh which searches for Perl and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Awk like PrintPath but _via different names_.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove the system() call from htpasswd.c, which eliminates a system
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce dependancy. ["M.D.Parker" <mdpc@netcom.com>] PR#2332
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Fix compilation failures on NEXTSTEP.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Rex Dieter <rdieter@math.unl.edu>] PR#2293, 2316
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: F_NDELAY is a typo, should have been FNDELAY. There's also
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce O_NDELAY on various systems. [Dave Dykstra <dwd@bell-labs.com>] PR#2313
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: helpers/GuessOS updates for various versions for NCR SVR4.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [juerg schreiner <j.schreiner@zh.ch>,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Bill Houle <Bill.Houle@SanDiegoCA.NCR.COM>] PR#2310
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix recently introduced Win32 child spawning code in mod_rewrite.c which
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce was broken because of invalid ap_pstrcat() -> strcat() transformation.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Proxy Cache Fixes: account for directory sizes, fork off garbage collection
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to continue in background, use predefined types (off_t, size_t, time_t),
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce log the current cache usage percentage at LogLevel debug
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer, based on discussion between Dean Gaudet & Dirk vanGulik]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.3.0
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Using a type map file as a custom error document was not possible.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson [Lars Eilebrecht] PR#1031
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Avoid problems with braindead Awks by additionally searching for gawk
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson and nawk in APACI's configure script.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson [Dave Dykstra <dwd@bell-labs.com>, Ralf S. Engelschall] PR#2319
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Rename md5.h to ap_md5.h to avoid conflicts with native MD5 on
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce some systems. [Randy Terbush]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change usage of perror()+fprintf(stderr,...) in mod_rewrite to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce more proper ap_log_error() variants.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make sure the argument for the --add-module option to APACI's configure
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce script is of type [path/to/]mod_xxx.c because all calculations inside
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce configure and src/Configure depend on this.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#2307
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Changes usage of perror/fprintf to stderr to more proper ap_log_error
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in mod_mime, mod_log_referer, mod_log_agent, and mod_log_config.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Behlendorf]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Various OS/2 cleanups ["Brian Havard" <brianh@kheldar.apana.org.au>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: QNX needed a #include <sys/mman.h>; and now it uses flock
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce serialized accept to handle multiple sockets.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Rob Saccoccio <robs@InfiniteTechnology.com>] PR#2295, 2296
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Have NT properly set the directory for CGI scripts
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (& other spawned children)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [W G Stoddard <wgstodda@us.ibm.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Propagate environment to CGI scripts correctly in Win32.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [W G Stoddard <wgstodda@us.ibm.com>] PR#2294
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Some symbol renaming:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ap_spawn_child_err became ap_spawn_child
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ap_spawn_child_err_buff became ap_bspawn_child
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce spawn_child was obsoleted and moved to compat.h
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Behlendorf]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Upgrade the child spawning code in mod_rewrite for the RewriteMap
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson programs: ap_spawn_child_err() is used and the Win32 case now uses
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson CreateProcess() instead of a low-level execl() (which caused problems in
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson the past under Win32).
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson [Ralf S. Engelschall]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) A few cosmetics and trivial enhancements to APXS to make the
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson generated Makefile more user friendly. [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Proxy Fix: The proxy special failure routine ap_proxyerror()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce was updated to use the normal apache error processing, thereby allowing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce proxy errors to be treated by ErrorDocument's as well. For this
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce purpose, a new module-to-core communication variable "error-notes"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce was introduced; the proxy (and possibly other modules) communicates
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce its error text using this variable. Its content is copied to a new
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce cgi-env-var REDIRECT_ERROR_NOTES for use by ErrorDocuments.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce The old proxy special error routine ap_proxy_log_uerror()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce was replaced by regular ap_log_error() calls, many messages were made
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce more informative.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer] PR#494, 1259
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) SECURITY: A possible buffer overflow in the ftp proxy was fixed.
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson [Martin Kraemer]
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) Transform the configure message "You need root privileges for suEXEC"
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson from a fatal error into a (more friendly) warning because the building
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson ("make") of Apache we can allow, of course. Root privileges are needed
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson only for the installation step ("make install"). So make sure the
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson user is aware of this fact but let him proceed as long as he can.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#2288
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Renamed three more functions to common ap_ prefix which we missed at the
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson Big Symbol Renaming because they're #defines and not real C functions:
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson is_default_port(), default_port(), http_method().
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson [Ralf S. Engelschall]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) A zero-length name after a $ in an SSI document should cause
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson just the $ to be in the expansion. This was broken during the
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson security fixes in 1.2.5. [Dean Gaudet] PR#1921, 2249
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Call ap_destroy_sub_req() in ap_add_cgi_vars() to reclaim some
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson memory. [Rob Saccoccio <robs@InfiniteTechnology.com>] PR#2252
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Fix src/support/httpd.exp (DSO export file which is currently only
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson used under AIX) because of recent changes to function names.
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson [Ralf S. Engelschall]
78d65c654251b02c41628914986723cbec93a7a1Andreas GustafssonChanges with Apache 1.3b7
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Make sure a MIME-type can be forced via a RewriteRule even when no
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson substitution takes place, for instance via the following rule:
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson ``RewriteRule ^myscript$ - [T=application/x-httpd-cgi]'' This was often
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson requested by users in the past to force a single script without a .cgi
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson extension and outside any cgi-bin dirs to be executed as a CGI program.
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson [Ralf S. Engelschall] PR#2254
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) A fix for protocol issues surrounding 400, 408, and
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson 414 responses. [Ed Korthof]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Ignore MaxRequestsPerChild on WIN32. [Brian Behlendorf]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Fix discrepancy in proxy_ftp.c which was causing failures when
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson trying to connect to certain ftpd's, such as anonftpd.
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson [Rick Ohnemus <rick@ecompcon.com>]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Make mod_rewrite use ap_open_piped_log() for RewriteLog directive's
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson logfile instead of fiddling around itself with child spawning stuff.
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson [Ralf S. Engelschall]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Made RefererIgnore case-insensitive.
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Mod_log_agent, mod_log_referer now use ap_open_piped_log for piped logs.
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson [Brian Behlendorf]
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer *) Replace use of spawn_child with ap_spawn_child_err_buff, to make everything
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer "safe" under Win32. In: mod_include.c, mod_mime_magic.c
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer [Brian Behlendorf]
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer *) Improve RFC1413 support. [Bob Beck <beck@bofh.ucs.ualberta.ca>]
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer *) Fix support script `dbmmanage': It was unable to handle some sort
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of passwords, especially passwords with "0" chars.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#2242
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Clicking on "Last Modified" in a fancy index caused a crash. Fixed.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ben Laurie] PR#2238
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer *) WIN32: CGIs could cause a hang (because of a deadlock in the standard C
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer library), so CGI handling has been changed to use Win32 native handles
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer instead of C file descriptors.
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer [Ben Laurie and Bill Stoddard <wgstodda@us.ibm.com>] PR#1129, 1607
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer *) The proxy cache would store an incorrect content-length in the cached
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer file copy after a cache update. That resulted in repeated fetching
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer of the original copy instead of using the cached copy.
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer [Ernst Kloppenburg <kloppen@isr.uni-stuttgart.de>] PR#2094
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson *) The Makefiles assumed that DSO files are build via $(LD). This
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson is broken for two reasons: First we never defined at least LD=ld
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson somewhere to make sure this works (it was silently assumed that most Make
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson provide a built-in LD definition - ARGL!) and second using the generic LD
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson variable is not the truth. Instead a special variable named LD_SHLIB is
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson reasonable because although "ld" is usually the default, the command for
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson building DSO files can be "libtool" or even "cc" on some systems.
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson [Ralf S. Engelschall]
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson *) Replace the AddVersionPlatform directive with ServerTokens which
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson provides for more control over the format of the Server:
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson header line. SERVER_SUBVERSION is no longer supported;
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson all module should use the ap_add_version_component()
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson API function instead. [Jim Jagielski]
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson *) Support for the NCR MP/RAS 3.0
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson [John Withers <withers@semi.kcsc.mwr.irs.gov>]
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson *) The LDFLAGS_SHLIB_EXPORT variable of src/Configuration[.tmpl] was
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson not retrieved in src/Configure and thus was not useable.
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson [Ralf S. Engelschall]
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson *) Various Makefile consistency cleanups:
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson - make OSDIR also automatically be relative to src/ like INCDIR
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson - SUBDIRS is now generated in src/Makefile only and not in
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson Makefile.config because it is a local define for this location.
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson - remove BROKEN_BPRINTF_FLAGS because is it no longer used inside
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson any Makefile but make sure that at least the "-K inline" is kept in
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson CFLAGS for SCO 5.
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson - update the "depend" targets in Makefile.tmpl files to use $(OSDIR), too.
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson - updated the dependencies theirself
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson - removed not existing SHLIB variable from "clean" targets
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson - replaced SHLIB_OBJS/SHLIBS_OBJ consistently with OBJS_PIC because OBJS
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson already exists and OBJS_PIC are also just plain objects and have not
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson directly to do with "shared" things. The only difference is that they
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson contain PIC. So OBJS_PIC is the more canonical name.
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson - Updated the Makefile-dependency lines for OBJS_PIC
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - Removed the Makefile-dependency line in Configure to avoid double
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - replaced ugly xx-so.o/xx.so-o hack with a clean and consistent usage
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of xxx.lo as GNU libtool does with its PIC objects
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - reduce local complexity in modules Makefile.tmpl by moving the last
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce existing target "depend" to the generation section in Configure, too.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - removed the historical $(SPACER) which was used in the past together
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce with BROKEN_BPRINTF_FLAGS to avoid zig-zags in the build process. This
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is no longer needed.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson - force the build and run of the gen_xxx programs under main/ as the
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson first step before building the objects because it looks cleaner
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Make Win32 work again after the /dev/null DoS fix.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Check for buffer overflows in ap_os_canonical_filename.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Don't force ISAPI headers to finish with \n.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Jim Patterson <Jim.Patterson@Cognos.COM>, Ben Laurie] PR#2060
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) When opening "configuration" files (like httpd.conf, htaccess
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and htpasswd), Apache will not allow them to be non-/dev/null
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce device files. This closes a DoS hole. At the same time,
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson we use ap_pfopen to open these files to handle timeouts.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Jim Jagielski, Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Apache will now log the reason its httpd children exit if they exit
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce due to an unexpected signal. (It requires a new porting define,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce SYS_SIGLIST, which if defined should point to a list of text
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson descriptions of the signals available. See PORTING.) [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: chdir() doesn't make sense in a multithreaded environment
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson like WIN32. Before, Win32 CGI's could have had sporadic failures
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce if a chdir call from one thread was made between another chdir call
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and a spawn in another thread. So, for now don't chdir for CGI scripts
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in WIN32. The current CGI "spec" is unclear as to whether it's
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce necessary. Long-term fix is to either serialize the chdir/spawn combo
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce or use WIN32 native calls to spawn a process. This temp fix was
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce necessary to remove this as a showstopper for 1.3's release.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Behlendorf]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Cleanup the suEXEC support in APACI and make it more safe:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce 1. Add big fat hint in INSTALL about risks and to read the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce htdocs/manual/suexec.html document before using the suexec-related
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce configure options.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce 2. Make sure the user has at least provided one --suexec-xxxx option
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (specifies suEXEC parameters) in addition to --enable-suexec option.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce If only --enable-suexec is given APACI stops with a hint to INSTALL
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce 3. Provide two additional --suexec-xxxx options to make the suEXEC
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce configuration complete (especially for package maintainers who else
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce had to patch the source tree) by providing ways to configure minimal
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce UID/GID and safe PATH, too.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Cleanup of the `configure --shadow' process:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - make sure the configure script creates its temporary files in the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce shadow tree to avoid conflicts with parallel configure runs
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - removed unnecessary option "-r" from "rm" call for Makefiles
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - make sure the configure scripts creates the shadow-wrapper Makefile
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce only when no shadow trees already exists
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - make sure "make distclean" removes the shadow-wrapper Makefile but only
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce when no more shadow trees exists
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - overhauled mkshadow.sh script: now its more IFS-safe and approx. twice
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as fast (in the past it needed 70sec, now it runs just 38sec)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - make sure CVS does not complain about the created files
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Makefille.<gnutriple> and directories src.<gnutriple>
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added the ap_add_version_component() API routine and the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce AddVersionPlatform core directive. The first allows modules to
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson declare themselves in the Server response header field value,
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson augmenting the SERVER_SUBVERSION define in the Configuration file
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson with run-time settings (more useful in a loadable-module environment).
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson AddVersionPlatform inserts a comment such as "(UNIX)" or "(Win32)"
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson into the server version string. [Ken Coar] PR#2056
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson *) Minor stability tweaks to avoid core dumps in ap_snprintf.
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson [Martin Kraemer]
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson *) Emit the "Accept-Range" header for the default handler.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Behlendorf] PR#1464
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a note to httpd.conf-dist that apache will on some systems fail
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to start when the Group # is set to a negative or large positive value.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer]
b9c96971964d87c2705c8dc29300ff8103479ee6Andreas Gustafsson *) Make sure the module execution order is correct even when some modules
b9c96971964d87c2705c8dc29300ff8103479ee6Andreas Gustafsson are loaded under runtime (`LoadModule') via the DSO mechanism:
b9c96971964d87c2705c8dc29300ff8103479ee6Andreas Gustafsson 1. The list of loaded modules is now a dynamically allocated one
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and not the original statically list from modules.c
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce 2. The loaded modules are now correctly setup by LoadModule for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce later use by the AddModule command.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce 3. When the DSO mechanism for modules is used APACI's `install'
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce target now enables all created `LoadModule' lines per default because
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce this is both already expected by the user _and_ needed to avoid
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce confusion with the next point and reduces the Makefile.tmpl complexity
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson 4. When the DSO mechanism for modules is used, APACI's `install'
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson target now additionally makes sure the module list is reconstructed
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce via a complete `ClearModuleList+AddModule...' entry.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson 5. The support tool `apxs' now also makes sure an AddModule command
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson is added in addition to the LoadModule command.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce 6. The modules.c generation was extended to now contain two
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce comments to make sure no one is confused by the confusing terminology
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of loading/linking (we use load=link+load & link=activate instead of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the obvious load=activate & link=link :-( )
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This way now there is no longer a difference under execution time between
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce statically and dynamically linked modules.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the generated mod_xxx.c from "apxs -g -f xxx" after the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Big Symbol Renaming. [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a comment to mod_example.c showing the format of a FLAG command
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce handler. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Standardized the time format in mod_status to match that of other
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce places in the code (e.g. DATE_GMT). PR#1551
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix handling of %Z in timefmt strings for those platforms with no time
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce zone information in their tm struct. [Paul Eggert <eggert@twinsun.com>]
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson *) Makes mod_rewrite, mod_log_config, mod_status and the ServerSignature
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce feature compatible with 'UseCanonicalName off' by changing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce r->server->server_hostname to ap_get_server_name(). And I changed some
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson functions which use r->server->port to use ap_get_server_port() instead,
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson because if there's no Port directive in the config r->server->port is 0.
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson [Lars Eilebrecht]
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson *) get/set_module_config are trivial enough to be better off inline. Worth
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson 1.5% performance boost. [Dean Gaudet]
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson *) Fix off-by-one error in ap_proxy_date_canon() in proxy_util.c
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson when ensuring 'x' is at least 30-chars big. [Jim Jagielski,
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson Brian Behlendorf]
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson *) [BS2000 security] BS2000 needs an extra authentication to initialize
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson the task environment to the unprivileged User id. Otherwise CGI scripts
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson would have a way to gain super user access. [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix debug log messages for BS2000/OSD: instead of logging the whole
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson absolute path, only log base name of logging source as is done
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson in unix. [Martin Kraemer]
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson *) Ronald Tschalaer's Accept-Encoding patch - preserve the "x-" in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the encoding type from the Accept-Encoding header (if it's there)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and use it in the response, as that's probably what it'll be expecting.
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson [Ronald.Tschalaer@psi.ch]
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson *) Fix to mod_alias: translate_alias_redir is dealing with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a URI, not a filename, so the check for drive letters for win32
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and emx is not necessary. [Dean Gaudet]
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson *) WIN32: Allow .cmd as an executable extension.
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson [Kari Likovuori <Kari.Likovuori@mol.fi>] PR#2146
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson *) Make Apache header files, and some variables, C++ friendly.
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson [Michael Anderson's <mka@redes.int.com.mx>]
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson *) Child processes can now "signal" (by exiting with a status
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson of APEXIT_CHILDFATAL) the parent process to abort and
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson shutdown the server if the error in the child process was
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson fatal enough. [Jim Jagielski]
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson *) mod_autoindex's find_itme() was sensitive to MIME type case.
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson [Jim Jagielski] PR#2112
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson *) Make sure the referer_log and agent_log entries in the default httpd.conf
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson file are also adjusted for the actual relative installation paths.
c60793c77f6b6b8b66ad57c73cd7eb67e8d7ff6fAndreas Gustafsson [Ralf S. Engelschall] PR#2175
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Extensive overhaul of the way UNCs are handled. [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Make roots of filesystems (e.g. c:/) work. [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Various porting changes to support AIX 3.2, 4.1.5, 4.2 and 4.3.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Additionally the checks for finding the vendor DSO library were moved
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce from mod_so.c to Configure because first it needs $PLAT etc. and second
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_so already uses an abstraction layer and does not fiddle with the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce vendor functions itself.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jens-Uwe Mager, Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Some optimization defines for NetBSD
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jaromir Dolecek <dolecek@ics.muni.cz>] PR#2165
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Dynamic Shared Object (DSO) support for NetBSD.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jaromir Dolecek <dolecek@ics.muni.cz>, Ralf S. Engelschall] PR#2158
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add Dynamic Shared Object (DSO) support for AIX (at least 4.2 but older
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce AIX variants should work fine, too. Even AIX 3.x should work). This is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce accomplished by using the free DSO emulation code from Jens-Uwe Mager
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce which we put into a os/unix/os-dso-aix.c file.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Fix compiler warnings under AIX >= 4.2 where the manual pages imply
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce that we should use NET_SIZE_T == int but the include files force size_t.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix two bugs in select() handling in http_main.c.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Suppress "error(0)" messages for ap_log_error() when the APLOG_NOERRNO
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is unset (as it is in situations like timeouts) where it is unclear
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce whether errno is set or not. [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Just having APACI's localstatedir is too general and not enough for most
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of the systems. 1.3b6 again required manual APACI patches by package
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce maintainers from Red Hat and FreeBSD because for their filesystem layout a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce little bit more flexibility in configuring the paths is needed. Hence we
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce provide three additional configure options (--runtimedir, --logfiledir,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce --proxycachedir) which now can be used for more granular adjustments if
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson --localstatedir is not enough to fit the particular needs. As a nice
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce side-effect this reduces some subdir fiddling in configure+Makefile.tmpl.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make the install root for "make install" in APACI's Makefile overrideable
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce by package authors. This way we are even more friendly to package
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce maintainers (especially Debian and Red Hat) who build for the real prefix
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce via "configure --prefix=/<real>" but use a different local prefix via
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce "make root=/tmp/apache install" for rolling the package without bristling
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the target location on their system.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Workaround sed limitations in APACI's configure script by now
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson substituting in chunks of 50 commands (because for instance HPUX's vendor
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce sed has a limit of max. 98 commands)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#2136
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Adding SOCKS5 support and fixing existing SOCKS4 support.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#2140
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Manually fix some symbols which were not renamed to prefix ap_ in the BIG
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce RENAMING process because they are defined as pre-processor macros instead
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of real functions: bputc, bgetc, piped_log_write_fd, piped_log_read_fd
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Workaround braindead AWK's when generating ap_config.h: The split() and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce substr() functions cannot be nested under vendor AWK from Solaris 2.6.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#2139
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Various bugfixes and cleanups for the APACI configure script:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce o fix IFS handling for _nested_ situation
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson o fix Perl interpreter search: take first one found instead of last one
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce o fix DSO consistency check
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson o print error messages to stderr instead of stdout
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson o add install-quiet for --shadow situation to Makefile stub
da4cfd494c1f8d612c7e1d5407567686b326e511Andreas Gustafsson o reduce complexity by avoiding sed-hacks for rule and module list loops
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix DEBUG_CGI situation in mod_cgi.c [David MacKenzie] PR#2114
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make sure the input field separator (IFS) shell variable is explicitly
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce initialized correctly before _every_ `for' loop and also restored after
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the loops. [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make sure that "make install" doesn't overwrite the `mime.types' and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce `magic' files from an existing Apache installation. Because people often
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce customize these for own MIME and content types.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Dynamic Shared Object (DSO) support for OpenBSD 2.x
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Peter Galbavy, Ralf S. Engelschall] PR#2109
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the path to the ScoreBoardFile in the install-config target, too.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#2105
b9c96971964d87c2705c8dc29300ff8103479ee6Andreas Gustafsson *) Let "configure" clear out the users parameters (provided as shell
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce variables) to avoid side-effects in "src/Configure" when the user
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce exported them (which is not needed, but some users do it).
b9c96971964d87c2705c8dc29300ff8103479ee6Andreas Gustafsson [Ralf S. Engelschall] PR#2101
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Provide backward compatibility from some old src/Configuration.tmpl
b9c96971964d87c2705c8dc29300ff8103479ee6Andreas Gustafsson parameter names to the canonical Autoconf-style shell variable names. For
b9c96971964d87c2705c8dc29300ff8103479ee6Andreas Gustafsson instance CFLAGS vs. EXTRA_CFLAGS. The EXTRA_xxx variants are accepted now
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce but a hint message is displayed. [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make sure that "make install" doesn't overwrite the DocumentRoot and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce CGI scripts from an existing Apache installation.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall, Jim Jagielski] PR#2084
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make `configure --compat' more "compatible" by first
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce let the libexecdir default to EPREFIX/libexec instead of EPREFIX/bin and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce second by making sure the "avoid-bristling-suffix" /apache is not
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce appended to sysconfdir, datadir, localstatedir and includedir when
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce --compat is used. [Ralf S. Engelschall, Lars Eilebrecht]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) NeXT required strdup() in support/logresolve.c
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Francisco Tomei <fatomei@sandburg.unm.edu>] PR#2082
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jens Schleusener <Jens.Schleusener@dlr.de>] PR#2081
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the path to the MimeMagicFile in the install-config target, too.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#2089
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Added HP-UX 11 patches [Jeff Earickson <jaearick@colby.edu>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If you start apache with the -S command line option it will dump
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce out the parsed vhost settings. This is useful for folks trying
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson to figure out what is wrong with their vhost configuration.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson (Other dumps may be added in the future.) [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add %pA, %pI, and %pp codes to ap_vformatter (and hence ap_bprintf,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ap_snprintf, and ap_psprintf). See include/ap.h for docs.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Because /usr/local/apache is the default prefix the ``configure
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson --compat'' option no longer has to set prefix, again. This way the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce --compat option honors a leading --prefix option. [Lars Eilebrecht]
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson *) PORT: Cast the first argument of dlopen() in ap_os_dso_load()
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson to `char *' under OSF1 and FreeBSD 2.x where it is defined this way
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson to avoid "discard const" warnings. [Ralf S. Engelschall]
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson *) If a specific handler is set for a file yet the request still
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson ends up being handled by the default handler, log an error
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson message before handling it. This catches things such as trying
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson to use SSIs without mod_include enabled. [Marc Slemko]
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson *) Fix error logging for the startup case where ap_log_error() still uses
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson stderr as the target. Now the default log level is honored here, too.
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson [Ralf S. Engelschall]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) PORT: Make sure some AWK's don't fail in src/Configure with "string too
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson long" errors when generating the MODULES entry for src/Makefile
f1fd37f759991616d454ce371a2390da45141593Andreas Gustafsson [Ben Hyde, Ralf S. Engelschall]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Make sure src/Configure doesn't complain about the old directory
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson /usr/local/etc/httpd/ when APACI is used. [Lars Eilebrecht]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.3b6
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Clean up warnings on Ultrix and HPUX. [Ben Hyde]
c71787bd6356c92e9c7d0a174cd63ab17fcf34c6Eric Luce *) Adding DSO support for the HP/UX platform by emulating the dlopen-style
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce interface via the similar but proprietary HP/UX shl_xxx-style system
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson calls. [Ralf S. Engelschall]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) PORT: Updated UnixWare 2.0.x and 2.1.x entries for DSO support and made
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson APACI Makefile.tmpl "install" target more robust for sensible UnixWare
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Make. [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) ++++ THE BIG SYMBOL RENAMING ++++
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson To avoid symbol clashes with third-party code compiled into the server,
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson we globally applied the prefix "ap_" to the following classes of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - Apache provided general functions (e.g., ap_cpystrn)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - Public API functions (e.g., palloc, bgets)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - Private functions which we can't make static (because of
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson cross-object usage) but should be (e.g., new_connection)
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson For backward source compatibility a new header file named compat.h was
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce created which provides defines for the old symbol names and can be used
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson by third-party module authors.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [The Apache Group]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Added dynamic shared object (DSO) support for SVR4-derivates: The
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce problem under SVR4 is that there is no command flag to force the linker
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to export the global symbols of the httpd executable therewith they are
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce available to the DSO's. Instead of problematic hacks like creating a
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson dummy.so file (containing dummy references to all global symbols) the
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson httpd binary is linked against, we use a clean trick stolen from Perl 5:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Placing the Apache core code itself into a DSO library named libhttpd.so.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This way the global symbols _HAVE_ to be exported and thus are available
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to any manually loaded DSO's under runtime. To reduce the impact to the
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson user to null we go even further and create a stub httpd executable which
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson automatically keeps track of the DSO library loading itself and thus
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson hides the complete mechanism from the user. Although the generation of
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson this DSO library is automatically triggered for platforms which
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson essentially need it (mostly all SVR4-derivates) it can be also enabled
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson manually via the Rule SHARED_CORE. This can be interesting in the future
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson where we perhaps exploit this libhttpd.so mechanism for providing nifty
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson features like graceful upgrades, or whatever.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Ralf S. Engelschall, Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Build the libraries before building the rest of the tools. [Ben Hyde]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Add "distclean" target to src/-Makefiles to provide "make distclean" also
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson inside the src subtree (i.e. for non-APACI users). Following GNU Makefile
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce conventions while "clean" removes only stuff created by "all" targets,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce "distclean" additionally removes the stuff from the configuration
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce process. This way "make distclean" (hence the name) provides a fresh
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce source tree as it was for distribution.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson [Ralf S. Engelschall]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Allow top-level (APACI) Makefile to break on build errors
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson the same way the src/ subtree Makefiles breaks on them by replacing the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce initial APACI sed-subdir-display-kludge with a more clean
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce variable-passing-solution: variable SDP can optionally hold the subdir
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce prefix which is consistently used for displaying the subdir movement.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson This way even the top-level Makefile can stop correctly on errors as the
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson user expects. [Ralf S. Engelschall]
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson *) Fixed ordering of argument checks for RewriteBase directive.
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson [Todd Eigenschink <eigenstr@mixi.net>] PR#2045
6b35c2fec9938cbd4cc39f2d054086d8af3c343dAndreas Gustafsson *) Change Win32 IS_MODULE to SHARED_MODULE to match Unix' method of
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson indicating that a module is being compiled for dynamic loading. Also
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson remove #define IS_MODULE from modules and add SHARED_MODULE define
0a792c72e6b4aefed6fb9dcbf004f1100fe9dfe7Andreas Gustafsson to the mak/dsp files. [Alexei Kosut]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Reduce logging level of "normal" warning messages to APLOG_INFO,
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson since we are now logging APLOG_WARNING by default. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: OS/2 tweak to deal with multiple .exe targets. [Brian Havard]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Add documentation file and src/Configuration.tmpl entry for the
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson experimental mod_mmap_static module. Because although it is and marked as
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce an experimental one it is distributed and thus should be documented and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce prepared for configuration the same way as all others modules.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add query (-q) option to apxs support tool to be able to manually query
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce specific settings from apxs. This is needed for instance when you
fafd1d771905532e8dc3efa2ce90ce4c9e74af61Eric Luce manually want to access Apache's header files and you need to assemble
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the -I option. Now you can do -I`apxs -q INCLUDEDIR`.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Now src/Configure uses a fallback strategy for the shared object support
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on platforms where no explicit information is available: If a Perl
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce installation exists we ask it about its shared object support and if it's
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the dlopen-style one we shamelessly guess the compiler and linker flags
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for creating shared objects from Perls knowledge. Of course, the user is
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson warning about what we are doing and informed that he should send us
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson the guessed flags when they work. [Ralf S. Engelschall]
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson *) Provide APACI --without-support option to be able to disable the build
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson and installation of the support tools from the src/support/ area.
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson Although its useful to have these installed per default we should provide
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a way to compile and install without them for backward-compatibility.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add of the new APache eXtenSion (apxs) support tool for building and
027e89d47af308db4b41761ca9f847c026b63ec8Andreas Gustafsson installing modules into an _already installed_ Apache package through the
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson dynamic shared object (DSO) mechanism [mod_so.c]. The trick here is that
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson this approach actually doesn't need the Apache source tree. The
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (APACI-installed) server package is enough, because this now includes the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Apache C header files (PREFIX/include) and the new APXS tool
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (SBINDIR/apxs). The intend is to provide a handy tool for third-party
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson module authors to build their Apache modules _OUTSIDE_ the Apache source
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson tree while avoiding them to fiddle around with the totally platform
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce dependend way of compiling DSO files. The tool supports all ranges of
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson modules, from trivial ones (single mod_foo.c) to complex ones (like PHP3
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson which has a mod_php3.c plus a pre-built libmodphp3-so.a) and even can
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson on-the-fly generate a minimalistic Makefile and sample module for the
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson first step to provide both a quick success event and to demonstrate the
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson APXS mechanism to module authors. [Ralf S. Engelschall]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) Fix core dumps in use of CONNECT in proxy.
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson [Rainer.Scherg@rexroth.de] PR#1326, #1573, #1942
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Modify the log directives in httpd.conf-dist files to use CustomLog
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce so that users have examples of how CustomLog can be used.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Lars Eilebrecht]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Add the new Apache Autoconf-style Interface (APACI) for the top-level of
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson the Apache distribution tree. Until Apache 1.3 there was no real
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer out-of-the-box batch-capable build and installation procedure for the
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson complete Apache package. This is now provided by a top-level "configure"
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson script and a corresponding top-level "Makefile.tmpl" file. The goal is
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson to provide a GNU Autoconf-style frontend which is capable to both drive
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson the old src/Configure stuff in batch and additionally installs the
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson package with a GNU-conforming directory layout. Any options from the old
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson configuration scheme are available plus a lot of new options for flexibly
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson customizing Apache. [Ralf S. Engelschall]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) The floating point ap_snprintf code wasn't threadsafe.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson Had to remove the HAVE_CVT macro in order to do threadsafe
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson calling of the ?cvt() floating point routines. [Dean Gaudet]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) PORT: Add the SCO_SV port. [Jim Jagielski] PR#1962
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) PORT: IRIX needs the -n32 flag iff using the 'cc' compiler
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson [Jim Jagielski] PR#1901
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) BUG: Configure was using TCC and CC inconsistently. Make sure
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson Configure knows which CC we are using. [Jim Jagielski]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) "Options +Includes" wasn't correctly merged if "+IncludesNoExec"
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson was defined in a parent directory. [Lars Eilebrecht]
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer *) API: ap_snprintf() code mutated into ap_vformatter(), which is
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer a generic printf-style routine that can call arbitrary output
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce routines. Use this to replace http_bprintf.c. Add new routines
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson psprintf(), pvsprintf() which allocate the exact amount of memory
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson required for a string from a pool. Use psprintf() to clean up
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce various bits of code which used ap_snprintf()/pstrdup().
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: HAVE_SNPRINTF doesn't do anything any longer. This is because
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ap_snprintf() has different semantics and formatting codes than
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson snprintf(). [Dean Gaudet]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) SIGXCPU and SIGXFSZ are now reset to SIG_DFL at boot-time. This
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson is necessary on at least Solaris where the /etc/rc?.d scripts
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson are run with these signals ignored, and "SIG_IGN" settings are
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson maintained across exec().
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Rein Tollevik <reint@sys.sol.no>] PR#2009
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the check for symbolic links in ``RewriteCond ... -l'': stat() was
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson used instead of lstat() and thus this flag didn't work as expected.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Rein Tollevik <reint@sys.sol.no>] PR#2010
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the proxy pass-through feature of mod_rewrite for the case of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce existing QUERY_STRING now that mod_proxy was recently changed because of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the new URL parsing stuff. [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) A few changes to scoreboard definitions which helps gcc generate
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce better code. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) ANSI C doesn't guarantee that "int foo : 2" in a structure will
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce be a signed bitfield. So mark a few bitfields as signed to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ensure correct code. [Dean Gaudet]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) The default for HostnameLookups was changed to Off, but there
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce was a problem and it wasn't taking effect. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Clean up undefined signals on some platforms (SCO, BeOS).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) After a SIGHUP the listening sockets in the parent weren't
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce properly marked for closure on fork().
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [J�rgen Keil <jk@tools.de>] PR#2000
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow %2F in two situations: 1) it is in the query part of the URI,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce therefore not exposed to %2F -> '/' translations and 2) the request
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is a proxy request, so we're not dealing with a local resource anyway.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson Without this, the proxy would fail to work for any URL's with
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson %2f in them (occurs quite often in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce http://.../cgi-bin/...?http%3A%2F%2F... references) [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Protect against FD_SETSIZE mismatches. [Dean Gaudet]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Make the shared object compilation command more portable by avoiding
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the direct combination of `-c' & `-o' which is not honored by some
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce compilers like UnixWare's cc. [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: the proxy was creating filenames missing the last four
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce characters. While this normally doesn't stop anything from
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce working, it can result in extra collisions.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Tim Costello <tjcostel@socs.uts.edu.au>] PR#1890
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Now mod_proxy uses the response string (in addition to the response status
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce code) from the already used FTP SIZE command to setup the Content-Length
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson header if available. [Ralf S. Engelschall] PR#1183
f37eb9482057adf62de35e634bfd574e59676950Andreas Gustafsson *) Reanimated the (still undocumented) proxy receive buffer size directive:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Renamed from ReceiveBufferSize to ProxyReceiveBufferSize because the old
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce name was really too generic, added documentation for this directive to
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson the mod_proxy.html and corrected the hyperlink to it in the
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson new_features_1.3.html document. [Ralf S. Engelschall] PR#1348
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a bug in the src/helpers/fp2rp script and make it a little bit
c6433f2b214f49e691d126b7276980c20f74b6bbAndreas Gustafsson faster [Martin Kraemer]
c6433f2b214f49e691d126b7276980c20f74b6bbAndreas Gustafsson *) Make Configure die when you give it an unknown command switch.
c6433f2b214f49e691d126b7276980c20f74b6bbAndreas Gustafsson *) Add five new and fresh manpages for the support programs: dbmmanage.1,
c6433f2b214f49e691d126b7276980c20f74b6bbAndreas Gustafsson suexec.8, htdigest.1, rotatelogs.8 and logresolve.8. Now all up-to-date
c6433f2b214f49e691d126b7276980c20f74b6bbAndreas Gustafsson and per default compiled support programs have manual pages - just to
c6433f2b214f49e691d126b7276980c20f74b6bbAndreas Gustafsson document our stuff a little bit more and to be able to do really
c6433f2b214f49e691d126b7276980c20f74b6bbAndreas Gustafsson Unix-like installations ;-) [Ralf S. Engelschall]
c6433f2b214f49e691d126b7276980c20f74b6bbAndreas Gustafsson *) Major cleanups to the Configure script to make it and its generated
c6433f2b214f49e691d126b7276980c20f74b6bbAndreas Gustafsson Makefiles again readable and maintainable: add SRCDIR option, removed
c6433f2b214f49e691d126b7276980c20f74b6bbAndreas Gustafsson INCLUDES_DEPTH[0-2] kludge, cleanup of TARGET option, cleanup of
c6433f2b214f49e691d126b7276980c20f74b6bbAndreas Gustafsson generated sections, consequently added Makefile headers with inheritance
c6433f2b214f49e691d126b7276980c20f74b6bbAndreas Gustafsson information, added subdir movement messages for easier following where
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the build process currently stays (more verbose then standard Make, less
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson verbose than GNU make), same style to comments in the Configure script,
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson added Apache license header, fixed a few bugs, etc. [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add the new ApacheBench program "ab" to src/support/: This is derived
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce from the ZeusBench benchmarking program and can be used to determine the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce response performance of an Apache installation. This version is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce officially licensed with Zeus Technology, Ltd. See the license agreement
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson statements in <199803171224.NAA24547@en1.engelschall.com> in apache-core.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: Various core functions that are definately not part of the API
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson have been made static, and a few have been marked API_EXPORT. Still
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson more have been marked CORE_EXPORT and are not intended for general
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce use by modules. [Doug MacEachern, Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_proxy was not clearing the Proxy-Connection header from
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson requests; now it does. This did not violate any spec, however
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson causes poor interactions when you are talking to remote proxies.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Marc Slemko] PR#1741
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Various cleanups to the command line interface and manual pages.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) cfg_getline() was not properly handling lines that did not end
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce with a line termination character. [Marc Slemko] PR#1869, 1909
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Performance tweak to mod_log_config. [Dmitry Khrustalev]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Clean up some undocumented behavior of mod_setenvif related to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce "merging" two SetEnvIf directives when they match the same header
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and regex. Document that mod_setenvif will perform comparisons in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the order they appear in the config file. Optimize mod_setenvif by
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson doing more work at config time rather than at runtime.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) src/include/ap_config.h now wraps it's #define's with #ifndef/#endif's
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to allow for modules to overrule them and to reduce redefinition
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce warnings [Jim Jagielski]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) [PORT] For A/UX change the OS-#define for -DAUX to -DAUX3.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Making the hard-coded cross-module function call mime_find_ct() (from
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson mod_proxy to mod_mime) obsolete by making sure the API hook for MIME type
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson checking is really called even for proxy requests except for URLs with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce HTTP schemes (because there we can optimize by not running the type
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce checking hooks due to the fact that the proxy gets the MIME Content-type
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce from the remote host later). This change cleans up mod_mime by removing
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson the ugly export kludge, makes the one-liner file mod_mime.h obsolete, and
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson especially unbundles mod_proxy and mod_mime. This way they both now can
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce be compiled as shared objects and are no longer tied together.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) util.c cleanup and speedup. [Dean Gaudet]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) API: Clarification, pstrndup() will always copy n bytes of the source
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and NUL terminate at the (n+1)st byte. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Mark module command_rec and handler_rec structures const so that they
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson end up in the read-only data section (and are friendlier to systems
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson that don't do optimistic memory allocation on fork()). [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add check to the "Port" directive to make sure the specified
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce port is in the appropriate range. [Ben Hyde]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Performance improvements to invoke_handler().
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dmitry Khrustalev <dima@bog.msu.su>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added support for building shared objects even for library-style modules
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (which are built from more than one object file). This now provides the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ability to build mod_proxy as a shared object module. Additionally
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson modules like mod_example are now also supported for shared object
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce building because the generated Makefiles now no longer assume there is at
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson least one statically linked module. [Ralf S. Engelschall]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) API: Clarify usage of content_type, handler, content_encoding,
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson content_language and content_languages fields in request_rec. They
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce must always be lowercased; and the strings pointed to shouldn't
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce be modified (you must copy them to modify them). Fix a few bugs
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce related to this. [Dean Gaudet]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) API: Clarification: except for RAW_ARGS, all command handlers can
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce treat the char * parameters as permanent, and modifiable. There
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is no need to pstrdup() them. Clean up some needless pstrdup().
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Now mod_so keeps track of which module shared objects with which names
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce are loaded and thus avoids multiple loading and unloading and irritating
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce error_log messages. [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Prior to the existence of mod_setenv it was necessary to tweak the TZ
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce environment variable in the apache core. But that tweaking interferes
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson with mod_setenv. So don't tweak if the user has specified an explicit
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson TZ variable. [Jay Soffian <jay@cimedia.com>] PR#1888
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) rputs() did not calculate r->sent_bodyct properly.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Siegmund Stirnweiss <siegst@kat.ina.de>] PR#1900
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) The CGI spec says that REMOTE_HOST should be set to the remote hosts's
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson name, or left unset if this value is unavailable. Apache was setting
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer it to the IP address when unavailable.
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson [Tony Finch <fanf@demon.net>] PR#1925
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Various improvements to the configuration and build support for compiling
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson modules as shared objects. Especially Solaris 2.x, SunOS 4.1, IRIX and
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson OSF1 support with GCC and vendor compilers was added. This way shared
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson object support is now provided out-of-the-box for FreeBSD, Linux,
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson Solaris, SunOS, IRIX and OSF1. In short: On all major platforms!
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson [Ralf S. Engelschall]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) Minor cleanup in http_main -- split QNX and OS2 specific "mmap"
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson scoreboard code into separate #defines -- USE_POSIX_SCOREBOARD
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson and USE_OS2_SCOREBOARD. [Dean Gaudet]
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer *) Fix one more special locking problem for RewriteMap programs in
56f1285ca5d97d3205b74c32dc4de1ea7b69fea1Michael Sawyer mod_rewrite: According to the documentation of flock(), "Locks are on
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce files, not file descriptors. That is, file descriptors duplicated
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson through dup(2) or fork(2) do not result in multiple instances of a lock,
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson but rather multiple references to a single lock. If a process holding a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce lock on a file forks and the child explicitly unlocks the file, the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce parent will lose its lock.". To overcome this we have to make sure the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce RewriteLock file is opened _AFTER_ the childs were spawned which is now
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the case by opening it in the child_init instead of the module_init API
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce hook. [Ralf S. Engelschall] PR#1029
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change to Location and LocationMatch semantics. LocationMatch no
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson longer lets a single slash match multiple adjacent slashes in the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce URL. This change is for consistency with RewriteRule and
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson AliasMatch. Multiple slashes have meaning in URLs that they do
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson not have in (some) filesystems. Location on the other hand can
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce be considered a shorthand for a more complicated regex, and it
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce does match multiple slashes with a single slash -- which is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce also consistent with the Alias directive.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Dean Gaudet] related PR#1440
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix bug with mod_mime_magic causing certain files, including files
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson of length 0, to result in no response from the server.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The Configure script now generates src/include/ap_config.h which
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson contains the set of defines used when Apache is compiled on a platform.
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson This file can then be included by external modules before including
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson any Apache header files in case they are being built separately from
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson Apache. Along with this change, a couple of minor changes were
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson made to make Apache's #defines coexist peacefully with any autoconf
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson defines an external module might have. [Rasmus Lerdorf]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) Fix mod_rewrite for the ugly API case where <VirtualHost> sections exist
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson but without any RewriteXXXXX directives. Here mod_rewrite is given no
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson chance by the API to initialize its per-server configuration and thus
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson receives the wrong one from the main server. This is now avoided by
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson remembering the server together with the config structure while
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce configuring and later assuming there is no config when we see a
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson difference between the remembered server and the one calling us.
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson [Ralf S. Engelschall] PR#1790
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) Fixed the DBM RewriteMap support for mod_rewrite: First the support now
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson is automatically disabled under configure time when the dbm_xxx functions
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson are not available. Second, two heavy source code errors in the DBM
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson support code were fixed. This makes DBM RewriteMap's usable again after
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson a long time of brokenness. [Ralf S. Engelschall] PR#1696
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Now all configuration files support Unix-style line-continuation via
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson the trailing backslash ("\") character. This enables us to write down
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson complex or just very long directives in a more readable way. The
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson backslash character has to be really the last character before the
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson newline and it has not been prefixed by another (escaping) backslash.
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson [Ralf S. Engelschall]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) When using ProxyPass the ?querystring was not passed correctly.
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson [Joel Truher <truher@wired.com>]
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson *) To deal with modules being compiled and [dynamically] linked
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson at a different time from the core, the SERVER_VERSION and
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson SERVER_BUILT symbols have been abstracted through the new
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson API routines apapi_get_server_version() and apapi_get_server_built().
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson [Ken Coar] PR#1448
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) WIN32: Preserve trailing slash in canonical path (and hence
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson in PATH_INFO). [Paul Sutton, Ben Laurie]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) PORT: USE_PTHREAD_SERIALIZED_ACCEPT has proven unreliable
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson depending on the rev of Solaris and what mixture of modules
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson are in use. So it has been disabled, and Solaris is back to
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson using USE_FCNTL_SERIALIZED_ACCEPT. Users may experiment with
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson USE_PTHREAD_SERIALIZED_ACCEPT at their own risk, it may speed
78d65c654251b02c41628914986723cbec93a7a1Andreas Gustafsson up static content only servers. Or it may fail unpredictably.
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson [Dean Gaudet] PR#1779, 1854, 1904
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) mod_test_util_uri.c created which tests the logic in util_uri.c.
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) API: Rewrite of absoluteURI handling, and in particular how
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson absoluteURIs match vhosts. Unless a request is a proxy request, a
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson "http://host" url is treated as if a similar "Host:" header had been
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson supplied. This change was made to support future HTTP/1.x protocols
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson which may require clients to send absoluteURIs for all requests.
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson In order to achieve this change subtle changes were made to the API. In a
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson request_rec, r->hostlen has been removed. r->unparsed_uri now exists so
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson that the unmodified uri can be retrieved easily. r->proxyreq is not set
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson by the core, modules must set it during the post_read_request or
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson translate_names phase.
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson Plus changes to the virtualhost test suite for absoluteURI testing.
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson This fixes several bugs with the proxy proxying requests to vhosts
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson managed by the same httpd.
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson *) API: Cleanup of code in http_vhost.c, and remove vhost matching
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson code from mod_rewrite. The vhost matching is now performed by a
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson globally available function matches_request_vhost(). [Dean Gaudet]
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson *) Reduce memory usage, and speed up ServerAlias support. As a
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson side-effect users can list multiple ServerAlias directives
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson and they're all considered.
9090a36b61a90746738f66bce09ceaf8d8491d7eAndreas Gustafsson [Chia-liang Kao <clkao@cirx.org>] PR#1531
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson *) The "poly" directive in image maps did not include the borders of the
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson polygon, whereas the "rect" directive does. Fix this inconsistency.
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson [Konstantin Morshnev <moko@design.ru>] PR#1771
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson *) Make \\ behave as expected. [Ronald.Tschalaer@psi.ch]
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson *) Add the `%a' construct to LogFormat and CustomLog to log the client IP
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson address. [Todd Eigenschink <eigenstr@mixi.net>] PR#1885
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson *) API: A new source module main/util_uri.c; It contains a routine
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson parse_uri_components() and friends which breaks a URI into its component
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson parts. These parts are stored in a uri_components structure called
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson parsed_uri within each request_rec, and are available to all modules.
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson Additionally, an unparse routine is supplied which re-assembles the URI
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson components back to an URI, optionally hiding the username:password@ part
8cccaeaee13993c49009d3915806c1d0bd03743bAndreas Gustafsson from ftp proxy requests, and other useful routines. Within the structure,
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson you find on a ready-for-use basis:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce scheme; /* scheme ("http"/"ftp"/...) */
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson hostinfo; /* combined [user[:password]@]host[:port] */
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce user; /* user name, as in http://user:passwd@host:port/ */
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce password; /* password, as in http://user:passwd@host:port/ */
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce hostname; /* hostname from URI (or from Host: header) */
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce port_str; /* port string (integer representation is in "port") */
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce path; /* the request path (or "/" if only scheme://host was given) */
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce query; /* Everything after a '?' in the path, if present */
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson fragment; /* Trailing "#fragment" string, if present */
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This is meant to serve as the platform for *BIG* savings in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce code complexity for the proxy module (and maybe the vhost logic).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Make all possible meta-construct expansions ($N, %N, %{NAME} and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ${map:key}) available for all location where a string is created in
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson mod_rewrite rewriting rulesets: 1st arg of RewriteCond, 2nd arg of
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson RewriteRule and for the [E=NAME:STRING] flag of RewriteRule. This way the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce possible expansions are consequently usable at all string creation
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce locations. [Ralf S. Engelschall]
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson *) Fix initialization of RewriteLogLevel (default now is 0 as documented
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and not 1) and the per-virtual-server merging of directives. Now all
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directives except `RewriteEngine' and `RewriteOption' are either
86c1ac00da33c2ecc14f5ca69fba40186460ce57Andreas Gustafsson completely overridden (default) or completely inherited (when
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce `RewriteOptions inherit') is used. [Ralf S. Engelschall] PR#1325
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix `RewriteMap' program lookup in situations where such maps are
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce defined but disabled (`RewriteEngine off') in per-server context.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#1431
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix bug introduced in 1.3b4-dev, config with no Port setting would cause
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce server to bind to port 0 rather than 80. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix long-standing problem with RewriteMap _programs_ under Unix derivates
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (like SunOS and FreeBSD) which don't accept the locking of pipes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directly. A new directive RewriteLock is introduced which can be used to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce setup a separate locking file which then is used for synchronization.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall] PR#1029
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: The server root is obtained from the registry key
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce HKLM\SOFTWARE\Apache Group\Apache\<version> (version is currently
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce "1.3 beta"), unless overridden by the -d command line flag. The
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce value is stored by running "apache -i -d serverroot". [Paul Sutton]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Merged os/win32/mod_dll.c into modules/standard/mod_so.c to support
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce dynamic loading on Win32 and Unix via the same module. [Paul Sutton]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Now mod_rewrite no longer makes problematic assumptions on the characters
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a username can contain when trying to expand it via /etc/passwd.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The mod_setenvif BrowserMatch backwards compatibility command did not
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce work properly with spaces in the regex. [Ronald Tschalaer] PR#1825
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add new RewriteMap types: First, `rnd' which is equivalent to the `txt'
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce type but with a special post-processing for the looked-up value: It
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce parses it into alternatives according to `|' chars and then only one
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce particular alternative is chosen randomly (this is an essential
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce functionality needed for balancing between backend-servers when using
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Apache as a Reverse Proxy. The looked up value here is a list of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce servers). Second, `int' with the built-in maps named `tolower' and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce `toupper' which can be used to map URL parts to a fixed case (this is an
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce essential feature to fix the case of server names when doing mass
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce virtual-hosting with the help of mod_rewrite instead of using
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce <VirtualHost> sections). [Ralf S. Engelschall, parts based on code from
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Jay Soffian <jay@cimedia.com>] PR#1631
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a new directive to mod_proxy similar to ProxyPass: `ProxyPassReverse'.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This directive lets Apache adjust the URL in Location-headers on HTTP
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce redirect responses sent by the remote server. This way the virtually
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mapped area is no longer left on redirects and thus by-passed which is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce especially essential when running Apache as a reverse proxy.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Hide Proxy-Authorization from CGI/SSI/etc just like Authorization is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce hidden. [Alvaro Martinez Echevarria]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Apache will, when started with the -X (single process) debugging flag,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce honor the SIGINT or SIGQUIT signals again now. This capability got lost
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a while ago during OS/2 signal handling changes.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) [PORT] Work around the fact that NeXT runs on more than the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce m68k chips in mod_status [Scott Anguish and Timothy Luoma
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce <luomat@peak.org>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) [PORT] Recognize FreeBSD versions so we can use the OS regex as well
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as handling unsigned-chars for FreeBSD v3 and v2 [Andrey Chernov
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce <ache@nagual.pp.ru> and Jim] PR#1450
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Use SA_RESETHAND or SA_ONESHOT when installing the coredump handlers.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce In particular the handlers could trigger themselves into an infinite
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce loop if RLimitMem was used with a small amount of memory -- too small
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for the signal stack frame to be set up. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix problems with absoluteURIs introduced during 1.3b4. [Dean Gaudet,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Alvaro Martinez Echevarria <alvaro@lander.es>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix multiple UserDir problem introduced during 1.3b4-dev.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#1850
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) ap_cpystrn() had an off-by-1 error.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Charles Fu <ccwf@klab.caltech.edu>] PR#1847
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: As Ken suggested the check_cmd_context() function and related
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce defines are non-static now so modules can use 'em. [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_info would occasionally produce an unpaired <tt> in its
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce output. Fixed. [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) By default AIX binds a process (and it's children) to a single
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce processor. httpd children now unbind themselves from that cpu
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and re-bind to one selected at random via bindprocessor()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Doug MacEachern]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Linux 2.0 and above implement RLIMIT_AS, RLIMIT_DATA has almost no
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce effect. Work around it by using RLIMIT_AS for the RLimitMEM
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directive. [Enrik Berkhan <enrik@inka.de>] PR#1816
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_mime_magic error message should indicate the filename when
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce reads fail. ["M.D.Parker" <mdpc@netcom.com>] PR#1827
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Previously Apache would permit </Files> to end <FilesMatch> (and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce similary for Location and Directory), now this is diagnosed as an
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce error. Improve error messages for mismatched sections (<Files>,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce <FilesMatch>, <Directory>, <DirectoryMatch>, ...).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet, Martin Kraemer]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) <Files> is not permitted within <Location> (because of the
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson semantic ordering). [Dean Gaudet] PR#379
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) <Files> with wildcards was broken by the change in wildcard
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce semantics (* does not match /). To fix this, <Files> now
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson apply only to the basename of the request filename. This
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce fixes some other inconsistencies in <Files> semantics
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (such as <Files a*b> not working). [Dean Gaudet] PR#1817
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Removed bogus "dist.tar" target from Makefile.tmpl and make sure
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce backup files are removed on "clean" target [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Add -lm to LIBS for HPUX. [Dean Gaudet] PR#1639
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Various errors from select() and accept() in child_main() would
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce result in an infinite loop. It seems these two tickle kernel
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce or library bugs occasionally, and result in log spammage and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a generally bad scene. Now the child exits immediately,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce which seems to be a good workaround.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#1747, 1107, 588, 1787, 987, 588
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Cleaned up some race conditions in unix child_main during
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce initialization. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY: "UserDir /abspath" without a * in the path would allow
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce remote users to access "/~.." and bypass access restrictions
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (but note /~../.. was handled properly).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Lauri Jesmin <jesmin@ut.ee>] PR#1701
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: os_is_path_absolute() now takes a const char * instead of a char *.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.3b5
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Source file dependencies in Makefile.tmpl files throughout the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce source tree were updated to accurately reflect reality.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Preserve the content encoding given by the AddEncoding directive
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce when the client doesn't otherwise specify an encoding.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ronald Tschalaer <Ronald.Tschalaer@psi.ch>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Sort out problems with canonical filename handling happening too late.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet, Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.3b4
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The module structure was modified to include a *dynamic_load_handle
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in the STANDARD_MODULE_STUFF portion, and the MODULE_MAGIC_NUMBER
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce has been bumped accordingly. [Paul Sutton]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) All BrowserMatch directives mentioned in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce htdocs/manual/known_client_problems.html are in the default
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce configuration files. [Lars Eilebrecht]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) MiNT port update. [Jan Paul Schmidt]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) HTTP/1.1 requires x-gzip and gzip encodings be treated
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce equivalent, similarly for x-compress and compress. Apache
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce now ignores a leading x- when comparing encodings. It also
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce preserves the encoding the client requests (for example if
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce it requests x-gzip, then Apache will respond with x-gzip
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in the Content-Encoding header).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ronald Tschalaer <Ronald.Tschalaer@psi.ch>] PR#1772
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a memory leak on keep-alive connections. [Igor Tatarinov]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added mod_so module to support dynamic loading of modules on Unix
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (like mod_dld for Win32). This replaces mod_dld.c. Use SharedModule
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce instead of AddModule in Configuration to build shared modules
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Sameer Parekh, Paul Sutton]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Minor cleanups to r->finfo handling in some modules.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Abstract read()/write() to ap_read()/ap_write().
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Makes it easier to add other types of IO code such as SFIO.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Randy Terbush]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: Generalize default_port manipulations to make support of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce different protocols easier. [Ben Laurie, Randy Terbush]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) There are many cases where users do not want Apache to form
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce self-referential urls using the "canonical" ServerName and Port.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce The new UseCanonicalName directive (default on), if set to off
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce will cause Apache to use the client-supplied hostname and port.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce API: Part of this change required a change to the construct_url()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce prototype; and the addition of get_server_name() and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce get_server_port().
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson [Michael Douglass <mikedoug@texas.net>, Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR#315, 459, 485, 1433
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Yet another rearrangement of the source tree.. now all the common
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce header files are in the src/include directory. The -Imain -Iap
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce references in Makefiles have been changed to the simpler -Iinclude
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce instead. In addition to simplifying the build a little bit, this
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce also makes it clear when a module is referencing something in a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce other than kosher manner (e.g., the proxy including mod_mime.h).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Module-private header files (the proxy, mod_mime, the regex library,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and mod_rewrite) have not been moved to src/include; nor have
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the OS-abstraction files. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a bug where r->hostname didn't have the :port stripped
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce from it. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Tweaked the headers_out table size, and the subprocess_env
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce table size guess in rename_original_environment(). Added
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson MAKE_TABLE_PROFILE which can help discover make_table()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce calls that use too small an initial guess, see alloc.c.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Options and AllowOverride weren't properly merging in the main
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce server setting inside vhosts (only an issue when you have no
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce <Directory> or other section containing an Options that affects
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a request). Options +foo or -foo in the main_server wouldn't
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce affect the main_server's lookup defaults. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Variable 'cwd' was being used pointlessly before being set.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ken Coar] PR#1738
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) r->allowed handling cleaned up in the standard modules.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Some case-sensitivity issues cleaned up to be consistent with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce RFC2068. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SIGURG doesn't exist everywhere.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Mark Andrew Heinrich <heinrich@tinderbox.Stanford.EDU>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_unique_id was erroneously generating a second unique id when
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce an internal redirect occured. Such redirects occur, for example,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce when processing a DirectoryIndex match. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: table_add, table_merge, and table_set include implicit pstrdup()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of the key and value. But in many cases this is not required
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce because the key/value is a constant, or the value has been built
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson by pstrcat() or other similar means. New routines table_addn,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce table_mergen, and table_setn have been added to the API, these
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce routines do not pstrdup() their arguments. The core code and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce standard modules were changed to take advantage of these routines.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce The resulting server is up to 20% faster in some situations.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Note that it is easy to get code subtly wrong if you pass a key/value
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce which is in a pool other than the pool of the table. The only
989b28f988e35401f1a50ecbeed0b38b023604b4Andreas Gustafsson safe thing to do is to pass key/values which are in the pool of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the table, or in one of the ancestors of the pool of the table.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce i.e. if the table is part of a subrequest, a value from the main
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce request's pool is OK since the subrequest pool is a sub_pool of the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce main request's pool (and therefore has a lifespan at most as long as
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the main pool). There is debugging code which can detect improper
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson usage, enabled by defining POOL_DEBUG. See alloc.c for more details.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Dmitry Khrustalev <dima@bog.msu.su>, Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) More mod_mime_magic cleanup: fewer syscalls; should handle "files"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce which don't exist on disk more gracefully; handles vhosts properly.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Update documentation to reflect the code -- if there's no
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson MimeMagicFile directive then the module is not enabled.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) PORT: Some older *nix dialects cannot automatically start scripts
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce which begin with a #! interpreter line (the shell starts the scripts
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce appropriately on these platforms). Apache now supports starting of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce "hashbang-scripts" when the NEED_HASHBANG_EMUL define is set.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer, with code from peter@zeus.dialix.oz.au (Peter Wemm)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce taken from tcsh]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: "typedef array_header table" removed from alloc.h, folks should
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce have been writing to use table as if it were an opaque type, but even
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce some standard modules got this wrong. By changing the definition
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to "typedef struct table table" module authors will receive compile
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce time warnings that they're doing the wrong thing. This change
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce facilitates future changes with more sophisticated table
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce structures. Specifically, module authors should be using table_elts()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to get access to an array_header * for the table. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: Renamed new_connection() to avoid namespace collision with LDAP
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce library routines. [Ken Coar, Rasmus Lerdorf]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: mod_speling is now available on the Win32 platform.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) For clarity the following compile time definition was changed:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce SAFE_UNSERIALIZED_ACCEPT -> SINGLE_LISTEN_UNSERIALIZED_ACCEPT
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Also, for example, HAVE_MMAP would mean to use mmap() scoreboards
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and not be a general notice that the OS has mmap(). Now the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce HAVE_MMAP/SHMGET #defines strictly are informational that the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce OS has that method of shared memory; the type to use for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the scoreboard is a seperate #define (USE_MMAP_SCOREBOARD
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and USE_SHMGET_SCOREBOARD). This allows outside modules to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce determine if shared memory is available and allows Apache
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to determine the best method to use for the scoreboard.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: UnixWare 2.1.2 SMP appears to require USE_FCNTL_SERIALIZED_ACCEPT,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as do various earlier versions. It should be safe on all versions.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Unixware 1.x appears to have the same SIGHUP bug as solaris does with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the slack code. A few other cleanups for Unixware.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Tom Hughes <thh@cyberscience.com>] PR#1082, PR#1282, PR#1499, PR#1553
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: A/UX can handle single-listen accepts without mutex
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce locking, so we add SINGLE_LISTEN_UNSERIALIZED_ACCEPT. [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) When die() happens we need to eat any request body if one exists.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Otherwise we can't continue with a keepalive session. This shows up
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as a POST problem with MSIE 4.0, typically against pages which are
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce authenticated. [Roy Fielding] PR#1399
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If you define SECURITY_HOLE_PASS_AUTHORIZATION then the Authorization
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce header will be passed to CGIs. This is generally a security hole, so
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce it's not a default. [Marc Slemko] PR#549
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix Y2K problem with date printing in suexec log.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Paul Eggert <eggert@twinsun.com>] PR#1343
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32 deserves a pid file. [Ben Hyde]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) suexec errors now include the errno/description. [Marc Slemko] PR#1543
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: OSF/1 now uses USE_FLOCK_SERIALIZED_ACCEPT to solve PR#467.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce The choice of flock vs. fcntl was made based on timings which showed that
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce even on non-NFS, non-exported filesystems fcntl() was an order of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce magnitude slower. It also uses SINGLE_LISTEN_UNSERIALIZED_ACCEPT so
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce that single socket users will see no difference. [Dean Gaudet] PR#467
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) "File does not exist" error message was erroneously including the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce errno. [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Improve the warning message generated when a client drops the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce connection (hits stop button, etc.) during a send. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Defining GPROF will disable profiling in the parent and enable it
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in the children. If you're profiling under Linux this is pretty much
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce necessary because SIGPROF is lost across a fork(). [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) htdigest and htpasswd needed slight tweaks to work on OS/2 and WIN32.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Havard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The NeXT cc (which is gcc hacked up) doesn't appear to support some
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce gcc functionality. Work around it.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Keith Severson <keith@sssd.navy.mil>] PR#1613
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Some linkers complain when .o files contain no functions.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Keith Severson <keith@sssd.navy.mil>] PR#1614
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Some const declarations in mod_imap.c that were added for debugging
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson purposes caused some compilers heartburn without adding any
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce significant value, so they've been removed. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The src/main/*.h header files have had #ifndef wrappers added to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce insulate them against duplicate calls if they get included through
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce multiple paths (e.g., in .c files as well as other .h files).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The libap routines now have a header file for their prototypes,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce src/ap/ap.h, to ease their use in non-httpd applications. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_autoindex with a plaintext header file would emit the <PRE>
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce start-tag before the HTML preamble, rather than after the preamble
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce but before the header file contents. [John Van Essen <jve@gamers.org>]
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) SECURITY: Fix a possible buffer overflow in logresolve. This is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce only an issue on systems without a MAXDNAME define or where
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the resolver returns domain names longer than MAXDNAME. [Marc Slemko]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) SECURITY: Eliminate possible buffer overflow in cfg_getline, which
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is used to read various types of files such as htaccess and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce htpasswd files. [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY: Ensure that the buffer returned by ht_time is always
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce properly null terminated. [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The "Connection" header could be sent back with multiple "close"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce tokens. Not an error, but a waste.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ronald.Tschalaer@psi.ch] PR#1683
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_rewrite's RewriteLog should behave like mod_log_config, it
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce shouldn't force hostname lookups. [Dean Gaudet] PR#1684
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) "basic" auth needs a case-insensitive comparison.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ronald.Tschalaer@psi.ch] PR#1666
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) For maximum portability, the environment passed to CGIs should
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce only contain variables whose names match the regex
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce /[a-zA-Z][a-zA-Z0-9_]*/. This is now enforced by stamping
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce underscores over any character outside the regex. This
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce affects HTTP_* variables, in a way that should be backward
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce compatible for all the standard headers; and affects variables
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce set with SetEnv/BrowserMatch and similar directives.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_speling returned incorrect HREF's when an ambigous match
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce was found. Noticed by <robinton@amtrash.comlink.de> (Soeren Ziehe)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [robinton@amtrash.comlink.de (Soeren Ziehe), Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Apache now compiles & runs on an EBCDIC mainframe
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (the Siemens BS2000/OSD family) in the POSIX subsystem
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Fix problem killing children when terminating. Allow ^C
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to shut down the server. [Brian Havard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) pstrdup() is implicit in calls to table_* functions, so there's
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce no need to do it before calling. Clean up a few cases.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Marc Slemko, Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) new -C and -c command line arguments
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce -C "directive" : process directive before reading config files
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce -c "directive" : process directive after reading config files
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce httpd -C "PerlModule Apache::httpd_conf"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Doug MacEachern, Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Fix the execution of CGIs that are scripts and called
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce with path info that does not have an '=' in.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Marc Slemko] PR#1591
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Fix a call to os_canonical_filename so it doesn't try to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mess with fake filenames. This fixes proxy caching on
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce win32. PR#1265
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY: General mod_include cleanup, including fixing several
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce possible buffer overflows and a possible infinite loop.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet, Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY: Numerous changes to mod_imap in a general cleanup
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce including fixing a possible buffer overflow. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: overhaul of multithreading code. Shutdowns are now graceful
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (connections are not dropped). Code can handle graceful restarts
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (but there is as yet no way to signal this to Apache). Various
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce other cleanups. [Paul Sutton]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The aplog_error changes specific to 1.3 introduced a buffer
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce overrun in the (now legacy) log_printf function. Fixed.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_digest didn't properly deal with proxy authentication. It
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce also lacked a case-insensitive comparision of the "Digest"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce token. [Ronald Tschalaer <Ronald.Tschalaer@psi.ch>] PR#1599
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) A few cleanups in mod_status for efficiency. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) A few cleanups in mod_info to make it thread-safe, and remove an
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce off-by-5 bug that could hammer \0 on the stack. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) no2slash() was O(n^2) in the length of the input. Make it O(n).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: migration from strncpy() to our "enhanced" version called
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ap_cpystrn() for performance and functionality reasons.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Located in libap.a. [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) table_set() and table_unset() did not deal correctly with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce multiple occurrences of the same key.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Stephen Scheck <sscheck@infonex.net>, Ben Laurie] PR#1604
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The AuthName must now be enclosed in quotes if it is to contain
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce spaces. [Ken Coar] PR#1195
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: new function: ap_escape_quotes(). [Ken Coar] PR#1195
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Work around optimiser bug that killed ISAPI in release
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce versions. [Ben Laurie] PR#1533
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Update the MPE port [Mark Bixby, Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Interim (slow) fix for p->sub_pool critical sections in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce alloc.c (affects win32 only). [Ben Hyde]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) non-WIN32 was missing destroy_mutex definition. [Ben Hyde]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) send_fd_length() did not calculate total_bytes_sent properly.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ben Reser <breser@regnow.com>] PR#1366
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The bputc() macro was not properly integrated with the chunking
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce code; in many cases modules using bputc() could cause completely
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce bogus chunked output. (Typically this will show up as problems
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce with Internet Explorer 4.0 reading a page, but other browsers
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce having no problem.) [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Create LARGE_WRITE_THRESHOLD define which determines how many
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce bytes have to be supplied to bwrite() before it will consider
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce doing a writev() to assemble multiple buffers in one system
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce call. This is critical for modules such as mod_include,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_autoindex, mod_php3 which all use bputc()/bputs() of smaller
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce strings in some cases. The result would be extra effort
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce setting up writev(), and in many cases extra effort building
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce chunks. The default is 31, it can be overriden at compile
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce time. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Move the gid switching code into the child so that log files
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and pid files are opened with the root gid.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Gregory A Lundberg <lundberg@vr.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Check for binaries by looking for the executable header
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce instead of counting control characters.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jim Patterson <Jim.Patterson@Cognos.COM>] PR#1340
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) ap_snprintf() moved from main/util_snprintf.c to ap/ap_snprintf.c
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce so the functionality is available to applications other than the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce server itself (like the src/support tools). [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) ap_slack() moved out of main/util.c into ap/ap_slack.c as part of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the libap consolidation work. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) ap_snprintf() with a len of 0 behaved like sprintf(). This is not
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce useful, and isn't what the standards require. Now it returns 0
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and writes nothing. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) When an error occurs in fcntl() locking suggest the user look up
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the docs for LockFile. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Eliminate some dead code from writev_it_all().
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Igor Tatarinov <tatarino@prairie.NoDak.edu>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_autoindex had an fread() without checking the result code.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce It also wouldn't handle "AddIconByType (TXT,/icons/text.gif text/*"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (note the missing closing paren) properly. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) It appears the "257th byte" bug (see
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce htdocs/manual/misc/known_client_problems.html#257th-byte) can happen
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce at the 256th byte as well. Fixed. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Fix mod_mime_magic under OS/2, no support for block devices.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Havard]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix memory corruption caused by allocating auth usernames in the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce wrong pool. [Dean Gaudet] PR#1500
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix an off-by-1, and an unterminated string error in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_mime_magic. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a potential SEGV problem in mod_negotiation when dealing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce with type-maps. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Better glibc support under Linux. [Dean Gaudet] PR#1542
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) "RedirectMatch gone /" would cause a SIGSEGV. [Dean Gaudet] PR#1319
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: avoid overflows during file canonicalisations.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [malcolm@mgdev.demon.co.uk] PR#1378
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: set_file_slot() didn't detect absolute paths. [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR#1511, 1508
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: mod_status display header didn't match fields. [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The pthread_mutex_* functions return an error code, and don't
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce set errno. [Igor Tatarinov <tatarino@prairie.NoDak.edu>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Allow spaces to prefix the interpreter in #! lines.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ben Laurie] PR#1101
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Cure file leak in CGIs. [Peter Tillemans <pti@net4all.be>] PR#1523
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) proxy_ftp: the directory listings generated by the proxy ftp module
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce now have a title in which the path components are clickable and allow
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce quick navigation to the clicked-on directory on the currently listed
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ftp server. This also fixes a bug where the ".." directory links would
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce sometimes refer to the wrong directory. [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Allocate the correct amount of memory for the scoreboard.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Ben Hyde] PR#1387
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Only lowercase the part of the path that is real. [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix problems with timeouts in inetd mode and -X mode. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the spurious "(0)unknown error: mmap_handler: mmap failed"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce error messages. [Ben Hyde]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.3b3
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Work around brain-damaged spawn calls that can't deal
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce with spaces and slashes. [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Fix the code so CGIs can use socket calls on Windows.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce The problem was that certain undocumented environment variables
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce needed for sockets to work under Win32 were not being passed.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Frank Faubert <frank@sane.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a "-V" command line flag to the httpd binary. This
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce flag shows some of the defines that Apache was compiled with.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce It is useful for debugging purposes. [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Start separating the ap_*() routines into their own library, so they
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce can be used by items in src/support among other things.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ken Coar] PR#512, 905, 1252, 1308
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Give a more informative error when no AuthType is set.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Lars Eilebrecht]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove strtoul() use from mod_proxy because it isn't available
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on all platforms. [Marc Slemko] PR#1214
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Some Win32 systems terminated all responses after 16 kB.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This turns out to be a bug in Winsock - select() doesn't always
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce return the correct status. [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Directives owned by http_core can now use the new check_cmd_context()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce routine to ensure that they're not being used within a container
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (e.g., <Directory>) where they're invalid. [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Recent changes made it necessary to add explicit prototype
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for fgetc() and fgets() on SunOS 4.x. [Martin Kraemer, Ben Hyde]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) It was necessary to distinguish between resources which are
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce allocated in the parent, for cleanup in the parent, and resources
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce which are allocated in each child, for cleanup in each child.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce A new pool was created which is passed to the module child_init
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and child_exit functions; modules are free to register per-child
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce cleanups there. This fixes a bug with reliable piped logs.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_autoindex wasn't displaying the ReadmeName file at the bottom
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce unless it was also doing FancyIndexes, but it displayed the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce HeaderName file at the top under all circumstances. It now shows
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the ReadmeName file for simple indices, too, as it should.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ken Coar] PR#1373
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) http_core was mmap()ing even in cases where it wasn't going to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce read the file. [Ben Hyde <bhyde@gensym.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Complete rewrite ;-) of mod_rewrite's URL rewriting engine:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Now the rewriting engine (the heart of mod_rewrite) is organized more
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce straight-forward, first time well documented and reduced to the really
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce essential parts. All redundant cases were stripped off and processing now
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is the same for both per-server and per-directory context with only a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce minimum difference (the prefix stripping in per-dir context). As a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce side-effect some subtle restrictions and two recently discovered problems
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce are gone: Wrong escaping of QUERY_STRING on redirects in per-directory
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce context and restrictions on the substitution URL on redirects.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Additionally some minor source cleanups were done.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Lars Eilebrecht wrote a whole new set of Apache Vhost Internals
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce documentation, examples, explanations and caveats. They live in a new
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce subdirectory htdocs/manual/vhost/. [Lars Eilebrecht <sfx@unix-ag.org>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If ap_slack fails to allocate above the low slack line it's a good
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce indication that further problems will occur; it's a better indication
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce than many external libraries give us when we actually run out of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce descriptors. So report it to the user once per restart.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#1181
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change mod_include and mod_autoindex to use Y2K-safe date formats
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce by default. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a "SuppressColumnSorting" option to the IndexOptions list,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce which will keep the column heading from being links for sorting
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the display. [Ken Coar, suggested by Brian Tiemann <btman@pacific.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Update the LynxOS port. [Marius Groeger <mag@sysgo.de>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix logic error when issuing a mmap() failed message
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce with a non-zero MMAP_THRESHOLD.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [David Chambers <davidc@flosun.salk.edu>] PR#1294
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Preserve handler value on ProxyPass'ed requests by not
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce calling find_types on a proxy'd request; fixes problems
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce where some ProxyPass'ed URLs weren't actually passed
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to the proxy.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Lars Eilebrecht] PR#870
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a byte ordering problem in mod_access which prevented
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the old-style syntax (i.e. "a.b.c." to match a class C)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce from working properly. [Dean Gaudet] PR#1248, 1328, 1384
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix problem with USE_FLOCK_SERIALIZED_ACCEPT not working
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce properly. Each child needs to open the lockfile instead
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of using the passed file-descriptor from the parent.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jim Jagielski] PR#1056
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the error logging in mod_cgi; the recent error log changes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce introduced a bug that prevented it from working correctly.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Default to USE_FCNTL_SERIALIZED_ACCEPT on HPUX to properly
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce handle multiple Listen directives. [Marc Slemko] PR#872
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Inherit a bugfix to fnmatch.c from FreeBSD sources.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ["[KOI8-R] ������ ������" <ache@nagual.pp.ru>] PR#1311
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) When a configuration parse complained about a bad directive,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the logger would use whatever (unrelated) value was in errno.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce errno is now forced to EINVAL first in this case. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) A sed command in the Configure script pushed the edge of POSIXness,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce breaking on some systems. [Bhaba R.Misra <system@vt.edu>] PR#1368
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Solaris >= 2.5 was totally broken due to a mess up using pthread
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mutexes. [Roy Fielding, Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) OS/2 Port updated; it should be possible to build OS/2 from the same
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce sources as Unix now. [Brian Havard <brianh@kheldar.apana.org.au>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a year formatting bug in mod_usertrack.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Paul Eggert <eggert@twinsun.com>] PR#1342
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) A mild SIGTERM/SIGALRM race condition was eliminated.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#1211
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Warn user that default path has changed if /usr/local/etc/httpd
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is found on the system. [Lars Eilebrecht]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Various mod_mime_magic bug fixes and cleanups: Uncompression
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce should work, it should work on WIN32, and a few resource
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce leaks and abort conditions are fixed.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#1205
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: On AIX 1.x files can't be named '@', fix the proxy cache
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to use '%' instead of '@' in its encodings.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [David Schuler <schuld@btv.ibm.com>] PR#1317
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Improve the warning message generated when the "server is busy".
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#1293
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: All ports which don't otherwise define DEF_WANTHSREGEX will
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson get Spencer regex by default. This is to avoid having to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce discover bugs in operating system libraries. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: "Fix" PR#467 by generating warnings on systems which we have
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce not been able to get working USE_*_SERIALIZED_ACCEPT settings for.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Document this a bit more in src/PORTING. [Dean Gaudet] PR#467
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Ensure that one copy of config warnings makes it to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce error_log. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Invent new structure and associated methods to handle config file
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce reading. Add "custom" hook to use config file cfg_getline() on
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce something which is not a FILE* [Martin Kraemer]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Make single-exe Windows install. [Ben Laurie and Eric Esselink]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Make CGI work under Win95. [Ben Laurie and Paul Sutton]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Make index.html and friends work under Win95. [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Solaris 2.4 needs Spencer regex, the system regex is broken.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [John Line <jml4@cam.ac.uk>] PR#1321
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Default pathname has been changed everywhere to /usr/local/apache
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Sameer <sameer@c2.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: AIX now uses USE_FCNTL_SERIALIZED_ACCEPT.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [David Bronder <David-Bronder@uiowa.edu>] PR#849
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: i386 AIX does not have memmove.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [David Schuler <schuld@btv.ibm.com>] PR#1267
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: HPUX now defaults to using Spencer regex.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Philippe Vanhaesendonck <pvanhaes@be.oracle.com>,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Omar Del Rio <al112263@academ01.lag.itesm.mx>] PR#482, 1246
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Some versions of NetBSD don't automatically define
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce __NetBSD__. Workaround by defining NETBSD.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Chris Craft <ccraft@cncc.cc.co.us>] PR#977
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: UnixWare 2.x requires -lgen for syslog.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Hans Snijder <hs@meganet.nl>] PR#1249
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: ULTRIX appears to not have syslog.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Lars Eilebrecht <Lars.Eilebrecht@unix-ag.org>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Basic Gemini port (treat it like unixware212).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ["Pavel Yakovlev (Paul McHacker)" <hac@tomcat.olly.ru>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: All SVR4 systems now use NET_SIZE_T = size_t, and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce use USE_SHMGET_SCOREBOARD.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Various improvements in detecting config file errors (missing closing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directives for <Directory>, <Files> etc. blocks, prohibiting global
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce server settings in <VirtualHost> blocks, flagging unhandled multiple
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce arguments to <Directory>, <Files> etc.)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add support to suexec wrapper program for mod_unique_id's UNIQUE_ID
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce variable to provide this one to suexec'd CGIs, too.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [M.D.Parker <mdpc@netcom.com>] PR#1284
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) New support tool: src/support/split-logfile, a sample Perl script which
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce splits up a combined access log into separate files based on the
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson name of the virtual host (listed first in the log records by "%v").
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.3b2 (there is no 1.3b1)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) TestCompile was not passing $LIBS [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Makefile.tmpl was not using $CFLAGS in the link phase.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add debugging code to alloc.c. Defining ALLOC_DEBUG provides a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce rudimentary memory debugger which can be used on live servers with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce low impact -- it sets all allocated and freed memory bytes to 0xa5.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Defining ALLOC_USE_MALLOC will cause the alloc code to use malloc()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and free() for each object. This is far more expensive and should
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce only be used for testing with tools such as Electric Fence and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Purify. See main/alloc.c for more details. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Configure uses a sh trap and didn't set its exitcode properly.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#1159
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Yet another vhost revamp. Add the NameVirtualHost directive which
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce explicitly lists the ip:port pairs that are to be used for name-vhosts.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce From a given ip:port, regardless what the Host: header is, you can
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce only reach the vhosts defined on that ip:port. The precedence of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce vhosts was reversed to match other precedences in the config --
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the earlier vhosts override the later vhosts. All vhost matching was
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce moved into http_vhost.[ch]. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) ap_inline can be used to force inlining. GNUC __attribute__() can
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce be used for whatever reason is appropriate (i.e. format() warnings
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for printf style functions). Both are enabled only with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce gcc >= 2.7.x (so that we have fewer support issues with older
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce versions). [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix support for Proxy Authentication (we were testing the response
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce status too early). [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) CoreDumpDirectory directive directs where the core file is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce written when a SIGSEGV, SIGBUS, SIGABORT or SIGABRT are
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce received. [Marc Slemko, Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Support for Atari MINT.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jan Paul Schmidt <Jan.P.Schmidt@mni.fh-giessen.de>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) When booting, apache will now detach itself from stdin, stdout,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and stderr. stderr will not be detached until after the config
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce files have been read so you will be able to see initial error
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce messages. After that all errors are logged in the error_log.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This makes it more convenient to start apache via rsh, ssh,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce or crontabs. [Dean Gaudet] PR#523
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_proxy was sending HTTP/1.1 responses to ftp requests by mistake.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Also removed the auto-generated link to www.apache.org that was the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce source of so many misdirected bug reports. [Roy Fielding, Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) send_fb would not detect aborted connections in some situations.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_include would use uninitialized data when parsing certain
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce expressions involving && and ||. [Brian Slesinsky] PR#1139
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_imap should only handle GET methods. [Jay Bloodworth]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) suexec.c wouldn't build without -DLOG_EXEC. [Jason A. Dour]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_autoindex improperly counted &escapes; as more than one
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce character in the description. It also improperly truncated
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce descriptions that were exactly the maximum length.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) RedirectMatch was not properly escaping the result (PR#1155). Also
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce "RedirectMatch /advertiser/(.*) $1" is now permitted.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_include now uses symbolic names to check for request success
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and return HTTP errors, and correctly handles all types of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce redirections (previously it only did temporary redirect correctly).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ken Coar, Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_userdir was modifying r->finfo in cases where it wasn't setting
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce r->filename. Since those two are meant to be in sync with each other
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce this is a bug. ["Paul B. Henson" <henson@intranet.csupomona.edu>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Support Unisys SVR4, whose uname returns mostly useless data.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ["Kaufman, Steven E" <Steven.Kaufman@unisys.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Inetd mode (which is buggy) uses timeouts without having setup the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce jmpbuffer. [Dean Gaudet] PR#1064
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Work around problem under Linux where a child will start looping
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce reporting a select error over and over.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Rick Franchuk <rickf@transpect.net>] PR#1107, 987, 588
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed error in proxy_util.c when looping through multiple host IP
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce addresses. [Lars Eilebrecht] PR#974
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If BUFFERED_LOGS is defined then mod_log_config will do atomic
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce buffered writes -- that is, it will buffer up to PIPE_BUF (i.e. 4k)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce bytes before writing, but it will never split a log entry across a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce buffer boundary. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: the short_score record has been split into two pieces, one which
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the parent writes on, and one which the child writes on. As part of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce this change the get_scoreboard_info() function was removed, and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce scoreboard_image was exported. This change fixes a race condition
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in file based scoreboard systems, and speeds up changes involving the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce scoreboard in earlier 1.3 development. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: New register_other_child() API (see http_main.h) which allows
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce modules to register children with the parent for maintenance. It
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is disabled by defining NO_OTHER_CHILD. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: New piped_log API (see http_log.h) which implements piped logs,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and will use register_other_child to implement reliable piped logs
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce when it is available. The reliable piped logs part can be disabled
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce by defining NO_RELIABLE_PIPED_LOGS. At the moment reliable piped
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce logs is only available on Unix. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: set_last_modified() broken into set_last_modified(), set_etag(), and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce meets_conditions(). This allows conditional HTTP selection to be
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce handled separately from the storing of the header fields, and provides
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the ability for CGIs to set their own ETags for conditional checking.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ken Coar, Roy Fielding] PR#895
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Changes to mod_log_config to allow naming of format strings.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Format nicknames are defined with "LogFormat fmt nickname", and can
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce be used with "LogFormat nickname" and "CustomLog logtarget nickname".
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) New module, "mod_speling", which can help find files even when
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the URL is slightly misspelled. [Martin Kraemer, Alexei Kosut]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: New function child_terminate() triggers the child process to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce exit, while allowing the child finish what it needs to for the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce current request first.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Doug MacEachern, Alexei Kosut]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Windows now defaults to using full status reports with mod_status.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Alexei Kosut] PR #1094
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) *Really* disable all mod_rewrite operations if the engine is off.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Some things (like RewriteMaps) were checked/performed even if they
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce weren't supposed to be. [Ken Coar] PR #991
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Implement a new timer scheme which eliminates the need to call alarm() all
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the time. Instead a counter in the scoreboard for each child is used to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce show when the child has made forward progress. The parent samples this
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce counter every scoreboard maintenance cycle, and issues SIGALRM if no
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce progress has been made in the timeout period. This reduces the static
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce request best-case syscall count to 22 from 29. This scheme is only
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson used by systems with memory-based scoreboards. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The proxy now properly handles CONNECT requests which are sent
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to proxy servers when using ProxyRemote. [Marc Slemko] PR#1024
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) A script called apachectl has been added to the support
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directory. This script allows you to do things such as
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce "apachectl start" and "apachectl restart" from the command
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce line. [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Modules and core routines are now put into libraries, which
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce simplifies the link line tremendously (among other advantages).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Paul Sutton]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Some of the MD5 names defined in Apache have been renamed to have
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce an `ap_' prefix to avoid conflicts with routines supplied by
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce external libraries. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Removal of mod_auth_msql.c from the distribution. There are many
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce other options for databases today. Rather than offer one option,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce offer none at this time. mod_auth_msql and other SQL database
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce authentication modules can be found at the Apache Module Registry.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce http://modules.apache.org/ It would be nice to offer a generic
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_auth_sql option in the near future.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: BeOS support added [Alexei Kosut]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) Configure no longer accepts the -make option, since it creates
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Makefile on the fly based on Makefile.tmpl and Configuration.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Apache now gracefully shuts down when it receives a SIGTERM, instead
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of forcibly killing off all its processes and exiting without
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce cleaning up. [Alexei Kosut]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: A new field in the request_rec, r->mtime, has been added to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce avoid gratuitous parsing of date strings. It is intended to hold
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the last-modified date of the resource (if applicable). An
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce update_mtime() routine has also been added to advance it if
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce appropriate. [Roy Fielding, Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY: If a htaccess file can not be read due to bad permissions,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce deny access to the directory with a HTTP_FORBIDDEN. The previous
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce behavior was to ignore the htaccess file if it could not be read.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This change may make some setups with unreadable htaccess files
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce stop working. [Marc Slemko] PR#817
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add aplog_error() providing a mechanism to define levels of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce verbosity to the server error logging. This addition also provides
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the ability to log errors using syslogd. Error logging is configurable
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on a per-server basis using the LogLevel directive. Conversion
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of log_*() in progress. [Randy Terbush]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Further enhance aplog_error() to not log filename, line number, and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce errno information when it isn't applicable. [Ken Coar, Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Canonicalise filenames under Win32. Short filenames are
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson converted to long ones. Backslashes are converted to forward
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson slashes. Case is converted to lower. Parts of URLs that do not
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson correspond to files are left completely alone. [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: 2 new OSs added to the list of ports:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Encore's UMAX V: Arieh Markel <amarkel@encore.com>
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson Acorn RISCiX: Stephen Borrill <sborrill@xemplar.co.uk>
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add the server version (SERVER_VERSION macro) to the "server
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson configured and running" entry in the error_log. Also build an
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce object file at link-time that contains the current time
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (SERVER_BUILT global const char[]), and include that in the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce message. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Set r->headers_out when sending responses from the proxy.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This fixes things such as the logging of headers sent from
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the proxy. [Marc Slemko] PR#659
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) support/httpd_monitor is no longer distributed because the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce scoreboard should not be file based if at all possible. Use
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_status to see current server snapshot.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) (set_file_slot): New function, allowing auth directives to be
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce independent of the server root, so the server documents can be
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce moved to a different directory or machine more easily.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [David J. MacKenzie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If no TransferLog is given explicitly, decline
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to log. This supports coexistence with other logging modules,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce such as the custom one that UUNET uses. [David J. MacKenzie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Check for titles in server-parsed HTML files.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Ignore leading newlines and returns in titles. The old behavior
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of replacing a newline after <title> with a space causes the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce title to be misaligned in the listing. [David J. MacKenzie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Change mod_cern_meta to be configurable on a per-directory basis.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [David J. MacKenzie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add 'Include' directive to allow inclusion of configuration
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce files within configuration files. [Randy Terbush]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Proxy errors on connect() are logged to the error_log (nothing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce new); now they include the IP address and port that failed
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (*that's* new). [Ken Coar, Marc Slemko] PR#352
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Various architectures now define USE_MMAP_FILES which causes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the server to use mmap() for static files. There are two
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce compile-time tunables MMAP_THRESHOLD (minimum number of bytes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce required to use mmap(), default is 0), and MMAP_SEGMENT_SIZE (maximum
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce number of bytes written in one cycle from a single mmap()d object,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce default 32768). [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: Added post_read_request API phase which is run right after reading
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the request from a client, or right after an internal redirect. It is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce useful for modules setting environment variables that depend only on
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the headers/contents of the request. It does not run during subrequests
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce because subrequests inherit pretty much everything from the main
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce request. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added mod_unique_id which is used to generate a unique identifier for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce each hit, available in the environment variable UNIQUE_ID.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) init_modules is now called after the error logs have been opened. This
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce allows modules to emit information messages into the error logs.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed proxy-pass-through feature of mod_rewrite; Added error logging
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce information for case where proxy module is not available. [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Apache has need for mutexes to serialize its children around
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce accept. In prior versions either fcntl file locking or flock file
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce locking were used. The method is chosen by the definition of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce USE_xxx_SERIALIZED_ACCEPT in conf.h. xxx is FCNTL for fcntl(),
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and FLOCK for flock(). New options have been added:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - SYSVSEM to use System V style semaphores
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - PTHREAD to use POSIX threads (appears to work on Solaris only)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - USLOCK to use IRIX uslock
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Based on timing various techniques, the following changes were made
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to the defaults:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - Linux 2.x uses flock instead of fcntl
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - Solaris 2.x uses pthreads
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - IRIX uses SysV semaphores -- however multiprocessor IRIX boxes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce work far faster if you -DUSE_USLOCK_SERIALIZED_ACCEPT
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet, Pierre-Yves Kerembellec <Pierre-Yves.Kerembellec@vtcom.fr>,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Martijn Koster <m.koster@pobox.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: The semantics of accept/select make it very desirable to use
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mutexes to serialize accept when multiple Listens are in use. But
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in the case where only a single socket is open it is sometimes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce redundant to serialize accept(). Not all unixes do a good job with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce potentially dozens of children blocked on accept() on the same
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce socket. It's now possible to define SINGLE_LISTEN_UNSERIALIZED_ACCEPT and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the server will avoid serialization when listening on only one socket,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and use serialization when listening on multiple sockets.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#467
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Configure changes: TestLib replaced by TestCompile, which has
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce some additional capability (such as doing a sanity check of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the compiler and flags selected); the version of Solaris is now
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce available via the #define value of SOLARIS2; IRIX n32bit libs
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce now supported and selectable by new Configuration Rule: IRIXN32;
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce We no longer default to -O2 optimization. [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Updated Configure: Configuration now uses AddModule to specify
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce module source or binary file location, relative to src directory.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Modules can be dropped into modules/extra, or in their own
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directory, and modules can come with a Makefile or Configure can
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce create one. Modules can add compiler or library information to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce generated Makefiles. [Paul Sutton]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Source core re-organisation: distributed modules are now in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce modules/standard. All other source code is in main. OS-specific
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce code is in os/{unix,emx,win32} directories. [Paul Sutton]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_browser has been removed, since it's replaced by mod_setenvif.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix another long-standing bug in sub_req_lookup_file where it would
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce happily skip past access checks on subdirectories looked up with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce relative paths. (It's used by mod_dir, mod_negotiation,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and mod_include.) [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) directory_walk optimization to reduce an O(N*M) loop to O(N+M) where
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce N is the number of <Directory> sections, and M is the number of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce components in the filename of an object.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce To achieve this optimization the following config changes were made:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - Wildcards (* and ?, not the regex forms) in <Directory>s,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce <Files>s, and <Location>s now treat a slash as a special
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce character. For example "/home/*/public_html" previously would
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce match "/home/a/andrew/public_html", now it only matches things
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce like "/home/bob/public_html". This mimics /bin/sh behaviour.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - It's possible now to use [] wildcarding in <Directory>, <Files>
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce or <Location>.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - Regex <Directory>s are applied after all non-regex <Directory>s.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a bug introduced in 1.3a1 directory_walk regarding .htaccess files
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and corrupted paths. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Enhanced and cleaned up the URL rewriting engine of mod_rewrite:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce First the grouped parts of RewriteRule pattern matches (parenthesis!) can
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce be accessed now via backreferences $1..$9 in RewriteConds test-against
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce strings in addition to RewriteRules subst string. Second the grouped
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce parts of RewriteCond pattern matches (parenthesis!) can be accessed now
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce via backreferences %1..%9 both in following RewriteCond test-against
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce strings and RewriteRules subst string. This provides maximum flexibility
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce through the use of backreferences.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Additionally the rewriting engine was cleaned up by putting common
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce code to the new expand_backrefs_inbuffer() function.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) When merging the main server's <Directory> and <Location> sections into
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a vhost, put the main server's first and the vhost's second. Otherwise
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the vhost can't override the main server. [Dean Gaudet] PR#717
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The <Directory> code would merge and re-merge the same section after
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a match was found, possibly causing problems with some modules.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) ip-based vhosts are stored and queried using a hashing function, which
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce has been shown to improve performance on servers with many ip-vhosts.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Some other changes had to be made to accommodate this:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - the * address for vhosts now behaves like _default_
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - the matching process now is:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - match an ip-vhost directly via hash (possibly matches main
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - if that fails, just pretend it matched the main server
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - if so far only the main server has been matched, perform
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce name-based lookups (ServerName, ServerAlias, ServerPath)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *only on name-based vhosts*
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - if they fail, look for _default_ vhosts
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet, Dave Hankins <dhankins@sugarat.net>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) dbmmanage overhaul:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - merge dbmmanage and dbmmanage.new functionality, remove dbmmanage.new
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - tie() to AnyDBM_File which will use one of DB_File, NDBM_File or
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce GDBM_File (-ldb, -lndbm, -lgdbm) (trying each in that order)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - provide better seed for rand
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - prompt for password as per getpass(3) (turn off echo, read from
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - use "newstyle" crypt based on $Config{osname} ($^O)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - will not add a user if already in database, use new `update' command
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - added `check' command to check a users' password
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - added `import' command to convert existing password text-files or
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce dbm files exported with `view'
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - more descriptive usage, general cleanup, 'use strict' clean, etc.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Doug MacEachern]
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) Added psocket() which is a pool form of socket(), various places within
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the proxy weren't properly blocking alarms while registering the cleanup
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for its sockets. bclose() now uses pclose() and pclosesocket(). There
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce was a bug where the client socket was being close()d twice due a still
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce registered cleanup. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) A few cleanups were made to reduce time(), getpid(), and signal() calls.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: AIX >= 4.2 requires -lm due to libc changes.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jason Venner <jason@idiom.com>] PR#667
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Enable ``=""'' for RewriteCond directives to match against
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the empty string. This is the preferred way instead of ``^$''.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) Fixed an infinite loop in mod_imap for references above the server root
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Dean Gaudet] PR#748
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_proxy now has a ReceiveBufferSize directive, similar to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce SendBufferSize, so that the TCP window can be set appropriately
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for LFNs. [Phillip A. Prindeville]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_browser has been replaced by the more general mod_setenvif
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (courtesy of Paul Sutton). BrowserMatch* directives are still
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson available, but are now joined by SetEnvIf*, UnSetEnvIf*, and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce UnSetEnvIfZero directives. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) "HostnameLookups double" forces double-reverse DNS to succeed in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce order for remote_host to be set (for logging, or for the env var
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce REMOTE_HOST). The old define MAXIMUM_DNS has been deprecated.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_access overhaul:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - Now understands network/netmask syntax (i.e. 10.1.0.0/255.255.0.0)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and cidr syntax (i.e. 10.1.0.0/16). PR#762
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - Critical path was sped up by pre-computing a few things at config time.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - The undocumented syntax "allow user-agents" was removed,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the replacement is "allow from env=foobar" combined with mod_browser.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - When used with hostnames it now forces a double-reverse lookup
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce no matter what the directory settings are. This double-reverse
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce doesn't affect any of the other routines that use the remote
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce hostname. In particular it's still passed to CGIs and the log
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce without the double-reverse check. Related PR#860.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) When a large bwrite() occurs (larger than the internal buffer size),
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce while there is already something in the buffer, apache will combine
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the large write and the buffer into a single writev(). (This is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in anticipation of using mmap() for reading files.)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) In obscure cases where a partial socket write occurred while chunking,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Apache would omit the chunk header/footer on the next block. Cleaned
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce up other bugs/inconsistencies in error conditions in buff.c. Fixed
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a bug where a long pause in DNS lookups could cause the last packet
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of a response to be unduly delayed. [Roy Fielding, Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: Added child_exit function to module structure. This is called
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce once per "heavy-weight process" just before a server child exit()'s
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce e.g. when max_requests_per_child is reached, etc.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Doug MacEachern, Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_include cleanup showed that handle_else was being used to handle
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce endif. It didn't cause problems, but it was cleaned up too.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Howard Fear]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_cern_meta would attempt to find meta files for the directory itself
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in some cases, but not in others. It now avoids it in all cases.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_mime_magic would core dump if there was a decompression error.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer <Martin.Kraemer@mch.sni.de>] PR#904
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: some variants of DGUX require -lsocket -lnsl
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Alexander L Jones <alex@systems-options.co.uk>] PR#732
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_autoindex now allows sorting of FancyIndexed directory listings
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce by the various fields (name, size, et cetera), either in ascending
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce or descending order. Just click on the column header. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Various tweaks to eliminate pointer-int casting warnings on 64-bit
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce CPUs like the Alpha. Apache still stores ints in pointers, but that's
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the relatively safe direction. [Dean Gaudet] PR#344
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: QNX mmap() support for faster/more reliable scoreboard handling.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Igor N Kovalenko <infoh@mail.wplus.net>] PR#683
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) child_main avoids an unneeded call to select() when there is only one
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce listening socket. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) In the event that the server is starved for idle servers it will
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce spawn 1, then 2, then 4, ..., then 32 servers each second,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce doubling each second. It'll also give a warning in the errorlog
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce since the most common reason for this is a poor StartServers
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce setting. The define MAX_SPAWN_RATE can be used to raise/lower
b9c96971964d87c2705c8dc29300ff8103479ee6Andreas Gustafsson the maximum. [Dean Gaudet]
b9c96971964d87c2705c8dc29300ff8103479ee6Andreas Gustafsson *) Apache now provides an effectively unbuffered connection for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce CGI scripts. This means that data will be sent to the client
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as soon as the CGI pauses or stops output; previously, Apache would
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce buffer the output up to a fixed buffer size before sending, which
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce could result in the user viewing an empty page until the CGI finished
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce or output a complete buffer. It is no longer necessary to use an
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce "nph-" CGI to get unbuffered output. Given that most CGIs are written
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in a language that by default does buffering (e.g. perl) this
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce shouldn't have a detrimental effect on performance.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson "nph-" CGIs, which formerly provided a direct socket to the client
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce without any server post-processing, were not fully compatible with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce HTTP/1.1 or SSL support. As such they would have had to implement
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the transport details, such as encryption or chunking, in order
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to work properly in certain situations. Now, the only difference
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce between nph and non-nph scripts is "non-parsed headers".
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet, Sameer Parekh, Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If a BUFF is switched from buffered to unbuffered reading the first
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce bread() will return whatever remained in the buffer prior to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce switch. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.3a1
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added another Configure helper script: TestLib. It determines
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce if a specified library exists. [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Allow for use of n32bit libraries under IRIX 6.x
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [derived from patch from Jeff Hayes <jhayes@aw.sgi.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Some architectures use size_t for various lengths in network
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce functions such as accept(), and getsockname(). The definition
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce NET_SIZE_T is used to control this. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Linux: Attempt to detect glibc based systems and include crypt.h
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and -lcrypt. Test for various db libraries (dbm, ndbm, db) when
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_auth_dbm or mod_auth_db are included. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: QNX doesn't have initgroups() which support/suexec.c uses.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Igor N Kovalenko <infoh@mail.wplus.net>]
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) "force-response-1.0" now only applies to requests which are HTTP/1.0 to
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson begin with. "nokeepalive" now works for HTTP/1.1 clients. Added
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson "downgrade-1.0" which causes Apache to pretend it received a 1.0.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] related PR#875
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: Correct child_init() slot declaration from int to void, to
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson match the init() declaration. Update mod_example to use the new
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce hook. [Ken Coar]
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) added transport handle slot (t_handle) to the BUFF structure
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Doug MacEachern]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) get_client_block() returns wrong length if policy is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce REQUEST_CHUNKED_DECHUNK.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Kenichi Hori <ken@d2.bs1.fc.nec.co.jp>] PR#815
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Support the image map format of FrontPage. For example:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce rect /url.hrm 10 20 30 40
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ["Chris O'Byrne" <obyrne@iol.ie>] PR#807
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: -lresolv and -lsocks were in the wrong order for Solaris.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ["Darren O'Shaughnessy" <darren@aaii.oz.au>] PR#846
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) AddModuleInfo directive for mod_info which allows you to annotate
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the output of mod_info. ["Lou D. Langholtz" <ldl@usi.utah.edu>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added NoProxy directive to avoid using ProxyRemote for selected
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce addresses. Added ProxyDomain directive to cause unqualified
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce names to be qualified by redirection.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Martin Kraemer <Martin.Kraemer@mch.sni.de>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Support Proxy Authentication, and don't pass the Proxy-Authorize
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce header to the remote host in the proxy. [Sameer Parekh and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Upgraded mod_rewrite from 3.0.6+ to latest officially available version
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce 3.0.9. This upgrade includes: fixed deadlooping on rewriting to same
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce URLs, fixed rewritelog(), fixed forced response code handling on
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce redirects from within .htaccess files, disabled pipe locking under
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce braindead SunOS 4.1.x, allow env variables to be set even on rules with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce no substitution, bugfixed situations where HostnameLookups is off, made
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_rewrite more thread-safe for NT port and fixed problem when creating
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce an empty query string via "xxx?".
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This update also removes the copyright of Ralf S. Engelschall,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce i.e. now mod_rewrite no longer has a shared copyright. Instead is is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce exclusively copyrighted by the Apache Group now. This happened because
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the author now has gifted mod_rewrite exclusively to the Apache Group and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce no longer maintains an external version.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: Added child_init function to module structure. This is called
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce once per "heavy-weight process" before any requests are handled.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce See http_config.h for more details. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Anonymous_LogEmail was logging on each subrequest.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#421, 868
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: Added is_initial_req() which tests if the request being
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce processed is the initial request, or a subrequest.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Doug MacEachern]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Extended SSI (mod_include) now handles additional relops for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce string comparisons (<, >, <=, and >=). [Bruno Wolff III] PR#41
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Configure fixed to correctly propagate user-selected options and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce settings (such as CC and OPTIM) to Makefiles other than
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce src/Makefile (notably support/Makefile). [Ken Coar] PR#666, #834
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) IndexOptions SuppressHTMLPreamble now causes the actual HTML of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directory indices to start with the contents of the HeaderName file
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce if there is one. If there isn't one, the behaviour is unchanged.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ken Coar, Roy Fielding, Andrey A. Chernov]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) WIN32: Modules can now be dynamically loaded DLLs using the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce LoadModule/LoadFile directives. Note that module DLLs must be
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce compiled with the multithreaded DLL version of the runtime library.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Alexei Kosut and Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Automatic indexing removed from mod_dir and placed into mod_autoindex.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This allows the admin to completely remove automatic indexing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce from the server, while still supporting the basic functions of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce trailing-slash redirects and DirectoryIndex files. Note that if
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce you're carrying over an old Configuration file and you use directory
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce indexing then you'll want to add:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Module autoindex_module mod_autoindex.o
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce before mod_dir in your Configuration. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) popendir/pclosedir created to properly protect directory scanning.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#525
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) AliasMatch, ScriptAliasMatch and RedirectMatch directives added,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce giving regex support to mod_alias. <DirectoryMatch>, <LocationMatch>
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and <FilesMatch> sections added to succeed <DirectoryMatch ~>, etc...
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Alexei Kosut]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The AccessFileName directive can now take more than one filename.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ["Lou D. Langholtz" <ldl@usi.utah.edu>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The new mod_mime_magic can be used to "magically" determine the type
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of a file if the extension is unknown. Based on the unix file(1)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce command. [Ian Kluft <ikluft@cisco.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) We now determine and display the time spent processing a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce request if desired. [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_status: PID field of "dead" child slots no longer displays
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce main httpd process's PID. [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Makefile.nt added - to build all the bits from the command line:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Doesn't yet work properly. [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Default text of 404 error is now "Not Found" rather than the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce potentially misleading "File Not Found". [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) CONFIG: "HostnameLookups" now defaults to off because it is far better
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce for the net if we require people that actually need this data to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce enable it. [Linus Torvalds]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) directory_walk() is an expensive function, keep a little more state to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce avoid needless string counting. Add two new functions make_dirstr_parent
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and make_dirstr_prefix which replace all existing uses of make_dirstr.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce The new functions are a little less general than make_dirstr, but
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce work more efficiently (less memory, less string counting).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) EXTRA_LFLAGS was changed to EXTRA_LDFLAGS (and LFLAGS was changed
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to LDFLAGS) to avoid complications with lex rules in make files.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#372
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) run_method optimized to avoid needless scanning over NULLs in the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce module list. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Revamp of (unix) scoreboard management code such that it avoids
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce unnecessary traversals of the scoreboard on each hit. This is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce particularly important for high volume sites with a large
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce HARD_SERVER_LIMIT. Some of the previous operations were O(n^2),
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and are now O(n). See also SCOREBOARD_MAINTENANCE_INTERVAL in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce httpd.h. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) In configurations using multiple Listen statements it was possible for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce busy sockets to starve other sockets of service. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added hook so standalone_main can be replaced at compile time
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (define STANDALONE_MAIN)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Doug MacEachern]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Lowest-level read/write functions in buff.c will be replaced with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the SFIO library calls sfread/sfwrite if B_SFIO is defined at
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce compile time. The default sfio discipline will behave as apache
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce would without sfio compiled in.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Doug MacEachern]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Enhance UserDir directive (mod_userdir) to accept a list of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce usernames for the 'disable' keyword, and add 'enable user...' to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce selectively *en*able userdirs if they're globally disabled.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If NETSCAPE_DBM_COMPAT is defined in EXTRA_CFLAGS then Apache
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce will work with Netscape dbm files. (dbmmanage will probably not
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce work however.) [Alexander Spohr <aspohr@netmatic.com>] PR#444
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a ListenBacklog directive to control the backlog parameter
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce passed to listen(). Also change the default to 511 from 512.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: A new handler response DONE which informs apache that the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce request has been handled and it can finish off quickly, similar to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce how it handles errors. [Rob Hartill]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Turn off chunked encoding after sending terminating chunk/footer
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce so that we can't do it twice by accident. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_expire also issues Cache-Control: max-age headers.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Rob Hartill]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: Added kill_only_once option for free_proc_chain so that it won't
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce aggressively try to kill off specific children. For fastcgi.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Stanley Gambarin <gambarin@OpenMarket.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_auth deals with extra ':' delimited fields. [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added IconHeight and IconWidth to mod_dir's IndexOptions directive.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce When used together, these cause mod_dir to emit HEIGHT and WIDTH
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce attributes in the FancyIndexing IMG tags. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Sequent and SONY NEWS-OS support added. [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Added Windows NT support
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ben Laurie and Ambarish Malpani <ambarish@valicert.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.2.6
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_include when using XBitHack Full would send ETags in addition to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce sending Last-Modifieds. This is incorrect HTTP/1.1 behaviour.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#1133
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY: When a client connects to a particular port/addr, and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce gives a Host: header ensure that the virtual host requested can
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce actually be reached via that port/addr. [Ed Korthof <ed@organic.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Support virtual hosts with wildcard port and/or multiple ports
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce properly. [Ed Korthof <ed@organic.com>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed some case-sensitivity issues according to RFC2068.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Set r->allowed properly in mod_asis.c, mod_dir.c, mod_info.c,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and mod_include.c. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Variable 'cwd' was being used pointlessly before being set.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ken Coar] PR#1738
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SIGURG doesn't exist on all platforms.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Mark Andrew Heinrich <heinrich@tinderbox.Stanford.EDU>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) When an error occurs during a POST, or other operation with a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce request body, the body has to be read from the net before allowing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a keepalive session to continue. [Roy Fielding] PR#1399
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) When an error occurs in fcntl() locking suggest the user look up
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the docs for LockFile. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) table_set() and table_unset() did not deal correctly with
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce multiple occurrences of the same key. [Stephen Scheck
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce <sscheck@infonex.net>, Ben Laurie] PR#1604
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) send_fd_length() did not calculate total_bytes_sent properly in error
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce cases. [Ben Reser <breser@regnow.com>] PR#1366
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) r->connection->user was allocated in the wrong pool causing corruption
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in some cases when used with mod_cern_meta. [Dean Gaudet] PR#1500
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_proxy was sending HTTP/1.1 responses to ftp requests by mistake.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Also removed the auto-generated link to www.apache.org that was the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce source of so many misdirected bug reports. [Roy Fielding, Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Multiple "close" tokens may have been set in the "Connection"
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce header, not an error, but a waste.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ronald.Tschalaer@psi.ch] PR#1683
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) "basic" and "digest" auth tokens should be tested case-insensitive.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ronald.Tschalaer@psi.ch] PR#1599, PR#1666
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) It appears the "257th byte" bug (see
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce htdocs/manual/misc/known_client_problems.html#257th-byte) can happen
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce at the 256th byte as well. Fixed. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_rewrite would not handle %3f properly in some situations.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Apache could generate improperly chunked HTTP/1.1 responses when
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the bputc() or rputc() functions were used by modules (such as
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_include). [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) #ifdef wrap a few #defines in httpd.h to make life easier on
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson some ports. [Ralf Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix MPE compilation error in mod_usertrack.c. [Mark Bixby]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Quote CC='$(CC)' to improve recurse make calls. [Martin Kraemer]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Avoid B_ERROR redeclaration on sysvr4 systems. [Martin Kraemer]
b9c96971964d87c2705c8dc29300ff8103479ee6Andreas GustafssonChanges with Apache 1.2.5
b9c96971964d87c2705c8dc29300ff8103479ee6Andreas Gustafsson *) SECURITY: Fix a possible buffer overflow in logresolve. This is
b9c96971964d87c2705c8dc29300ff8103479ee6Andreas Gustafsson only an issue on systems without a MAXDNAME define or where
b9c96971964d87c2705c8dc29300ff8103479ee6Andreas Gustafsson the resolver returns domain names longer than MAXDNAME. [Marc Slemko]
b9c96971964d87c2705c8dc29300ff8103479ee6Andreas Gustafsson *) Fix an improper length in an ap_snprintf call in proxy_date_canon().
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Marc Slemko]
b9c96971964d87c2705c8dc29300ff8103479ee6Andreas Gustafsson *) Fix core dump in the ftp proxy when reading incorrectly formatted
b9c96971964d87c2705c8dc29300ff8103479ee6Andreas Gustafsson directory listings. [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY: Fix possible minor buffer overflow in the proxy cache.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY: Eliminate possible buffer overflow in cfg_getline, which
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is used to read various types of files such as htaccess and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce htpasswd files. [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY: Ensure that the buffer returned by ht_time is always
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce properly null terminated. [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY: General mod_include cleanup, including fixing several
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce possible buffer overflows and a possible infinite loop. This cleanup
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce was done against 1.3 code and then backported to 1.2, the result
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is a large difference (due to indentation cleanup in 1.3 code).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Users interested in seeing a smaller set of relevant differences
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce should consider comparing against src/modules/standard/mod_include.c
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce from the 1.3b3 release. Non-indentation changes to mod_include
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce between 1.2 and 1.3 were minimal. [Dean Gaudet, Marc Slemko]
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson *) SECURITY: Numerous changes to mod_imap in a general cleanup
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson including fixing a possible buffer overflow. This cleanup also
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce was done with 1.3 code as a basis, see the the previous note
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce about mod_include. [Dean Gaudet]
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson *) SECURITY: If a htaccess file can not be read due to bad
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce permissions, deny access to the directory with a HTTP_FORBIDDEN.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce The previous behavior was to ignore the htaccess file if it could not
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson be read. This change may make some setups with unreadable
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce htaccess files stop working. PR#817 [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY: no2slash() was O(n^2) in the length of the input.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Make it O(n). This inefficiency could be used to mount a denial
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of service attack against the Apache server. Thanks to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Michal Zalewski <lcamtuf@boss.staszic.waw.pl> for reporting
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce this. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_include used uninitialized data for some uses of && and ||.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Brian Slesinsky <bslesins@wired.com>] PR#1139
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_imap should decline all non-GET methods.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Jay Bloodworth <jay@pathways.sde.state.sc.us>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) suexec.c wouldn't build without -DLOG_EXEC. [Jason A. Dour]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_userdir was modifying r->finfo in cases where it wasn't setting
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce r->filename. Since those two are meant to be in sync with each other
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce this is a bug. ["Paul B. Henson" <henson@intranet.csupomona.edu>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_include did not properly handle all possible redirects from sub-
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce requests. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Inetd mode (which is buggy) uses timeouts without having setup the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce jmpbuffer. [Dean Gaudet] PR#1064
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Work around problem under Linux where a child will start looping
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce reporting a select error over and over.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Rick Franchuk <rickf@transpect.net>] PR#1107
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.2.4
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The ProxyRemote change in 1.2.3 introduced a bug resulting in the proxy
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce always making requests with the full-URI instead of just the URI path.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Marc Slemko, Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add -lm for AIX versions >= 4.2 to allow Apache to link properly
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on this platform. [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.2.3
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The request to a remote proxy was mangled if it was generated as the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce result of a ProxyPass directive. URL schemes other than http:// were not
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce supported when ProxyRemote was used. PR#260, PR#656, PR#699, PR#713,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR#812 [Lars Eilebrecht]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed proxy-pass-through feature of mod_rewrite; Added error logging
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce information for case where proxy module is not available. [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Force proxy to always respond as HTTP/1.0, which it was failing to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce do for errors and cached responses. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Improved support for ConvexOS 11. [Jeff Venters]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.2.2 [not released]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed another long-standing bug in sub_req_lookup_file where it would
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson happily skip past access checks on subdirectories looked up with relative
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce paths. (It's used by mod_dir, mod_negotiation, and mod_include.)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add lockfile name to error message printed out when
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce USE_FLOCK_SERIALIZED_ACCEPT is defined.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Enhanced the chunking and error handling inside the buffer functions.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet, Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) When merging the main server's <Directory> and <Location> sections into
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a vhost, put the main server's first and the vhost's second. Otherwise
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the vhost can't override the main server. [Dean Gaudet] PR#717
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The <Directory> code would merge and re-merge the same section after
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a match was found, possibly causing problems with some modules.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed an infinite loop in mod_imap for references above the server root.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#748
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_include cleanup showed that handle_else was being used to handle
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce endif. It didn't cause problems, but it was cleaned up too.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Howard Fear]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Last official synchronization of mod_rewrite with author version (because
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_rewrite is now directly developed by the author at the Apache Group):
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce o added diff between mod_rewrite 3.0.6+ and 3.0.9
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce minus WIN32/NT stuff, but plus copyright removement.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - workaround for detecting infinite rewriting loops
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - fixed setting of env vars when "-" is used as subst string
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - fixed forced response code on redirects (PR#777)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - fixed cases where r->args is ""
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - kludge to disable locking on pipes under braindead SunOS
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - fix for rewritelog in cases where remote hostname is unknown
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - fixed totally damaged request_rec walk-back loop
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce o remove static from local data and add static to global ones.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce o replaced ugly proxy finding stuff by simple
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson find_linked_module("mod_proxy") call.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson o added missing negation char on rewritelog()
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson o fixed a few comment typos
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Anonymous_LogEmail was logging on each subrequest.
aeb8fffc841865c3336383eadfd9987332a03286Andreas Gustafsson [Dean Gaudet] PR#421, PR#868
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) "force-response-1.0" now only applies to requests which are HTTP/1.0 to
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson begin with. "nokeepalive" now works for HTTP/1.1 clients. Added
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce "downgrade-1.0" which causes Apache to pretend it received a 1.0.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Additionally mod_browser now triggers during translate_name to workaround
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a deficiency in the header_parse phase.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#875
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) get_client_block() returns wrong length if policy is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce REQUEST_CHUNKED_DECHUNK.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Kenichi Hori <ken@d2.bs1.fc.nec.co.jp>] PR#815
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Properly treat <files> container like other containers in mod_info.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Marc Slemko] PR#848
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The proxy didn't treat the "Host:" keyword of the host header as case-
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce insensitive. The proxy would corrupt the first line of a response from
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce an HTTP/0.9 server. [Kenichi Hori <ken@d2.bs1.fc.nec.co.jp>] PR#813,814
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_include would log some bogus values occasionally.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Skip Montanaro <skip@calendar.com>, Marc Slemko] PR#797
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: The slack fd changes in 1.2.1 introduced a problem with SIGHUP
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce under Solaris 2.x (up through 2.5.1). It has been fixed.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#832
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: In HTTP/1.1, whether or not a request message contains a body
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce is independent of the request method and based solely on the presence
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of a Content-Length or Transfer-Encoding. Therefore, our default
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce handlers need to be prepared to read a body even if they don't know
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce what to do with it; otherwise, the body would be mistaken for the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce next request on a persistent connection. discard_request_body()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce has been added to take care of that. [Roy Fielding] PR#378
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) API: Symbol APACHE_RELEASE provides a numeric form of the Apache
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce release version number, such that it always increases along the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce same lines as our source code branching. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Minor oversight on multiple variants fixed. [Paul Sutton] PR#94
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.2.1
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY: Don't serve file system objects unless they are plain files,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce symlinks, or directories. This prevents local users from using pipes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce or named sockets to invoke programs for an extremely crude form of
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce CGI. [Dean Gaudet]
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) SECURITY: HeaderName and ReadmeName were settable in .htaccess and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce could contain "../" allowing a local user to "publish" any file on
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the system. No slashes are allowed now. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY: It was possible to violate the symlink Options using mod_dir
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (headers, readmes, titles), mod_negotiation (type maps), or
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_cern_meta (meta files). [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) SECURITY: Apache will refuse to run as "User root" unless
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce BIG_SECURITY_HOLE is defined at compile time. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) CONFIG: If a symlink pointed to a directory then it would be disallowed
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce if it contained a .htaccess disallowing symlinks. This is contrary
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to the rule that symlink permissions are tested with the symlink
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce options of the parent directory. [Dean Gaudet] PR#353
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) CONFIG: The LockFile directive can be used to place the serializing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce lockfile in any location. It previously defaulted to /usr/tmp/htlock.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Somehow it took four of us: Randy Terbush, Jim Jagielski, Dean Gaudet,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Request processing now retains state of whether or not the request
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce body has been read, so that internal redirects and subrequests will
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce not try to read it twice (and block). [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add a placeholder in modules/Makefile to avoid errors with certain
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce makes. [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) QUERY_STRING was unescaped in mod_include, it shouldn't be.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#644
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_include was not properly changing the current directory.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Marc Slemko] PR#742
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Attempt to work around problems with third party libraries that do not
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce handle high numbered descriptors (examples include bind, and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce solaris libc). On all systems apache attempts to keep all permanent
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce descriptors above 15 (called the low slack line). Solaris users
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce can also benefit from adding -DHIGH_SLACK_LINE=256 to EXTRA_CFLAGS
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce which keeps all non-FILE * descriptors above 255. On all systems
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce this should make supporting large numbers of vhosts with many open
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce log files more feasible. If this causes trouble please report it,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce you can disable this workaround by adding -DNO_SLACK to EXTRA_CFLAGS.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] various PRs
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Related to the last entry, network sockets are now opened before
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce log files are opened. The only known case where this can cause
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce problems is under Solaris with many virtualhosts and many Listen
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directives. But using -DHIGH_SLACK_LINE=256 described above will
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce work around this problem. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) USE_FLOCK_SERIALIZED_ACCEPT is now default for FreeBSD, A/UX, and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Improved unix error response logging. [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Update mod_rewrite from 3.0.5 to 3.0.6. New ruleflag
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce QSA=query_string_append. Also fixed a nasty bug in per-dir context:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce when a URL http://... was used in conjunction with a special
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce redirect flag, e.g. R=permanent, the permanent status was lost.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ronald Tschalaer <Ronald.Tschalaer@psi.ch>, Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If an object has multiple variants that are otherwise equal Apache
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce would prefer the last listed variant rather than the first.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Paul Sutton] PR#94
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) "make clean" at the top level now removes *.o. [Dean Gaudet] PR#752
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_status dumps core in inetd mode. [Marc Slemko and Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) pregsub had an off-by-1 in its error checking code. [Alexei Kosut]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: fix rlim_t problems with AIX 4.2. [Marc Slemko] PR#333
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Update UnixWare support for 2.1.2.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Lawrence Rosenman <ler@lerctr.org>] PR#511
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: NonStop-UX [Joachim Schmitz <schmitz_joachim@tandem.com>] PR#327
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) PORT: Update ConvexOS support for 11.5.
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson [David DeSimone <fox@convex.com>] PR#399
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Support for DEC cc compiler under ULTRIX.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce ["P. Alejandro Lopez-Valencia" <alejolo@ideam.gov.co>] PR#388
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson *) PORT: Support for Maxion/OS SVR4.2 Real Time Unix. [no name given] PR#383
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: Workaround for AIX 3.x compiler bug in http_bprintf.c.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Marc Slemko] PR#725
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) PORT: fix problem compiling http_bprintf.c with gcc under SCO
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Marc Slemko] PR#695
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.2
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.2b11
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed open timestamp fd in proxy_cache.c [Chuck Murcko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added undocumented perl SSI mechanism for -DUSE_PERL_SSI and mod_perl.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Doug MacEachern, Rob Hartill]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Proxy needs to use hard_timeout instead of soft_timeout when it is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce reading from one buffer and writing to another, at least until it has
035cd7b5bd983b3845da08680ac311c754809403Andreas Gustafsson a custom timeout handler. [Roy Fielding and Petr Lampa]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed problem on IRIX with servers hanging in IdentityCheck,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce apparently due to a mismatch between sigaction and setjmp.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Roy Fielding] PR#502
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Log correct status code if we timeout before receiving a request (408)
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce or if we received a request-line that was too long to process (414).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ed Korthof and Roy Fielding] PR#601
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Virtual hosts with the same ServerName, but on different ports, were
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce not being selected properly. [Ed Korthof]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added code to return the requested IP address from proxy_host2addr()
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce if gethostbyaddr() fails due to reverse DNS lookup problems. Original
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce change submitted by Jozsef Hollosi <hollosi@sbcm.com>.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Chuck Murcko] PR#614
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If multiple requests on a single connection are used to retrieve
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce data from different virtual hosts, the virtual host list would be
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce scanned starting with the most recently used VH instead of the first,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce causing most virtual hosts to be ignored.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Paul Sutton and Martin Mares] PR#610
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The OS/2 handling of process group was broken by a porting patch for
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce MPE, so restored prior code for OS/2. [Roy Fielding and Garey Smiley]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Inherit virtual server port from main server if none (or "*") is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce given for VirtualHost. [Dean Gaudet] PR#576
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If the lookup for a DirectoryIndex name with content negotiation
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce has found matching variants, but none are acceptable, return the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce negotiation result if there are no more DirectoryIndex names to lookup.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Petr Lampa and Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If a soft_timeout occurs after keepalive is set, then the main child
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce loop would try to read another request even though the connection
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce has been aborted. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Configure changes: Allow for whitespace at the start of a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Module declaration. Also, be more understanding about the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce CC=/OPTIM= format in Configuration. Finally, fix compiler
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce flags if using HP-UX's cc compiler. [Jim Jagielski]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Subrequests and internal redirects now inherit the_request from the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce original request-line. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Test for error conditions before creating output header fields, since
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce we don't want the error message to include those fields. Likewise,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce reset the content_language(s) and content_encoding of the response
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce before generating or redirecting to an error message, since the new
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce message will have its own Content-* definitions. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Restored the semantics of headers_out (headers sent only with 200..299
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and 304 responses) and err_headers_out (headers sent with all responses).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Avoid the overhead of copying tables if err_headers_out is empty
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (the usual case). [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed a couple places where a check for the default Content-Type was
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce not properly checking both the value configured by the DefaultType
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce directive and the DEFAULT_TYPE symbol in httpd.h. Changed the value
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of DEFAULT_TYPE to match the documented default (text/plain).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#506
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Escape the HTML-sensitive characters in the Request-URI that is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce output for each child by mod_status. [Dean Gaudet and Ken Coar] PR#501
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Properly initialize the flock structures used by the mutex locking
3287b57976fa270224c18aa21445d24bb7fa760fAndreas Gustafsson around accept() when USE_FCNTL_SERIALIZED_ACCEPT is defined.
3287b57976fa270224c18aa21445d24bb7fa760fAndreas Gustafsson *) The method for determining PATH_INFO has been restored to the pre-1.2b
3287b57976fa270224c18aa21445d24bb7fa760fAndreas Gustafsson (and NCSA httpd) definition wherein it was the extra path info beyond
3287b57976fa270224c18aa21445d24bb7fa760fAndreas Gustafsson the CGI script filename. The environment variable FILEPATH_INFO has
3287b57976fa270224c18aa21445d24bb7fa760fAndreas Gustafsson been removed, and instead we supply the original REQUEST_URI to any
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce script that wants to be Apache-specific and needs the real URI path.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce This solves a problem with existing scripts that use extra path info
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in the ScriptAlias directive to pass options to the CGI script.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The _default_ change in 1.2b10 will change the behaviour on configs
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce that use multiple Listen statements for listening on multiple ports.
3287b57976fa270224c18aa21445d24bb7fa760fAndreas Gustafsson But that change is necessary to make _default_ consistent with other
3287b57976fa270224c18aa21445d24bb7fa760fAndreas Gustafsson forms of <VirtualHost>. It requires such configs to be modified
3287b57976fa270224c18aa21445d24bb7fa760fAndreas Gustafsson to use <VirtualHost _default_:*>. The documentation has been
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce updated. [Dean Gaudet] PR#530
3287b57976fa270224c18aa21445d24bb7fa760fAndreas Gustafsson *) If an ErrorDocument CGI script is used to respond to an error
3287b57976fa270224c18aa21445d24bb7fa760fAndreas Gustafsson generated by another CGI script which has already read the message
3287b57976fa270224c18aa21445d24bb7fa760fAndreas Gustafsson body of the request, the server would block trying to read the
3287b57976fa270224c18aa21445d24bb7fa760fAndreas Gustafsson message body again. [Rob Hartill]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) signal() replacement conflicted with a define on QNX (and potentially
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce other platforms). Fixed. [Ben Laurie] PR#512
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.2b10
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow HTTPD_ROOT, SERVER_CONFIG_FILE, DEFAULT_PATH, and SHELL_PATH
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to be configured via -D in Configuration. [Dean Gaudet] PR#449
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) <VirtualHost _default_:portnum> didn't work properly. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added prototype for mktemp() for SUNOS4 [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) In mod_proxy.c, check return values for proxy_host2addr() when reading
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce config, in case the hostent struct returned is trash.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Chuck Murcko] PR #491
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed the fix in 1.2b9 for parsing URL query info into args for CGI
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce scripts. [Dean Gaudet, Roy Fielding, Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.2b9 [never announced]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Reset the MODULE_MAGIC_NUMBER to account for the unsigned port
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce changes and in anticipation of 1.2 final release. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix problem with scripts not receiving a SIGPIPE when client drops
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the connection (e.g., when user presses Stop). Apache will now stop
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce trying to send a message body immediately after an error from write.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Roy Fielding and Nathan Kurz] PR#335
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Rearrange Configuration.tmpl so that mod_rewrite has higher priority
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce than mod_alias, and mod_alias has higher priority than mod_proxy;
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce rearranged other modules to enhance understanding of their purpose
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and relative order (and maybe even reduce some overhead).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Roy Fielding and Sameer Parekh]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix graceful restart. Eliminate many signal-related race
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce conditions in both forms of restart, and in SIGTERM. See
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce htdocs/manual/stopping.html for details on stopping and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce restarting the parent. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix memory leaks in mod_rewrite, mod_browser, mod_include. Tune
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce memory allocator to avoid a behaviour that required extra blocks to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce be allocated. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow suexec to access files relative to current directory but not
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce above. (Excluding leading / or any .. directory.) [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR#269, 319, 395
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix suexec segfault when group doesn't exist. [Gregory Neil Shapiro]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce PR#367, 368, 354, 453
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix the above fix: if suexec is enabled, avoid destroying r->url
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce while obtaining the /~user and save the username in a separate data
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce area so that it won't be overwritten by the call to getgrgid(), and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce fix some misuse of the pool string allocation functions. Also fixes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce a general problem with parsing URL query info into args for CGI scripts.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Roy Fielding] PR#339, 367, 354, 453
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix IRIX warning about bzero undefined. [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix problem with <Directory proxy:...>. [Martin Kraemer] PR#271
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Corrected spelling of "authoritative". AuthDBAuthoratative became
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce AuthDBAuthoritative. [Marc Slemko] PR#420
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) MaxClients should be at least 1. [Lars Eilebrecht] PR#375
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The default handler now logs invalid methods or URIs (i.e. PUT on an
da4cfd494c1f8d612c7e1d5407567686b326e511Andreas Gustafsson object that can't be PUT, or FOOBAR for some method FOOBAR that
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce apache doesn't know about at all). Log 404s that occur in mod_include.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Paul Sutton, John Van Essen]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If a soft timeout (or lingerout) occurs while trying to flush a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce buffer or write inside buff.c or fread'ing from a CGI's output,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce then the timeout would be ignored. [Roy Fielding] PR#373
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Work around a bug in Netscape Navigator versions 2.x, 3.x and 4.0b2's
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce parsing of headers. If the terminating empty-line CRLF occurs starting
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce at the 256th or 257th byte of output, then Navigator will think a normal
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce image is invalid. We are guessing that this is because their initial
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce read of a new request uses a 256 byte buffer. We check the bytes written
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce so far and, if we are about to tickle the bug, we instead insert a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce padding header of eminent bogosity. [Roy Fielding and Dean Gaudet] PR#232
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed SIGSEGV problem when a DirectoryIndex file is also the source
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of an external redirection. [Roy Fielding and Paul Sutton]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Configure would create a broken Makefile if the configuration file
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce contained a commented-out Rule. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Promote per_dir_config and subprocess_env from the subrequest to the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce main request in mod_negotiation. In particular this fixes a bug
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce where <Files> sections wouldn't properly apply to negotiated content.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix a potential deadlock in mod_cgi script_err handling.
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) rotatelogs zero-pads the logfile names to improve alphabetic sorting.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Mitchell Blank Jr]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Updated mod_rewrite to 3.0.4: Fixes HTTP redirects from within
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce .htaccess files because the RewriteBase was not replaced correctly.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Updated mod_rewrite to 3.0.5: Fixes problem with rewriting inside
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce <Directory> sections missing a trailing /. [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Clean up Linux settings in conf.h by detecting 2.x versus 1.x. For
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce 1.x the settings are those of pre-1.2b8. For 2.x we include
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce USE_SHMGET_SCOREBOARD (scoreboard in shared memory rather than file) and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce HAVE_SYS_RESOURCE_H (enable the RLimit commands).
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR#336, PR#340
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Redirect did not preserve ?query_strings when present in the client's
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce request. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Configure was finding non-modules on EXTRA_LIBS. [Frank Cringle] PR#380
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Use /bin/sh5 on ULTRIX. [P. Alejandro Lopez-Valencia] PR#369
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add UnixWare compile/install instructions. [Chuck Murcko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add mod_example (illustration of API techniques). [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add macro for memmove to conf.h for SUNOS4. [Marc Slemko]
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) Improve handling of directories when filenames have spaces in them.
727f5b8846457a33d06f515a10a7e1aa849ddf18Andreas Gustafsson [Chuck Murcko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) For hosts with multiple IP addresses, try all additional addresses if
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce necessary to get a connect. Fail only if hostent address list is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce exhausted. [Chuck Murcko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) More signed/unsigned port fixes. [Dean Gaudet]
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson *) HARD_SERVER_LIMIT can be defined in the Configuration file now.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.2b8
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) suexec.c doesn't close the log file, allowing CGIs to continue writing
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to it. [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) The addition of <Location> and <File> directives made the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce sub_req_lookup_simple() function bogus, so we now handle
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce the special cases directly. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) We now try to log where the server is dumping core when a fatal
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce signal is received. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Improved lingering_close by adding a special timeout, removing the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce spurious log messages, removing the nonblocking settings (they
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce are not needed with the better timeout), and adding commentary
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce about the NO_LINGCLOSE and USE_SO_LINGER issues. NO_LINGCLOSE is
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce now the default for SunOS4, UnixWare, NeXT, and IRIX. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Send error messages about setsockopt failures to the server error
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce log instead of stderr. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix loopholes in proxy cache expiry vis a vis alarms. [Brian Moore]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Stopgap solution for CGI 3-second delay with server-side includes: if
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce processing a subrequest, allocate memory from r->main->pool instead
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce of r->pool so that we can avoid waiting for free_proc_chain to cleanup
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in the middle of an SSI request. [Dean Gaudet] PR #122
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed status of response when POST is received for a nonexistent URL
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce (was sending 405, now 404) and when any method is sent with a
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce full-URI that doesn't match the server and the server is not acting
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce as a proxy (was sending 501, now 403). [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Host port changed to unsigned short. [Ken Coar] PR #276
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix typo in command definition of AuthAuthoritative. [Ken Coar] PR #246
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Defined USE_SHMGET_SCOREBOARD for shared memory on Linux. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Report extra info from errno with many errors that cause httpd to exit.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce spawn_child, popenf, and pclosef now have valid errno returns in the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce event of an error. Correct problems where errno was stomped on
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce before being reported. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) In the proxy, if the cache filesystem was full, garbage_coll() was
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce never called, and thus the filesystem would remain full indefinitely.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce We now also remove incomplete cache files left if the origin server
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson didn't send a Content-Length header and either the client has aborted
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson transfer or bwrite() to client has failed. [Petr Lampa]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed the handling of module and script-added header fields.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson Improved the interface for sending header fields and reduced
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson the duplication of code between sending okay responses and errors.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson We now always send both headers_out and err_headers_out, and
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson ensure that the server-reserved fields are not being overridden,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce while not overriding those that are not reserved. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Moved transparent content negotiation fields to err_headers_out
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson to reflect above changes. [Petr Lampa]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Fixed the determination of whether or not we should make the
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson connection persistent for all of the cases where some other part
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson of the server has already indicated that we should not. Also
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson improved the ordering of the test so that chunked encoding will
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson be set whenever it is desired instead of only when KeepAlive
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson is enabled. Added persistent connection capability for most error
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson responses (those that do not indicate a bad input stream) when
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson accessed by an HTTP/1.1 client. [Roy Fielding]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Added missing timeouts for sending header fields, error responses,
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson and the last chunk of chunked encoding, each of which could have
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson resulted in a process being stuck in write forever. Using soft_timeout
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson requires that the sender check for an aborted connection rather than
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson continuing after an EINTR. Timeouts that used to be initiated before
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson send_http_header (and never killed) are now initiated only within or
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson around the routines that actually do the sending, and not allowed to
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson propagate above the caller. [Roy Fielding]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) mod_auth_anon required an @ or a . in the email address, not both.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson [Dirk vanGulik]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) per_dir_defaults weren't set correctly until directory_walk for
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson name-based vhosts. This fixes an obscure bug with the wrong config
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson info being used for vhosts that share the same ip as the server.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Improved generation of modules/Makefile to be more generic for
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson new module directories. [Ken Coar, Chuck Murcko, Roy Fielding]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Generate makefile dependency for Configuration based on the actual
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson name given when running the Configure process. [Dean Gaudet]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Fixed problem with vhost error log not being set prior to
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson initializing virtual hosts. [Dean Gaudet]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Fixed infinite loop when a trailing slash is included after a type map
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson file URL (extra path info). [Petr Lampa]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Fixed server status updating of per-connection counters. [Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Add documentation for DNS issues (reliability and security), and try
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce to explain the virtual host matching process. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Try to continue gracefully by disabling the vhost if a DNS lookup
5f09ce124cad9712a9675f17f83ddc915e734909Andreas Gustafsson fails while parsing the configuration file. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Improved calls to setsockopt. [Roy Fielding]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Negotiation changes: Don't output empty content-type in variant list;
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson Output charset in variant list; Return sooner from handle_multi() if
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson no variants found; Add handling of '*' wildcard in Accept-Charset.
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson [Petr Lampa and Paul Sutton]
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson *) Fixed overlaying of request/sub-request notes and headers in
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce mod_negotiation. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) If two variants' charset quality are equal and one is the default
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce charset (iso-8859-1), then prefer the variant that was specifically
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce listed in Accept-Charset instead of the default. [Petr Lampa]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Memory allocation problem in push_array() -- it would corrupt memory
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce when nalloc==0. [Kai Risku <krisku@tf.hut.fi> and Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) invoke_handler() doesn't handle mime arguments in content-type
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Petr Lampa] PR#160
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Reduced IdentityCheck timeout to 30 seconds, as per RFC 1413 minimum.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed problem with ErrorDocument not working for virtual hosts
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce due to one of the performance changes in 1.2b7. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Log an error message if we get a request header that is too long,
da4cfd494c1f8d612c7e1d5407567686b326e511Andreas Gustafsson since it may indicate a buffer overflow attack. [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Made is_url() allow "[-.+a-zA-Z0-9]+:" as a valid scheme and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce not reject URLs without a double-slash, as per RFC2068 section 3.2.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Ken Coar] PR #146, #187
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Added table entry placeholder for new header_parser callback
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in all of the distributed modules. [Ken Coar] PR #191
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Allow for cgi files without the .EXE extension on them under OS/2.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Garey Smiley] PR #59
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed error message when resource is not found and URL contains
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce path info. [Petr Lampa and Dean Gaudet] PR #40
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed user and server confusion over what should be a virtual host
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce and what is the main server, resulting in access to something
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce other than the name defined in the virtualhost directive (but
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce with the same IP address) failing. [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Updated mod_rewrite to version 3.0.2, which: fixes compile error on
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce AIX; improves the redirection stuff to enable the users to generally
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce redirect to http, https, gopher and ftp; added TIME variable for
fcc9f7f86c2fa2ceb8a5c16dc934fea7fa6887f2Andreas Gustafsson RewriteCond which expands to YYYYMMDDHHMMSS strings and added the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce special patterns >STRING, <STRING and =STRING to RewriteCond, which
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce can be used in conjunction with %{TIME} or other variables to create
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce time-dependent rewriting rules. [Ralf S. Engelschall]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) bpushfd() no longer notes cleanups for the file descriptors it is handed.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce Module authors may need to adjust their code for proper cleanup to take
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce place (that is, call note_cleanups_for_fd()). This change fixes problems
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce with file descriptors being erroneously closed when the proxy module was
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce in use. [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fix bug in suexec reintroduced by changes in 1.2b7 which allows
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce initgroups() to hose the group information needed for later
dcebbac4f62ffa1a8c907095c85c4bea110216ffAndreas Gustafsson comparisons. [Randy Terbush]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Remove unnecessary call to va_end() in create_argv() which
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce caused a SEGV on some systems.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Use proper MAXHOSTNAMELEN symbol for limiting length of server name.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Clear memory allocated for listeners. [Randy Terbush]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Improved handling of IP address as a virtualhost address and
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce introduced "_default_" as a synonym for the default vhost config.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Dean Gaudet] PR #212
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric LuceChanges with Apache 1.2b7
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Port to UXP/DS(V20) [Toshiaki Nomura <nom@yk.fujitsu.co.jp>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) unset Content-Length if chunked (RFC-2068) [Petr Lampa]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) mod_negotiation fixes [Petr Lampa] PR#157, PR#158, PR#159
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - replace protocol response numbers with symbols
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - save variant-list into main request notes
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - free allocated memory from subrequests
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - merge notes, headers_out and err_headers_out
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) changed status check mask in proxy_http.c from "HTTP/#.# ### *" to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce "HTTP/#.# ###*" to be more lenient about what we accept.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Chuck Murcko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) more proxy FTP bug fixes:
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - Changed send_dir() to remove user/passwd from displayed URL.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - Changed login error messages to be more descriptive.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - remove setting of SO_DEBUG socket option
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - Make ftp_getrc() more lenient about multiline responses,
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce specifically, 230 responses which don't have continuation 230-
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce on each line). These seem to be all NT FTP servers, and while
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce perhaps questionable, they appear to be legal by RFC 959.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce - Add missing kill_timeout() after transfer to user completes.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Chuck Murcko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed problem where a busy server could hang when restarting
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce after being sent a SIGHUP due to child processes not exiting.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Modify mod_include escaping so a '\' only signifies an escaped
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce character if the next character is one that needs
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce escaping. [Ben Laurie]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Eliminated possible infinite loop in mod_imap when relative URLs are
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce used with a 'base' directive that does not have a '/' in it.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Marc Slemko, reported by Onno Witvliet <onno@tc.hsa.nl>]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Reduced the default timeout from 1200 seconds to 300, and the
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce one in the sample configfile from 400 to 300. [Marc Slemko]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Stop vbprintf from crashing if given a NULL string pointer;
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce print (null) instead. [Ken Coar]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Don't disable Nagle algorithm if system doesn't have TCP_NODELAY.
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce [Marc Slemko and Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Fixed problem with mod_cgi-generated internal redirects trying to
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce read the request message-body twice. [Archie Cobbs and Roy Fielding]
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce *) Reduced timeout on lingering close, removed possibility of a blocked
f293a69bcd1c1dd7bdac8f4102fc2398b9e475c8Eric Luce read causing the child to hang, and stopped logging of errors if
select/accept and keep-alive requests, fixed several bugs regarding
*) Tweak byteserving code (e.g. serving PDF files) to work around
Emit Content-Length header when sending multipart/byteranges.
*) Port to HI-UX/WE2. [Nick Maclaren]
regex/regcomp.c since that file also used a NEXT define.
*) Portability Fix: NeXT lacks unistd.h so we wrap it's inclusion
*) Remove mod_fastcgi.c from the distribution. This module appears
continue to be easily available at http://www.fastcgi.com/
*) Fixed bug in modules/Makefile that wouldn't allow building in more
- execution restricted to UID/GID > 100
*) Replace references to make in Makefile.tmpl with $(MAKE).
*) Add ProxyBlock directive w/IP address caching. Add IP address
*) Remove requirement for ResourceConfig/AccessConfig if not using
2. initgroups() on Linux 2.0.x clobbers gr->grid.
*) Reset timeout while reading via get_client_block() in mod_cgi.c
*) Add the ability to pass different Makefile.tmpl files to Configure
*) proxy_http.c bugfixes: [Chuck Murcko]
1) fixes possible NULL pointer reference w/NoCache
*) mod_include.c bugfixes:
*) Added definitions for S_IWGRP and S_IWOTH to conf.h [Ben Laurie]
http_protocol.c [Roy Fielding]
*) Replaced use of index() in mod_expires.c with more appropriate
*) In helpers/CutRule, replaced "cut" invocation with "awk" invocation
*) Updated helpers/GuessOS for ...
SCO UnixWare 2.1.1 (requires a separate set of #defines in conf.h)
and fixed something in helpers/PrintPath [Ben Laurie]
*) Not listed. See <http://www.apache.org/docs/new_features_1_2.html>
*) mod_env now turned on by default in Configuration.tmpl.
b) truncated hostnames/ip address in the logs
*) Not listed. See <http://www.apache.org/docs/new_features_1_1.html>
*) Internal redirects which occur in mod_dir.c now preserve the
*) Fix for POSIX compliance in waiting for processes in alloc.c.
which works similar to PidFile (in httpd.conf) [Rob Hartill]
*) Include sys/resource.h in the correct place for SunOS4 [Sameer Parekh]
*) the pstrcat call in mod_cookies.c didn't have an ending NULL,
*) Add strerror function to util.c for SunOS4 [Randy Terbush]
*) patch to get Apache compiled on UnixWare 2.x, recommended as
a temporary measure, pending rewrite of rfc931.c. [Chuck Murcko]
*) past changes to http_config.c to only use the
*) Remove uses of MAX_STRING_LEN/HUGE_STRING_LEN from several routines.
and the server provider uses relative links; as file.html
*) Not listed. See <http://www.apache.org/docs/new_features_1_0.html>
*) Fixed potential FILE* leak in http_main.c [Ben Laurie]
*) Eliminated some bogus Linux-only #defines in conf.h [Aram Mirzadeh]
*) Nuked bogus #define in httpd.h [David Robinson]
*) gcc -Wall no longer complains about an unused variable when util.c
*) Rationalize handling of BSD in conf.h and elsewhere [Randy Terbush,
*) Suppress -Wall warning by casting const away in util.c [Aram Mirzadeh]
subprocesses, including the SIGTERM/pause/SIGKILL routine, until
causing certain extremely marginal cases (e.g., ScriptAlias of a
*particular* index.html file) to fail. [David Robinson]
*) Cleaned up compiler warning from mod_access.c [Robert Thau]
*) Cleaned up comments in mod_cgi.c [Robert Thau]
"/path/to/some/link/" follows the link. [Thau, Fielding]
*) Doesn't reset DirectoryIndex to 'index.html' when
*) Clarified init code and nuked bogus warning in mod_access.c
*) Corrected several directives in sample srm.conf
*) Fixed ScriptAlias/Alias interaction by moving ScriptAlias handling to
mod_alias.c, merging it almost completely with handling of Alias, and
using a special file created for the purpose in /usr/tmp, and
which try to print out the last-modified date). [Eric Hagberg/Robert
*) <!--exec cgi="/some/uri/here"--> always treats the item named by the
*) POST to CGI works on A/UX [Jim Jagielski]
it seems to work well enough without it (even in a 10 hits/sec
workout), and the overhead for the locking under A/UX is
*) Fixed portability problems with mod_cookies.c [Cliff Skolnick]
*) Further de-Berklize mod_cookies.c; change the bogus #include. [Brian
Behlendorf/Eric Hagberg]
*) More improvements to default Configuration for A/UX [Jim Jagielski]
*) SunOS lib-function prototypes in conf.h conditionalized on __GNUC__,
*) Scoreboard file (/tmp/htstatus.*) no longer publically writable.
properly. (One-line fix to http_protocol.c).
*) Corrected cgi-src/Makefile entry for new imagemap script. [Alexei Kosut]
*) Nuked Shambhala name from src/README; had already cleaned it out
*) Set config file locations properly if not set in httpd.conf
*) Fixed mod_imap.c --- relative paths with base_uri referer don't
be nice if mod_dir.c was robust enough to handle that, but for now,
/tmp/htstatus.*, on which each process has an independent file
*) Moved FCNTL_SERIALIZED_ACCEPT defines into conf.h (that's what
*) Incidental code cleanups in http_main.c --- stop dragging
*) Fixed auth_name-related typos in http_core.c [Brian Behlendorf]
Also, fixed auth typo in http_protocol.c unmasked by this fix.
*) Reordered modules in modules.c so that Redirect takes priority
the same SIGTERM/pause/SIGKILL routine used to ding an errant CGI
*) Fixed silly typo in http_main.c which was suddenly fatal in HP-UX.
*) mod_core.c --- default_type returns DEFAULT_TYPE (the compile-time
memory area every time). Fix is in mod_dir.c. [Paul Sutton]
*) Changes to http_main.c --- root server no longer plays silly
*) mod_dir.c bug fixes: ReadmeName and HeaderName
*) http_request.c now calls unescape_url() more places where it
*) Generalized cleanup interface in alloc.c --- any function can be
registered with alloc.c as a cleanup for a resource pool;
*) More changes in alloc.c --- new cleanup_for_exec() function,
registered with the alloc.c machinery before the server exec()s a
*) Fixed basic thinkos in mod_dbm_auth.c [rst, reported by Mark Cox]
in alloc.c [rst]