CHANGES revision d157b208942316e96c34fa8b2222ed4cc2e56783
5d92fff82718cd018f0b61a10b9ad4d2b8064c95rpluemChanges with Apache 2.0.36
4acb0cd5536553055c7c6996414cec00b0191e1djim *) Trigger an error when a LoadModule directive attempts to
4acb0cd5536553055c7c6996414cec00b0191e1djim load a module which is built-in. This is a common error when
70f553c56eda63b353598193c3afc238db9b3c78sf switching from a DSO build to a static build. [Jeff Trawick]
70f553c56eda63b353598193c3afc238db9b3c78sf *) Change instdso.sh to use libtool --install everywhere and then
3fa816e4832a1c70600bdfd6fc5ef60e9f1c18bbsf clean up some stray files and symlinks that libtool leaves around
3fa816e4832a1c70600bdfd6fc5ef60e9f1c18bbsf on some platforms. This gets subversion building properly since
3fa816e4832a1c70600bdfd6fc5ef60e9f1c18bbsf it needed a re-link to be performed by libtool at install time,
0c2193f47081b894ed16f4fc371f44564d28b334jorton and the old instdso.sh logic to simply cp the DSO didn't handle
0c2193f47081b894ed16f4fc371f44564d28b334jorton that requirement. [Sander Striker]
55929f765b95e354092ac17238718e471c252ebbsf *) Allow VPATH builds to succeed when configured from an empty
55929f765b95e354092ac17238718e471c252ebbsf directory. [Thom May <thom@planetarytramp.net>]
2ce2fc3287632e20f1b8759aa17e571f68c6fe6dsf *) Fix 'control reaches end of non-void function' warning in
2ce2fc3287632e20f1b8759aa17e571f68c6fe6dsf server/log.c. [Ben Collins-Sussman <sussman@collab.net>]
49aa87d735a13ae3d04012ee0df91ddb51f7c36esf *) Perchild MPM is now correctly deemed as experimental and is now
49aa87d735a13ae3d04012ee0df91ddb51f7c36esf located in server/mpm/experimental. [Justin Erenkrantz]
b44ddab21bd6e44ba3c03f7ae8ed08dd23b68b48sf *) Fix segfault in mod_mem_cache when garabge collecting an expired
b44ddab21bd6e44ba3c03f7ae8ed08dd23b68b48sf cache entry. [Bill Stoddard]
b44ddab21bd6e44ba3c03f7ae8ed08dd23b68b48sf *) Introduced -E startup_logfile_name option to httpd to allow admins
b44ddab21bd6e44ba3c03f7ae8ed08dd23b68b48sf to begin logging errors immediately. This provides Win32 users
b44ddab21bd6e44ba3c03f7ae8ed08dd23b68b48sf an alternative to sending startup errors to the event viewer, and
0ab15ffa17f588723d0c310af78b505bf4e8a953sf allows other daemon tool authors an alternative to logging to stderr.
0ab15ffa17f588723d0c310af78b505bf4e8a953sf [William Rowe]
1dee19645438f8e3cb80fe86e1aaade04d093e45sf *) Fix subreqs with non-defined Content-Types being served improperly.
1dee19645438f8e3cb80fe86e1aaade04d093e45sf [Justin Erenkrantz]
9f478b1ce1e6296ad7a244d9d2eaa6af79cfdfbfsf *) Merge in latest GNU config.guess and config.sub files. PR 7818.
9f478b1ce1e6296ad7a244d9d2eaa6af79cfdfbfsf [Justin Erenkrantz]
9bec939825399ac2816ea0d912d2e3c3b2ed91f4sf *) Move 100 - Continue support to the HTTP_IN filter so that filters
9bec939825399ac2816ea0d912d2e3c3b2ed91f4sf are guaranteed to support 100 - Continue logic without any
9bec939825399ac2816ea0d912d2e3c3b2ed91f4sf intervention. [Justin Erenkrantz]
5cca2a55e4a1cabdc2ca0db3bee456f27cf4c69eminfrin *) Add HTTP chunked input trailer support. [Justin Erenkrantz]
33510984c759eb3da154ceb0db9b75fa0031d3b4sf *) Rename and export get_mime_headers as ap_get_mime_headers.
33510984c759eb3da154ceb0db9b75fa0031d3b4sf [Justin Erenkrantz]
33510984c759eb3da154ceb0db9b75fa0031d3b4sf *) Allow empty Host: header arguments. PR 7441. [Justin Erenkrantz]
33510984c759eb3da154ceb0db9b75fa0031d3b4sf *) Properly substitute sbindir as httpd's location in apachectl. PR 7840.
33510984c759eb3da154ceb0db9b75fa0031d3b4sf [Andreas Hasenack <andreas@netbank.com.br>]
33510984c759eb3da154ceb0db9b75fa0031d3b4sf *) Allow Win32 shebang scripts to follow the path (or omit the .exe
6b15044d54a096e6323ff1540f1a491e8de7622dsf suffix from the shebang command), and allow ScriptInterpreterSource
6b15044d54a096e6323ff1540f1a491e8de7622dsf Registry or RegistryStrict to override shebang lines, as 1.3 did.
6b15044d54a096e6323ff1540f1a491e8de7622dsf [William Rowe]
287b17b746df229d6211c624b8a3e1edda21cecdsf *) worker MPM: Fix a situation where a child exited without releasing
287b17b746df229d6211c624b8a3e1edda21cecdsf the accept mutex. Depending on the OS and mutex mechanism this
de2d327e43e0f17cdb64851beafecba96a0ed962sf could result in a hang. [Jeff Trawick]
de2d327e43e0f17cdb64851beafecba96a0ed962sf *) Update the instructions for how to get started with mod_example.
de2d327e43e0f17cdb64851beafecba96a0ed962sf [Stas Bekman]
c1ea0100af157a0d4e4a3de323f32dbfac4e5b6esf *) Fix PidFile to default to rel_runtimedir instead of
c1ea0100af157a0d4e4a3de323f32dbfac4e5b6esf rel_logfiledir. PR 7841. [Andreas Hasenack <andreas@netbank.com.br>]
c1ea0100af157a0d4e4a3de323f32dbfac4e5b6esf *) Win32: Fix problem that caused rapid performance degradation
c1ea0100af157a0d4e4a3de323f32dbfac4e5b6esf when number of connecting clients exceeded ThreadsPerChild.
c1ea0100af157a0d4e4a3de323f32dbfac4e5b6esf [Bill Stoddard]
b44565f239485673d9486068588a5fb3af008be9sf *) Fixed a segfault parsing large SSIs on non-mmap systems.
b44565f239485673d9486068588a5fb3af008be9sf [Brian Havard]
bf99d597a964add76124fc185892e04733a02969sf *) Proxy was bombing out every second keepalive request, caused by a
bf99d597a964add76124fc185892e04733a02969sf stray CRLF before the second response's status line. Proxy now
bf99d597a964add76124fc185892e04733a02969sf tries to read one more line if it encounters a CRLF where it
876167dba234e2c7065895c87b77a8c57bdcf754sf expected a status. PR 10010 [Graham Leggett]
876167dba234e2c7065895c87b77a8c57bdcf754sf *) Deprecated the apr_lock.h API. Please see the following files
9d4ce88bcd21b01619a31c53db11a51c2a1e9717sf for the improved thread and process locking and signaling:
9d4ce88bcd21b01619a31c53db11a51c2a1e9717sf apr_proc_mutex.h, apr_thread_mutex.h, apr_thread_rwlock.h,
9d4ce88bcd21b01619a31c53db11a51c2a1e9717sf apr_thread_cond.h, and apr_global_mutex.h. [Aaron Bannert]
2792ea4d5c772a6bc19dece2e098b8125bf7184cjim *) Change mod_status to use scoreboard accessor functions so it can
2792ea4d5c772a6bc19dece2e098b8125bf7184cjim be used in any MPM without having to be recompiled.
2792ea4d5c772a6bc19dece2e098b8125bf7184cjim [Ryan Morgan <rmorgan@covalent.net>]
59a3c1e7880d3eab0d182735ff47758b9860411fminfrin *) Fix parsing of some AP_DECLARE_DATA declarations so that the filter
59a3c1e7880d3eab0d182735ff47758b9860411fminfrin handle declarations are recognized. This fixes problems loading
59a3c1e7880d3eab0d182735ff47758b9860411fminfrin mod_autoindex on some platforms. [Brian Havard]
59a3c1e7880d3eab0d182735ff47758b9860411fminfrin *) add optional fixup hook to proxy [Daniel Lopez <daniel@covalent.net>]
b3e63c395d671f14a096d7e888dbfd2caf93a663sf *) Remind the admin about the User and Group directives when we are
b3e63c395d671f14a096d7e888dbfd2caf93a663sf unable to set permissions on a semaphore. PR 7812 [Jeff Trawick]
6f88aef8511bf8ccf170bec41b82b6346c8b1ac7sf *) fix possible compilation problem in ssl_engine_kernel.c. PR 7802
6f88aef8511bf8ccf170bec41b82b6346c8b1ac7sf [Doug MacEachern]
83c89da783ba8bdaef50ec1912443f7fad3556acjim *) fix possible infinite loop in mod_ssl triggered by certain
83c89da783ba8bdaef50ec1912443f7fad3556acjim netscape clients [Doug MacEachern]
5152ceef718c8d39291557205cb2a98f436ce87frjung *) fix ProxyPass when frontend is https and backend is http
5152ceef718c8d39291557205cb2a98f436ce87frjung [Doug MacEachern]
9c67ffea79ab184351b5d554b57814e13285e758jim *) Add DASL support to mod_dav
9c67ffea79ab184351b5d554b57814e13285e758jim [Sung Kim <hunkim@cse.ucsc.edu>]
3eb3f27d2d93942bd4230c231aab4eb16a316384jimChanges with Apache 2.0.35
0a2424312d9f02479a38e96dcbb170a77c218852rjung *) mod_rewrite: updated to use the new APR global mutex type.
0a2424312d9f02479a38e96dcbb170a77c218852rjung [Aaron Bannert]
6137a8d5cdc62f1d4dad8cbf720feaa35f42a596covener *) Fixes for mod_include errors on boundary conditions in which
6137a8d5cdc62f1d4dad8cbf720feaa35f42a596covener "<!--#" occurs at the very end of a bucket
80a98c87d804ac7c0ea52d3f3b4676e559b49087igalic [Paul Reder, Brian Pane]
80a98c87d804ac7c0ea52d3f3b4676e559b49087igalic *) worker, prefork, perchild, beos MPMs: Add -DFOREGROUND switch to
925a6d92173ab96cdb0a8976c7aac13ef809e218trawick cause the Apache parent process to run in the foreground (similar to
925a6d92173ab96cdb0a8976c7aac13ef809e218trawick -DNO_DETACH except that it doesn't switch session ids).
925a6d92173ab96cdb0a8976c7aac13ef809e218trawick [Jeff Trawick]
e19d3a1e487aa73e0850658d3773f748aefba7f7sf *) Added support for Posix semaphore mutex locking (AcceptMutex posixsem)
e19d3a1e487aa73e0850658d3773f748aefba7f7sf for those platforms that support it. If using the default
e19d3a1e487aa73e0850658d3773f748aefba7f7sf implementation, this is between pthread and sysvsem in priority.
e19d3a1e487aa73e0850658d3773f748aefba7f7sf This implies it's the new default for Darwin. [Jim Jagielski]
b8e5134b5779bf5505a9e5241cf8c930cc4aac5esf *) AIX: Fix the syntax for setting the LDR_CNTRL and AIXTHREAD_SCOPE
b8e5134b5779bf5505a9e5241cf8c930cc4aac5esf environment variables in the envvars file. [Jeff Trawick]
b8e5134b5779bf5505a9e5241cf8c930cc4aac5esf *) worker MPM: Don't create a listener thread until we have a worker
b1677ce80314e41b74bdd8d50c13ac159f3c09f4sf thread. Otherwise, in situations where we'll have to wait a while
b1677ce80314e41b74bdd8d50c13ac159f3c09f4sf to take over scoreboard slots from a previous generation, we'll be
b1677ce80314e41b74bdd8d50c13ac159f3c09f4sf accepting connections we can't process yet. [Jeff Trawick]
c447f5d2f2a21e8f2df49a113c4637b7f59a6feftrawick *) Allow worker MPM to build on systems without pthread_kill().
31eeb74b832eea054c7a42081c1afdeccd987e5etrawick [Pier Fumagalli, Jeff Trawick]
31eeb74b832eea054c7a42081c1afdeccd987e5etrawick *) Prevent ap_add_output_filters_by_type from being called in
e9bf808f770605c1f54a9d0fb1c560115c91fd71sf ap_set_content_type if the content-type hasn't changed.
e9bf808f770605c1f54a9d0fb1c560115c91fd71sf [Justin Erenkrantz]
575cc52562c51c0c8bb8de0c6eaa55a60f7f895bsf *) Performance: implemented the bucket allocator made possible by the
575cc52562c51c0c8bb8de0c6eaa55a60f7f895bsf API change in 2.0.34. [Cliff Woolley]
490993ea2eda52d4fdacff247eb2657296c86f71trawick *) Don't allow initialization to succeed if we can't get a socket
490993ea2eda52d4fdacff247eb2657296c86f71trawick corresponding to one of the Listen statements. [Jeff Trawick]
03502de2853fcebaf853ed3bcfd5033894c238bbjimChanges with Apache 2.0.34
03502de2853fcebaf853ed3bcfd5033894c238bbjim *) Allow all Perchild directives to accept either numerical UID/GID
afee7998d5045107a7673f09bc3448a5dc1b6612jim or logical user/group names. [Scott Lamb <slamb@slamb.org>]
6ec154950417d0b32082f6590ffa3acc3e0c3d49sf *) Make Perchild compile cleanly and serve pages again. [Ryan Bloom]
6ec154950417d0b32082f6590ffa3acc3e0c3d49sf *) implement ssl proxy to support ProxyPass / https:// and the
6ec154950417d0b32082f6590ffa3acc3e0c3d49sf SSLProxy* directives [Doug MacEachern]
3d636d91428f2c0a74012c89a94ec7d5b40aa52esf *) Update mod_cgid to not do single-byte socket reads for CGI headers
b38e1e2f118f67818f88faee827f4b3a2881e908sf [Brian Pane]
33e53d7c6aa5d004d96ea11d7f3ca35b30e82544trawick *) Made AB's use of the Host: header rfc2616 compliant
20e0c71be778348516719e1e58a9f55c8e78c570trawick by Taisuke Yamada <tai@iij.ad.jp> [Dirk-Willem van Gulik].
027f7b141f164258b254c38319d06452b25d7660trawick *) The old, legacy (and unused) code in which the scoreboard was totally
977c4527be5a21182f24fc22a40a79d576a52f86trawick and completely contained in a file (SCOREBOARD_FILE) has been
977c4527be5a21182f24fc22a40a79d576a52f86trawick removed. This does not affect scoreboards which are *mapped* to
977c4527be5a21182f24fc22a40a79d576a52f86trawick files using named-shared-memory. [Jim Jagielski]
7fef9f66804ea10d5bf343cdd3d607465e8340cajim *) Change bucket brigades API to allow a "bucket allocator" to be
7fef9f66804ea10d5bf343cdd3d607465e8340cajim passed in at certain points. This allows us to implement freelists
3770ed746d69c7a4111cba9966169bd5d7a509a6poirier so that we can stop using malloc/free so frequently.
3770ed746d69c7a4111cba9966169bd5d7a509a6poirier [Cliff Woolley, Brian Pane]
3770ed746d69c7a4111cba9966169bd5d7a509a6poirier *) Add support for macro expansion within the variable names in
3770ed746d69c7a4111cba9966169bd5d7a509a6poirier <!--#echo--> and <!--#set--> directives [Brian Pane]
7bd92b29516bc4bf7351d35aa447dbe68f1e8bb4jorton *) Fix some mod_include segfaults [Cliff Woolley, Brian Pane, Brad Nicholes]
a81c0c1ae464b2063a21b45f80c9da8d89bb840ecovener *) Update the "RedHat" Layout to match Red Hat Linux version 7. PR BZ-7422
a81c0c1ae464b2063a21b45f80c9da8d89bb840ecovener [Joe Orton]
ffae06377667a5d8f9699ac7512134de7000a83dminfrin *) add compat layer to support RSA SSLC 1.x and 2.x in mod_ssl
ffae06377667a5d8f9699ac7512134de7000a83dminfrin [Jon Travis, John Barbee, William Rowe, Ryan Bloom, Doug MacEachern]
ffae06377667a5d8f9699ac7512134de7000a83dminfrin *) Add a new parameter to the quick_handler hook to instruct
efc81fe729a2b7401028387da184b4a98f0b854atrawick quick handlers to optionally do a lookup rather than actually
efc81fe729a2b7401028387da184b4a98f0b854atrawick serve content. This is the first of several changes required fix
efc81fe729a2b7401028387da184b4a98f0b854atrawick several problems with how quick handlers work with subrequests.
efc81fe729a2b7401028387da184b4a98f0b854atrawick [Bill Stoddard]
8f066564bfc0fd6ddc6ca4b2f2410615554597d1jim *) worker MPM: Get MaxRequestsPerChild to work again. [Jeff Trawick]
d56f48e6d861159b42b8f6eadd66e9e03086ceb9fuankg *) [APR-related] The ordering of the default accept mutex method has
cfd376e3e25eb609c30773a0897c97b2a9a76130fuankg been changed to better match what's done in Apache 1.3. The ordering
cfd376e3e25eb609c30773a0897c97b2a9a76130fuankg is now (highest to lowest): pthread -> sysvsem -> fcntl -> flock.
cfd376e3e25eb609c30773a0897c97b2a9a76130fuankg [Jim Jagielski]
4acc1efe19ac2e6f2df0abb4d5bf99bd8ae3c5c6jim *) Ensure that the build/ directory is created when using VPATH.
4acc1efe19ac2e6f2df0abb4d5bf99bd8ae3c5c6jim [Justin Erenkrantz]
29ecbd9db1622e74964264d078336f7604d65093jim *) Add some popular types to the mime magic file. PR 7730.
29ecbd9db1622e74964264d078336f7604d65093jim [Linus Walleij <triad@df.lth.se>, Justin Erenkrantz]
a503caacf7ab36d5bc42cb7c78256e1221642656jim *) Remove the single-byte socket reads for CGI headers [Brian Pane]
da40dfabefd6f8eb8450e9a097c594ee2ab13e3eminfrin *) When a proxied site was being served, Apache was replacing
da40dfabefd6f8eb8450e9a097c594ee2ab13e3eminfrin the original site Server header with it's own, which is not
da40dfabefd6f8eb8450e9a097c594ee2ab13e3eminfrin allowed by RFC2616. Fixed. [Graham Leggett]
59d316b83d42d2a07e25c20d8c35a07b369618bdsf *) Fix a mod_cgid problem that left daemon processes stranded
59d316b83d42d2a07e25c20d8c35a07b369618bdsf in some server restart scenarios. [Jeff Trawick]
8602c898d4e06a7e7b9d6b7cf4b172a8e7310987sf *) Added exp_foo and rel_foo variables to config_vars.mk for
8602c898d4e06a7e7b9d6b7cf4b172a8e7310987sf all Apache and Autoconf path variables (like --sysconfdir,
8602c898d4e06a7e7b9d6b7cf4b172a8e7310987sf --sbindir, etc). exp_foo is the "expanded" version, which means
8602c898d4e06a7e7b9d6b7cf4b172a8e7310987sf that all internal variable references have been interpolated.
8602c898d4e06a7e7b9d6b7cf4b172a8e7310987sf rel_foo is the same as $exp_foo, only relative to $prefix if they
4acc1efe19ac2e6f2df0abb4d5bf99bd8ae3c5c6jim share a common path. [Aaron Bannert]
4acc1efe19ac2e6f2df0abb4d5bf99bd8ae3c5c6jim *) Fix some restart/terminate problems in the worker MPM. Don't
4acc1efe19ac2e6f2df0abb4d5bf99bd8ae3c5c6jim drop connections during graceful restart. [Jeff Trawick]
4acc1efe19ac2e6f2df0abb4d5bf99bd8ae3c5c6jim *) Change the header merging behaviour in proxy, as some headers
3e2582713ed6883683272fbc628a27419d0ed543minfrin (like Set-Cookie) cannot be unmerged due to stray commas in
3e2582713ed6883683272fbc628a27419d0ed543minfrin dates. [Graham Leggett]
3e2582713ed6883683272fbc628a27419d0ed543minfrin *) Be more vocal about what AcceptMutex values we allow, to make
2c132b1e3610da2fb9e6b3594a313efa3ff29e22minfrin us closer to how 1.3 does it. [Jim Jagielski]
2c132b1e3610da2fb9e6b3594a313efa3ff29e22minfrin *) Get nph- CGI scripts working again. PRs 8902, 8907, 9983
a46801e6532423aa7bd184471eb49158d7c9ae62sf [Jeff Trawick]
a46801e6532423aa7bd184471eb49158d7c9ae62sf *) Upgraded PCRE library to latest version 3.9 [Brian Pane]
808a26d70f28498b9d7252a70d9fb23def781901minfrin *) Add accessor function to set r->content_type. From now on,
ef12246b88300687bf1faaf56d115dd8d8d82761jorton ap_rset_content_type() should be used to set r->content_type.
6f9bf764bc79571d1da19dfbbd78527fca278a8eminfrin This change is required to properly implement the
6f9bf764bc79571d1da19dfbbd78527fca278a8eminfrin AddOutputFilterByType configuration directive.
6f9bf764bc79571d1da19dfbbd78527fca278a8eminfrin [Bill Stoddard, Sander Striker, Ryan Bloom]
7d59a9f282af9dce031b61062a0d941641101237rpluem *) Add new M_FOO symbols for the WebDAV/DeltaV methods specified by
7d59a9f282af9dce031b61062a0d941641101237rpluem RFC 3253. Improved the method name/number mapping functions.
7d59a9f282af9dce031b61062a0d941641101237rpluem [Greg Stein]
e63e8b4b886d2144fed7946d0fbe8d27386be2dcjorton *) remove sock_enable_linger from connection.c [Ian Holsman]
223c64b836fbc2bc8611da9604379dfe13f56abasf *) Fix for virtual host processing where the requested hostname
223c64b836fbc2bc8611da9604379dfe13f56abasf has a '.' at the end (PR 9187) [Ryan Cruse <ryan@estara.com>]
bf507cc1e6ad55303c3d436c6ca153f46c788be6sf *) mod_dav's APIs for REPORT response handling was changed so that
bf507cc1e6ad55303c3d436c6ca153f46c788be6sf providers can generate the content directly into the output filter
bf507cc1e6ad55303c3d436c6ca153f46c788be6sf stack, rather than buffering the response into memory. [Greg Stein]
93cf7fc650197b941ae31a7c7e51e901b129e954igalic *) Fix a hang condition with graceful restart and prefork MPM
93cf7fc650197b941ae31a7c7e51e901b129e954igalic in the situation where MaxClients is very high but
93cf7fc650197b941ae31a7c7e51e901b129e954igalic much fewer servers are actually started at the time of the
a1b1c78faf7969affb320f5c8eb270ffa21314c4rjung restart. [Jeff Trawick]
a1b1c78faf7969affb320f5c8eb270ffa21314c4rjung *) Small performance fixes for mod_include [Brian Pane]
a2558ec3af4391b7da7fe61e1e53383bbd0174b9jorton *) Performance improvement for the error logger [Brian Pane]
a2558ec3af4391b7da7fe61e1e53383bbd0174b9jorton *) Change configure so that Solaris 8 and above have
8d6b3720340d0bd7f8d25e2a8563527e97a48df8jorton SINGLE_LISTEN_UNSERIALIZED_ACCEPT defined by default.
8d6b3720340d0bd7f8d25e2a8563527e97a48df8jorton according to sun people solaris 8+ doesn't have a thundering
8d6b3720340d0bd7f8d25e2a8563527e97a48df8jorton herd problem [Ian Holsman]
48e4b65042d94992c50f1db6c0b0cdbd99ca77e8sf *) Allow URIs specifying CGI scripts to include '/' at the end
48e4b65042d94992c50f1db6c0b0cdbd99ca77e8sf (e.g., /cgi-bin/printenv/) on AIX and Solaris (and other OSs
48e4b65042d94992c50f1db6c0b0cdbd99ca77e8sf which ignore '/' at the end of the names of non-directories).
48e4b65042d94992c50f1db6c0b0cdbd99ca77e8sf PR 10138 [Jeff Trawick]
48e4b65042d94992c50f1db6c0b0cdbd99ca77e8sf *) implement SSLSessionCache shmht and shmcb based on apr_rmm and
47ae8ca3c79d279b2e5424d6b8cf5e4e61ea968fjim apr_shm. [Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>]
47ae8ca3c79d279b2e5424d6b8cf5e4e61ea968fjim *) Fix apxs -g handling. Move config_vars.mk from the top build
47ae8ca3c79d279b2e5424d6b8cf5e4e61ea968fjim directory to the build directory. PR 10163 [Jeff Trawick]
397df70abe0bdd78a84fb6c38c02641bcfeadceasf *) Fix some mod_include problems which broke evaluation of some
397df70abe0bdd78a84fb6c38c02641bcfeadceasf expressions. PR 10108 [Jeff Trawick]
9b5fe1d4ec48643fb819bbce9dc80f93f444fb48sf *) Fix the calculation of request time in mod_status. [Stas Bekman]
9b5fe1d4ec48643fb819bbce9dc80f93f444fb48sf *) Fix the calculation of thread_num in the worker score structure.
dd9f60fdfeb73f829fe0b260b7975b4b22be0838sf [Stas Bekman]
dd9f60fdfeb73f829fe0b260b7975b4b22be0838sf *) Use apr_atomic operations in managing the mod_mem_cache
135e1d6a301398168e3b2e5125508828591e1673niq cache_objects for SMP scalability. (see USE_ATOMICS
135e1d6a301398168e3b2e5125508828591e1673niq preprocessor directive in mod_file_cache)
135e1d6a301398168e3b2e5125508828591e1673niq [Bill Stoddard]
135e1d6a301398168e3b2e5125508828591e1673niq *) Add filehandle caching to mod_mem_cache. (see CACHE_FD
135e1d6a301398168e3b2e5125508828591e1673niq preprocessor directive in mod_file_cache)
135e1d6a301398168e3b2e5125508828591e1673niq [Bill Stoddard]
c7de70e936ac1e36c25676fe62e65dbacb947619minfrin *) Implement prototype mod_disk_cache for use with mod_cache.
c7de70e936ac1e36c25676fe62e65dbacb947619minfrin [Bill Stoddard]
c7de70e936ac1e36c25676fe62e65dbacb947619minfrin *) Add a missing manualdir entry in the Debian config.layout.
c7de70e936ac1e36c25676fe62e65dbacb947619minfrin [Thom May <thom@planetarytramp.net>]
1b1621900bd89ddc496d721c865a726f635ebd7esf *) Stop installing libtool for APR and tell APR where it should place
1b1621900bd89ddc496d721c865a726f635ebd7esf its copy of libtool (via our installbuildpath layout variable).
1b1621900bd89ddc496d721c865a726f635ebd7esf [Justin Erenkrantz]
1b1621900bd89ddc496d721c865a726f635ebd7esf *) New directive ProxyIOBufferSize. Sets the size of the buffer used
4203a35c28d7c60adb7e9ef3be87aad34951c79asf when reading from a remote HTTP server in proxy. [Graham Leggett]
4203a35c28d7c60adb7e9ef3be87aad34951c79asf *) Modify receive/send loop in proxy_http and proxy_ftp so that
c094add0a23fe1120fd33711ba2e2d084f5629a1sf should it be necessary, the remote server socket is closed before
c094add0a23fe1120fd33711ba2e2d084f5629a1sf transmitting the last buffer (set by ProxyIOBufferSize) to the
c094add0a23fe1120fd33711ba2e2d084f5629a1sf client. This prevents the backend server from being forced to hang
12b26f433fd7d6fc9f76413d7c2cabf4fa5cb300sf around while the last few bytes are transmitted to a slow client.
12b26f433fd7d6fc9f76413d7c2cabf4fa5cb300sf Fix the case where no error checking was performed on the final
12b26f433fd7d6fc9f76413d7c2cabf4fa5cb300sf brigade in the loop. [Graham Leggett]
26f56d4a3c12077d605362e97490e34522fa4814covener *) Scrap CacheMaxExpireMin and CacheDefaultExpireMin. Change
26f56d4a3c12077d605362e97490e34522fa4814covener CacheMaxExpire and CacheDefaultExpire to use seconds rather than
2cef7e294acb5d8b8b5dcb21a55438da0b73f63figalic hours. [Graham Leggett, Bill Stoddard]
2cef7e294acb5d8b8b5dcb21a55438da0b73f63figalic *) New Directive SSIUndefinedEcho. to change the '(none)' echoed
2d2de64c25c1519122a76150a7daf2c05f53fd9asf for a undefined variable. [Ian Holsman]
2d2de64c25c1519122a76150a7daf2c05f53fd9asf *) Proxy HTTP and CONNECT: Keep trying other addresses from the DNS
2d2de64c25c1519122a76150a7daf2c05f53fd9asf when we can't get a socket in the specified address family. We may
27c5ebb7d411a214f5b6b55a881086ce086d3dd3covener have gotten back an IPv6 address first and yet our system is not
27c5ebb7d411a214f5b6b55a881086ce086d3dd3covener configured to allow IPv6 sockets. [Jeff Trawick]
27c5ebb7d411a214f5b6b55a881086ce086d3dd3covener *) Be more careful about recursively removing CVS directories. Make
7697b1b7376a532163c621e050b70c90dcb15d66covener sure that we aren't cd'ing to their home directory first. PR: 9993
7697b1b7376a532163c621e050b70c90dcb15d66covener [Aaron Bannert, James LewisMoss <dres@lewismoss.net>]
7697b1b7376a532163c621e050b70c90dcb15d66covener *) Add a missing errordir entry in the Debian config.layout. PR: 10067
7697b1b7376a532163c621e050b70c90dcb15d66covener [Dirk-Jan Faber <dirk-jan@selwerd.nl>, Aaron Bannert,
9e0536cd66a389bdaa758a825b8bbd8fea665a3eigalic Thom May <thom@planetarytramp.net>]
9e0536cd66a389bdaa758a825b8bbd8fea665a3eigalic *) Rename the filter ordering priorities. The recent filtering fixes
862bbb262644e8aefae1bf352552b01908ecae0eminfrin have showcased problems with their usage. Therefore, we need to
862bbb262644e8aefae1bf352552b01908ecae0eminfrin rename them to increase the clarity. (CONTENT->RESOURCE,
862bbb262644e8aefae1bf352552b01908ecae0eminfrin HTTP_HEADER->CONTENT_SET/PROTOCOL) [Justin Erenkrantz]
dd3b88790af9d18429c732ca7bc83ec4ef43d3ffrpluemChanges with Apache 2.0.33
5bbabc874e3fcfbea08c199f7a79ee05b4817a70sf *) Fix a problem in the new --enable-layout functionality where
5bbabc874e3fcfbea08c199f7a79ee05b4817a70sf it wouldn't allow overrides from variables like --prefix,
5bbabc874e3fcfbea08c199f7a79ee05b4817a70sf --bindir, etc. [Thom May <thom@planetarytramp.net>]
aec9747aa70c1dce98e536e8eef5a6a0ab0f1d6cjim *) Fix a bug in the core input filter for AP_MODE_EXHAUSTIVE. It
aec9747aa70c1dce98e536e8eef5a6a0ab0f1d6cjim no longer hangs around waiting for the socket to close before
7b7e8ba34e262064914ceedacd5f7d9201b6575ccovener returning exhaustive data. [Aaron Bannert]
7b7e8ba34e262064914ceedacd5f7d9201b6575ccovener *) rename apr_exploded_time_t to apr_time_exp_t (as per renames pending)
220bc4233b21982d7c51842a1774db0ba6172ca4covener [Thom May <thom@planetarytramp.net>]
220bc4233b21982d7c51842a1774db0ba6172ca4covener *) Change mod_ssl to always do a full startup/teardown on restarts.
220bc4233b21982d7c51842a1774db0ba6172ca4covener this allows mod_ssl to be added to a server that is already
6f2fbf354b34981f398cf0313aa44702ea2a7066covener running and makes it possible to add/change certs/keys after the
6f2fbf354b34981f398cf0313aa44702ea2a7066covener server has been started. [Doug MacEachern]
6f2fbf354b34981f398cf0313aa44702ea2a7066covener *) Introduce PassPhraseDialog "|/path/to/pipe" mechanism to mod_ssl.
9e7c7a8fa19c33d1e90f8f7ffab69beacbe72566covener This pipe must be a bidirectional 'console' style relay, which
9e7c7a8fa19c33d1e90f8f7ffab69beacbe72566covener mod_ssl prints all prompts to the pipe's stdin, and reads the
9e7c7a8fa19c33d1e90f8f7ffab69beacbe72566covener passphrases from the pipe's stdout. [William Rowe]
a961006b347d6527ccaeab9cf019a4e68d26bfb0covener *) Fix bug where --sysconfdir and --localstatedir were being
a961006b347d6527ccaeab9cf019a4e68d26bfb0covener ignored. [Thom May <thom@planetarytramp.net>, Aaron Bannert]
e3f43882b4f7ac7d1aa679be4b319cca04fd22eecovener *) Fix --enable-layout to work again. Caution: When specifying
e3f43882b4f7ac7d1aa679be4b319cca04fd22eecovener --enable-layout, common arguments like --prefix, --exec-prefix,
e3f43882b4f7ac7d1aa679be4b319cca04fd22eecovener etc. will be ignored and the settings from the layout will be
8dea7832dea3789fe0b90c434c284bcaad96d40fcovener used instead. [Thom May <thom@planetarytramp.net>, Aaron Bannert]
8dea7832dea3789fe0b90c434c284bcaad96d40fcovener PR 9124, 9873, 9885
0bfcc4d046f6735af2f15981fb53e4c0680b4731covener *) New Directive for mod_proxy: ProxyRemoteMatch. This provides
b761a57b4e63006c287823270876ab40d3212160covener regex pattern matching for the determination of which requests
b761a57b4e63006c287823270876ab40d3212160covener to use the remote proxy for. [Jim Jagielski]
b761a57b4e63006c287823270876ab40d3212160covener *) Fix CustomLog bytes-sent with HTTP 0.9. [Justin Erenkrantz]
5d92fff82718cd018f0b61a10b9ad4d2b8064c95rpluem *) Prevent Apache from ignoring SIGHUP due to some lingering 1.3
5d92fff82718cd018f0b61a10b9ad4d2b8064c95rpluem cruft in piped logs and rewritemap child processes.
5d92fff82718cd018f0b61a10b9ad4d2b8064c95rpluem [William Rowe]
01195d035ccef88e72009e9607157d5eddcb6b7drjung *) All instances of apr_lock_t have been removed and converted
aec9747aa70c1dce98e536e8eef5a6a0ab0f1d6cjim to one of the following new lock APIs: apr_thread_mutex.h,
84fbf855118f318dd5e511d8e5b902cecc1177c0jim apr_proc_mutex.h, or apr_global_mutex.h. No new code should
84fbf855118f318dd5e511d8e5b902cecc1177c0jim use the apr_lock.h API, as the old API will soon be deprecated.
0ed19acadd3d3dd593759173d87d2243e97914e2sf [Aaron Bannert]
0ed19acadd3d3dd593759173d87d2243e97914e2sf *) Merged in changes to mod_ssl up through 2.8.7-1.3.23.
0ed19acadd3d3dd593759173d87d2243e97914e2sf [Ralf S. Engelschall, Cliff Woolley]
041b426f9b15072b59a32f132e6d04173ab3df68covener *) mod-include: make it handle flush'es and fix the 'false-alarm'
041b426f9b15072b59a32f132e6d04173ab3df68covener [Justin Erenkrantz, Brian Pane, Ian Holsman]
cb838cc4d5fd559efd6c0579a0fcb8f6e5a7af22minfrin *) ap_get_*_filter_handle() functions to allow 3rd party modules
cb838cc4d5fd559efd6c0579a0fcb8f6e5a7af22minfrin to lookup filter handles so they can bypass the filter name
cb838cc4d5fd559efd6c0579a0fcb8f6e5a7af22minfrin lookup when adding filters to a request (via ap_add_*_filter_handle())
15ff8c621815e8337abc10638f2b2853ee6fd076minfrin [Ryan Morgan <rmorgan@covalent.net>]
15ff8c621815e8337abc10638f2b2853ee6fd076minfrin *) Fix for multiple file buckets on Win32, where the first file
21ccb6cd9272c9066a8f5bb3e7785f46115289desf bucket would cause the immediate closure of the socket on any
21ccb6cd9272c9066a8f5bb3e7785f46115289desf non-keepalive requests. [Ryan Morgan <rmorgan@covalent.net>]
b0ac1e83f8582a9b5a72bff798ffb31a419c8adesf *) Correct Win32 failure of mmap of a segment beyond start of the
b0ac1e83f8582a9b5a72bff798ffb31a419c8adesf file; fixes large SSL and similar transfers. [William Rowe]
b682e60dd82772dba52ba77138e494f15c00a551trawick *) Implement apr_proc_detach changes and allow -DNO_DETACH in the
b682e60dd82772dba52ba77138e494f15c00a551trawick multi-process mode to not "daemonize" while detaching from the
b682e60dd82772dba52ba77138e494f15c00a551trawick controlling terminal. This is necessary for Apache to work with
b682e60dd82772dba52ba77138e494f15c00a551trawick process-management tools like AIX's "System Resource Controller"
b682e60dd82772dba52ba77138e494f15c00a551trawick as well as Dan Bernstein's "daemontools".
79c754eb51681c3389cd966753e902c429f78939trawick [Jos Backus <josb@cncdsl.com>, Aaron Bannert]
79c754eb51681c3389cd966753e902c429f78939trawick *) Convert mod_auth_digest to use the new apr_global_mutex_t
8651de219ec5f595af20afdc9da41ce72aaa50d5minfrin type. [Aaron Bannert]
8651de219ec5f595af20afdc9da41ce72aaa50d5minfrin *) fix bug in mod-include where it wouldn't send a unmatched
8651de219ec5f595af20afdc9da41ce72aaa50d5minfrin part if it was at the end of a bucket [Ian Holsman]
8fae12696bce44be9ce4c56888690cad8ac7b8f9sf *) worker MPM: Improve logging of errors with the interface between
8fae12696bce44be9ce4c56888690cad8ac7b8f9sf the listener thread and worker threads. [Jeff Trawick]
8fae12696bce44be9ce4c56888690cad8ac7b8f9sf *) Some browsers ignore cookies that have been merged into a
8fae12696bce44be9ce4c56888690cad8ac7b8f9sf single Set-Cookie header. Set-Cookie and Set-Cookie2 headers
d5612bd28e194390b2c74fcf712d564b0e002684sf are now unmerged in the http proxy before being sent to the
d5612bd28e194390b2c74fcf712d564b0e002684sf client. [Graham Leggett]
4ea161d94782fa56f4b36d496f35ff8577c43065covener *) Fix a problem with proxy where each entry of a duplicated
4ea161d94782fa56f4b36d496f35ff8577c43065covener header such as Set-Cookie would overwrite and obliterate the
4ea161d94782fa56f4b36d496f35ff8577c43065covener previous value of the header, resulting in multiple header
b588214d6e6fe09abe709e83e894921fbc7e25c8covener values (like cookies) going missing.
b588214d6e6fe09abe709e83e894921fbc7e25c8covener [Graham Leggett, Joshua Slive]
c64fc4e9830bb1ffdc3491aef5ed3be5b90c466bcovener *) Add the server-limit and thread-limit values to the scoreboard
c64fc4e9830bb1ffdc3491aef5ed3be5b90c466bcovener for the sake of third-party applications.
c64fc4e9830bb1ffdc3491aef5ed3be5b90c466bcovener [Adam Sussman <myddryn@vishnu.vidya.com>]
ae5efbbf49a7ca6d233209a4d011550989e22556covener *) Fix segfault when proxy recieves an invalid HTTP response [Ian Holsman]
ae5efbbf49a7ca6d233209a4d011550989e22556covener *) OS/390: Get make install to properly copy DSO modules.
8c2bb916633b1eb3dccf91c776363bbc3a6145decovener [Jeff Trawick]
8c2bb916633b1eb3dccf91c776363bbc3a6145decovener *) Win32: Fix bug in mod_status with displaying "Restart Time"
8c2bb916633b1eb3dccf91c776363bbc3a6145decovener and "Server uptime".
503bec4c591d28ac6cec7182294cdef2ec6a9829covener [Bill Stoddard]
503bec4c591d28ac6cec7182294cdef2ec6a9829covener *) Fix IPv6 name-based virtual hosts. [Jeff Trawick]
c00149c3cb27e0381362d07ccf2143574b4f600dsf *) Introduce AddOutputFilterByType directive. [Justin Erenkrantz]
c00149c3cb27e0381362d07ccf2143574b4f600dsf *) Fix DEBUG_CGI support in mod_cgi. PR 9670, 9671.
766b0a4793197ccef3dfa202d1fee1e1f929ffa7sf [David MacKenzie <djm@pix.net>]
766b0a4793197ccef3dfa202d1fee1e1f929ffa7sf *) Fix incorrect check for script_in in mod_cgi. PR 9669.
97b692bfc8673c8858f03498f81a993ac0c04c01sf [David MacKenzie <djm@pix.net>]
97b692bfc8673c8858f03498f81a993ac0c04c01sf *) Fix segfault and display error when SSLMutex file can not be
5e6cf205d2b0c848e15c65dab9711805395a5108minfrin created. [Adam Sussman <myddryn@vishnu.vidya.com>]
5e6cf205d2b0c848e15c65dab9711805395a5108minfrin *) Add reference counting to mod_mem_cache cache objects to
5e6cf205d2b0c848e15c65dab9711805395a5108minfrin better manage removing objects from the cache.
df419be6d7d4b68823efa05722375552af49c2b6minfrin [Bill Stoddard]
df419be6d7d4b68823efa05722375552af49c2b6minfrin *) Change the verbage on the ScoreBoardFile in our default configs.
df419be6d7d4b68823efa05722375552af49c2b6minfrin Also change the default to be commented out (unspecified) so we
c03e31374e50a227cb554a0f1d4a9056ce80d99asf get anonymous shared memory by default. [Aaron Bannert]
c03e31374e50a227cb554a0f1d4a9056ce80d99asf *) Implement new ScoreBoardFile directive logic. This affects how
40b22d3b20454959fe51fdc89907908d77701078minfrin we create the scoreboard's shared memory segment. If the directive
40b22d3b20454959fe51fdc89907908d77701078minfrin is present, a name-based segment is created. If the directive is
40b22d3b20454959fe51fdc89907908d77701078minfrin not present, first an anonymous segment is created, and if that
b4a00883f358625923365ca1560c96edec172a52sf fails, a name-based segment is created from a file of the name
b4a00883f358625923365ca1560c96edec172a52sf DEFAULT_SCOREBOARD. This gives third-party applications the
b4a00883f358625923365ca1560c96edec172a52sf ability to access our scoreboard. [Aaron Bannert]
0553e62d75ef12d9a6646bb874be1fbf9e4c1dfbsf *) Allow mod_deflate to work with non-GET requests and properly send
0553e62d75ef12d9a6646bb874be1fbf9e4c1dfbsf Content-Lengths. [Sander Striker <striker@apache.org>]
87af9ffc3a42633fe12e11a0ff77bc099ecdca82sf *) Fix ap_directory_merge() to correctly merge configs when there is
f58bb3da705eb7ec926f4883597fc2eb1336a360minfrin no <Directory /> block. [Justin Erenkrantz, William Rowe]
f58bb3da705eb7ec926f4883597fc2eb1336a360minfrin *) Remove spurious debug messsages that are normal under HTTP
f58bb3da705eb7ec926f4883597fc2eb1336a360minfrin keep-alive logic. [Jeff Trawick, Justin Erenkrantz]
be192cefa381d5bae6868034687471754cb43175sf *) Fix a bug in mod_cgid that would prevent proper shutdown death
be192cefa381d5bae6868034687471754cb43175sf of the cgid process. [Aaron Bannert]
be192cefa381d5bae6868034687471754cb43175sf *) Add signal handling back in to the worker MPM for the one_process
f4a0825e91eec135b5e41c697439e9a13014fa2cminfrin (-X, -DDEBUG, -DONE_PROCESS) case. [Aaron Bannert]
f4a0825e91eec135b5e41c697439e9a13014fa2cminfrin *) Performance: Reuse per-connection transaction pools in the
f4a0825e91eec135b5e41c697439e9a13014fa2cminfrin worker MPM, rather than destroying and recreating them. [Brian Pane]
5876f43a746f688a32b7201bced8591ddf19bd43minfrin *) Remove all signals from the worker MPM's child process. Instead,
5876f43a746f688a32b7201bced8591ddf19bd43minfrin the parent uses the Pipe of Death for all communication with the
5876f43a746f688a32b7201bced8591ddf19bd43minfrin child processes. [Ryan Bloom]
bbba414c5bbf770e505778265bbe7a4a0e4fbdaaniqChanges with Apache 2.0.32
4aef34911af88f96c5b6d9b71a550a5a97bbc0b6minfrin *) mod_negotiation: ForceLanguagePriority now uses 'Prefer' as the
4aef34911af88f96c5b6d9b71a550a5a97bbc0b6minfrin default if the directive is not specified. This mirrors older
4aef34911af88f96c5b6d9b71a550a5a97bbc0b6minfrin behavior without changes to the httpd.conf. [William Rowe]
4aef34911af88f96c5b6d9b71a550a5a97bbc0b6minfrin *) Win32: solve the win32 service problems in 2.0.31-alpha, by fixing
4cefc38158672f5de8119886d9754cf0609a9371minfrin the service, mpm and logging code, and bugs in apr_file_open_stderr
4cefc38158672f5de8119886d9754cf0609a9371minfrin and apr_file_dup2 functions. Win2K/XP services have no handles
4cefc38158672f5de8119886d9754cf0609a9371minfrin associated for stdin/out/err, which caused unpredictable behavior
4cefc38158672f5de8119886d9754cf0609a9371minfrin in the prior release. [William Rowe, Bill Stoddard]
11d3c510dca5b5178ad4739ffc1567ef2155bda9minfrin *) Win32: simplify the Application Event Log messages, since there isn't
11d3c510dca5b5178ad4739ffc1567ef2155bda9minfrin likely to be 'more information in the error log' before an error log
11d3c510dca5b5178ad4739ffc1567ef2155bda9minfrin has been opened. [William Rowe]
d974a1624c0bb4f1c2e8b36fcf8ba1f12284ed8dsf *) Win32: substantial cleanup to the mpm_winnt code for legibility and
d974a1624c0bb4f1c2e8b36fcf8ba1f12284ed8dsf to follow the program flow of other MPMs. [Ryan Bloom, William Rowe]
1a8c329935111a5059363efe927d631371b78414minfrin *) Win32: apache -k shutdown now behaves like apache -k stop.
fac37c9794a18c24d187f4e0f97a9476c4344118minfrin [Bill Stoddard]
fac37c9794a18c24d187f4e0f97a9476c4344118minfrin *) Fix prefork to not kill the parent if a child hits a resource shortage
fc58f0ff708564b67cd578c626b6500d1cd63a51sf on accept(). [Greg Ames]
fc58f0ff708564b67cd578c626b6500d1cd63a51sf *) Fix seg faults that occur when what should be the httpd request line
fc58f0ff708564b67cd578c626b6500d1cd63a51sf starts with \r\n followed by garbage. [Greg Ames]
fc58f0ff708564b67cd578c626b6500d1cd63a51sf *) Allow statically linked support binaries with the new
4e5fe1d203ddf3956a77be3c797c01fd4be8b211sf --enable-static-support flag, and enable this behavior in
4e5fe1d203ddf3956a77be3c797c01fd4be8b211sf the binbuild script. Also add a new --enable-static-htdbm
4e5fe1d203ddf3956a77be3c797c01fd4be8b211sf flag. [Aaron Bannert]
dcb4802d9ea9fc4ba89671e8f8faa70c9535b202minfrin *) Allow mod_autoindex to serve symlinks if permitted and attempt to
dcb4802d9ea9fc4ba89671e8f8faa70c9535b202minfrin do only one stat() call when generating the directory listings.
dcb4802d9ea9fc4ba89671e8f8faa70c9535b202minfrin [Justin Erenkrantz]
ce4dc40a4e87991087488f70d96d3447d7557294sf *) Fix resolve_symlink to save the original symlink name if known.
ce4dc40a4e87991087488f70d96d3447d7557294sf [Justin Erenkrantz]
ce4dc40a4e87991087488f70d96d3447d7557294sf *) Be a bit more sane with regard to CanonicalNames. If the user has
9db0b0ee6ffade769db57b37a06b3f4849b5d367minfrin specified they want to use the CanonicalName, but they have not
9db0b0ee6ffade769db57b37a06b3f4849b5d367minfrin configured a port with the ServerName, then use the same port that
9db0b0ee6ffade769db57b37a06b3f4849b5d367minfrin the original request used. [Ryan Bloom and Ken Coar]
033d82412cc4af9d939b7e1645425b9e7f4ebf60minfrin *) In core_input_filter, check for an empty brigade after
033d82412cc4af9d939b7e1645425b9e7f4ebf60minfrin APR_BRIGADE_NORMALIZE(). Otherwise, we can get segfaults if a
033d82412cc4af9d939b7e1645425b9e7f4ebf60minfrin client says it will post some data but we get FIN before any
033d82412cc4af9d939b7e1645425b9e7f4ebf60minfrin data arrives. [Jeff Trawick]
1b390add6886fb1c0acdea82be0ef0920f1158casf *) Not being able to bind to the socket is a fatal error. We should
1b390add6886fb1c0acdea82be0ef0920f1158casf print an error to the console, and return a non-zero status code.
1b390add6886fb1c0acdea82be0ef0920f1158casf With these changes, all of the Unix MPMs do that correctly.
5fd471ec540a088d143a223096d35661bf87c15btrawick [Ryan Bloom]
5fd471ec540a088d143a223096d35661bf87c15btrawick *) suexec: Allow HTTPS and SSL_* environment variables to be passed
f2472b79d241967fa28f8284470b1c5cafee7b12wrowe through to CGI scripts. PR 9163
f2472b79d241967fa28f8284470b1c5cafee7b12wrowe [Brian Reid <breid@customlogic.com>,
f2472b79d241967fa28f8284470b1c5cafee7b12wrowe Zvi Har'El <rl@math.technion.ac.il>]
f2472b79d241967fa28f8284470b1c5cafee7b12wrowe *) binbuild.sh: Make sure that we use the expat from our source
f2472b79d241967fa28f8284470b1c5cafee7b12wrowe tree so that there aren't any surprises on the target machine.
c9201c790435060b1322d86949183085ca5f6c0cwrowe [Jeff Trawick]
c9201c790435060b1322d86949183085ca5f6c0cwrowe *) mod_cgid: Add retry logic for when the daemon can't fork fast
c9201c790435060b1322d86949183085ca5f6c0cwrowe enough to keep up with new requests. Start using
c9201c790435060b1322d86949183085ca5f6c0cwrowe HTTP_SERVER_UNAVAILABLE instead of HTTP_INTERNAL_SERVER_ERROR
c9201c790435060b1322d86949183085ca5f6c0cwrowe when we can't talk to the daemon. [Jeff Trawick]
38bd9dba7627c6b2f331cd0731c272ee6bd876b1wrowe *) apxs: LTFLAGS envvar can override default libtool options. Try
38bd9dba7627c6b2f331cd0731c272ee6bd876b1wrowe "LTFLAGS=' ' apxs -c mod_foo.c" to see what libtool does under
38bd9dba7627c6b2f331cd0731c272ee6bd876b1wrowe the covers. [Jeff Trawick]
c1ba97f41a4526d84fb7a1596afe3dd11e065a2cminfrin *) The Location: response header field, used for external
c1ba97f41a4526d84fb7a1596afe3dd11e065a2cminfrin redirect, *must* be an absoluteURI. The Redirect directive
c1ba97f41a4526d84fb7a1596afe3dd11e065a2cminfrin tested for that, but RedirectMatch didn't -- it would allow
c1ba97f41a4526d84fb7a1596afe3dd11e065a2cminfrin almost anything through. Now it will try to turn an abs_path
97cc46935ec496b83fef9d6feb094d706c895b3bsf into an absoluteURI, but it will correctly varf like Redirect
4ed33a14c26d78bbe6bd0b9d5091cdb184e348basf if the final redirection target isn't an absoluteURI. [Ken Coar]
4ed33a14c26d78bbe6bd0b9d5091cdb184e348basfChanges with Apache 2.0.31
72e3829dbd019a63b1091987fc6e7b1c028b089cminfrin *) Create the scoreboard (in the parent) in a global pool context,
72e3829dbd019a63b1091987fc6e7b1c028b089cminfrin so it survives graceful restarts. This fixes a SEGV during
72e3829dbd019a63b1091987fc6e7b1c028b089cminfrin graceful restarts. [Aaron Bannert]
1081aff66582e2cac722fb3b6f09da4f524b5962minfrin *) Add a timeout option to the proxy code 'ProxyTimeout'
1081aff66582e2cac722fb3b6f09da4f524b5962minfrin [Ian Holsman]
9f0c32ae318f33c93a47d83f4709242c18339bbcminfrin *) FTP directory listings are now always retrieved in ASCII mode.
9f0c32ae318f33c93a47d83f4709242c18339bbcminfrin The FTP proxy properly escapes URI's and HTML in the generated
9f0c32ae318f33c93a47d83f4709242c18339bbcminfrin listing, and escapes the path components when talking to the FTP
9f0c32ae318f33c93a47d83f4709242c18339bbcminfrin server. It is now possible to browse the root directory by using
9474e446514b06765775eb0c1ec6645e2c5e50f6minfrin a url like: ftp://user@host/%2f/ (ported from apache_1.3.24)
9474e446514b06765775eb0c1ec6645e2c5e50f6minfrin Also, the last path component may contain wildcard characters
9474e446514b06765775eb0c1ec6645e2c5e50f6minfrin '*' and '?', and if they do, a directory listing is created instead
9f0c32ae318f33c93a47d83f4709242c18339bbcminfrin of a file retrieval. Example: ftp://user@host/httpd/server/*.c
b7557ab9828d2017224a12968f82c3118b6a8c0aminfrin [Martin Kraemer]
b7557ab9828d2017224a12968f82c3118b6a8c0aminfrin *) Added single-listener unserialized accept support to the
b7557ab9828d2017224a12968f82c3118b6a8c0aminfrin worker MPM [Brian Pane]
b7557ab9828d2017224a12968f82c3118b6a8c0aminfrin *) New Directive for mod_proxy: 'ProxyPreserveHost'. This passes
9474e446514b06765775eb0c1ec6645e2c5e50f6minfrin the incoming host header through to the proxied server
9474e446514b06765775eb0c1ec6645e2c5e50f6minfrin [Geoff <g.russell@ieee.org>]
b7557ab9828d2017224a12968f82c3118b6a8c0aminfrin *) New Directive Option for ProxyPass. It now can block a location
e302f38fd646764ce1a1e1c578d794aef514a9e5sf from being proxied [Jukka Pihl <jukka.pihl@entirem.com>]
e302f38fd646764ce1a1e1c578d794aef514a9e5sf *) Don't let the default handler try to serve a raw directory. At
b32d756dae79045a9bc90e0d0b85582f6f28eaf3sf best you get gibberish. Much worse things can happen depending
e302f38fd646764ce1a1e1c578d794aef514a9e5sf on the OS. [Jeff Trawick]
9c233808c898095865fcc0a2dc1cf594d0d8faf3sf *) Change the pre_config hook to return a value. Modules can now emit
3b41ccdaa163f4e900bbf8a7aa6a366df033822dminfrin an error message and then cause the server to quit gracefully during
3b41ccdaa163f4e900bbf8a7aa6a366df033822dminfrin startup. This required a bump to the MMN. [Aaron Bannert]
3b41ccdaa163f4e900bbf8a7aa6a366df033822dminfrin *) Fix some unix socket descriptor leaks in the handler side of
3b41ccdaa163f4e900bbf8a7aa6a366df033822dminfrin mod_cgid (the part that runs in the server process). Whack a
28587db43bc4bea96a36fbcffdd967e7b422bb97minfrin silly "close(-1)" in the handler too. [Jeff Trawick]
28587db43bc4bea96a36fbcffdd967e7b422bb97minfrin *) Change the pre_mpm hook to return a value, so that scoreboard
28587db43bc4bea96a36fbcffdd967e7b422bb97minfrin init errors percolate up to code that knows how to exit
5a2dcc476c33985b7681aa72256bcd7266057eddsf cleanly. This required a bump to the MMN. [Jeff Trawick]
5a2dcc476c33985b7681aa72256bcd7266057eddsf *) Add the socket back to the conn_rec and remove the create_connection
e08076ca56e6cb68b30846b9e9339061058aae6dpoirier hook. The create_connection hook had a design flaw that did not
e08076ca56e6cb68b30846b9e9339061058aae6dpoirier allow creating connections based on vhost info. [Bill Stoddard]
e08076ca56e6cb68b30846b9e9339061058aae6dpoirier *) Fixed PATH_INFO and QUERY_STRING from mod_negotiation results.
e08076ca56e6cb68b30846b9e9339061058aae6dpoirier Resolves the common case of using negotation to resolve the request
e08076ca56e6cb68b30846b9e9339061058aae6dpoirier *) Added new functions ap_add_(input|output)_filter_handle to
f3a19422957c2e9eb827c8e38e5982f678591aa5minfrin allow modules to bypass the usual filter name lookup when
b7a2f855b5e31abc24dab2eef28e9e2f985ae25brpluem adding hard-coded filters to a request [Brian Pane]
fa1c7ce09927decc1eecd1e9a35cc5331078a052covener *) caching should now work on subrequests (still very experimental)
fa1c7ce09927decc1eecd1e9a35cc5331078a052covener [Ian Holsman]
84fbf855118f318dd5e511d8e5b902cecc1177c0jim *) The Win32 mpm_winnt now has a shared scoreboard. [William Rowe]
ac45a43afbf38aa4a91c1402c6beef6ef8a2696dniq *) Change ap_get_brigade prototype to use apr_off_t instead of apr_off_t*.
ac45a43afbf38aa4a91c1402c6beef6ef8a2696dniq [Justin Erenkrantz]
b2b9b7f0644773b50aee41956a841ac884086250niq *) Refactor ap_rgetline so that it does not use an internal brigade.
b2b9b7f0644773b50aee41956a841ac884086250niq Change ap_rgetline's prototype to return errors. [Justin Erenkrantz]
b2b9b7f0644773b50aee41956a841ac884086250niq *) Remove mod_auth_db. [Justin Erenkrantz]
b4f348c8e74ba8166410ddeffac03e4887696788niq *) Do not install unnecessary pcre headers like config.h and internal.h.
b4f348c8e74ba8166410ddeffac03e4887696788niq [Joe Orton <joe@manyfish.co.uk>]
4fda5fb4cc40703a76e261bbf21ec1d6b51b7d3fjim *) Change in quick_hanlder behavior for subrequests. it now passes DONE
4fda5fb4cc40703a76e261bbf21ec1d6b51b7d3fjim (as it does for a normal request). quick_handled sub-requests now work
fa0dc2a4f675a868378a52946e5b244d6bf41196sf in mod-include [Ian Holsman]
0807f6da6091b748ab47c21ba66252fe8da2a966sf *) Change SUBREQ_CORE so that it is a 'HTTP_HEADER' filter instead of
0807f6da6091b748ab47c21ba66252fe8da2a966sf 'CONTENT' one, as it needs to run AFTER all content headers
b92a868b537899a51efd8c200c396fa51c63839dtrawick *) Rename BeOS MPM directive RequestsPerThread to MaxRequestsPerThread.
b92a868b537899a51efd8c200c396fa51c63839dtrawick [Lars Eilebrecht]
dc52cac281d8b311dc47d115ed979f923b667679rjung *) Split out blocking from the mode in the input filters.
dc52cac281d8b311dc47d115ed979f923b667679rjung [Justin Erenkrantz]
2534e869d2ba209bd0c43717ea80992e6de0c51djim *) Fix a segfault in mod_include. [Justin Erenkrantz, Jeff Trawick]
f8033d657a57eab45af44368774d8beb3e4f7f35pquerna *) Cause Win32 to capture all child-worker process errors in
f8033d657a57eab45af44368774d8beb3e4f7f35pquerna Apache to the main server error log, until the child can
f8033d657a57eab45af44368774d8beb3e4f7f35pquerna open its own error logs. [William Rowe]
02fd88c85a9850109753b87612955ad372de1575sf *) HPUX 11.*: Do not kill the child process when accept()
02fd88c85a9850109753b87612955ad372de1575sf returns ENOBUFS on HPUX 11.*. (ported from a 1.3 patch
02fd88c85a9850109753b87612955ad372de1575sf by [madhusudan_mathihalli@hp.com])
da48ae521bcc2751f8eb8dfb02f7aab0f46943c6sf [Bill Stoddard]
da48ae521bcc2751f8eb8dfb02f7aab0f46943c6sf *) Fix a problem in the parsing of the <Proxy foo> directive.
1374472d83ce061a431b7f6eeb5e5135fb4cd922jim [Jeff Trawick]
1374472d83ce061a431b7f6eeb5e5135fb4cd922jim *) rewrite of mod_ssl input filter for better performance and less
1374472d83ce061a431b7f6eeb5e5135fb4cd922jim memory usage [Doug MacEachern]
ab7a123efe997d907274eb672ab2b36746bb3f57sf *) allow quick_handler to be run on subrequests. [Ian Holsman]
ab7a123efe997d907274eb672ab2b36746bb3f57sf *) mod_dav now asks its provider to place content directly into the
a44d29a3794110c558c940bd903a1930d717a7d7sf filter stack when handling a GET request. The mod_dav/provider
a44d29a3794110c558c940bd903a1930d717a7d7sf API has changed, so providers need to be updated. [Greg Stein]
a44d29a3794110c558c940bd903a1930d717a7d7sf *) Clear the output socket descriptor in unixd_accept() to make sure
70003ce816d7851e49ecb0cdc5137becd647ed18niq we don't supply a bogus socket to the caller if the accept fails.
70003ce816d7851e49ecb0cdc5137becd647ed18niq This caused problems with the worker MPM, which tried to process
ef766b4977fa0c796f1d1fa828c5868d5a6bde74rbowen the returned socket if it was non-NULL. [Brian Pane]
815067bc5eff8fc218019e18ee5ea868372917cdsf *) Move a check for an empty brigade to the start of core input filter
815067bc5eff8fc218019e18ee5ea868372917cdsf to avoid segfaults. [Justin Erenkrantz, Jeff Trawick]
2534e869d2ba209bd0c43717ea80992e6de0c51djim *) Add FileETag directive to allow configurable control of what
ff5e24709209b13601480827b0fecf32c428ff32rjung data are used to form ETag values for file-based URIs. MMN
39d67f66729a7008c1e73d65a81e778ce819a227rjung bumped to 20020111 because of fields added to the end of
39d67f66729a7008c1e73d65a81e778ce819a227rjung the core_dir_config structure. [Ken Coar]
da20b997bf4652f7597e0a7845db371aab2f7187rjung *) Fix a segfault in mod_rewrite's logging code caused by passing the
133cbcba0df4ba0e72f7eaaaebabe119f145f261niq wrong config to ap_get_remote_host(). [Jeff Trawick]
133cbcba0df4ba0e72f7eaaaebabe119f145f261niq *) Allow mod_cgid to work from a binary distribution install by
c8dcde16853eef36b713d4633fac83b66e49aa5eniq using 755 for the permissions on the log directory instead of
c8dcde16853eef36b713d4633fac83b66e49aa5eniq 750. [Jeff Trawick]
1a7a4f8c6a312cb237e428c77da0792eb165dc7aniq *) Fixed a segfault that happened during graceful shutdown (or when
1a7a4f8c6a312cb237e428c77da0792eb165dc7aniq the httpd ran out of file descriptors) with the worker MPM [Brian Pane]
1a7a4f8c6a312cb237e428c77da0792eb165dc7aniq *) Split all Win32 modules [excluding the core components mod_core,
927e277b4be750e06960b3d4f1c2b1ca146e0555niq mod_so, mod_win32 and the winnt mpm] into individual loadable
927e277b4be750e06960b3d4f1c2b1ca146e0555niq modules, so the administrator may individually disable the former
927e277b4be750e06960b3d4f1c2b1ca146e0555niq compiled-in modules by simply commenting out their LoadModule
83de39879307034216ce0af15a47a88a55af11e3rjung directives. [William Rowe]
83de39879307034216ce0af15a47a88a55af11e3rjung *) Saved Win32 module authors and porters many future headaches, by
7cfa48136e3b42a14cdff1a46b60f4e4d2ad5291niq duplicating the appropriate .h files such as os.h into the include
7cfa48136e3b42a14cdff1a46b60f4e4d2ad5291niq directory, including in the build tree. [William Rowe]
7cfa48136e3b42a14cdff1a46b60f4e4d2ad5291niq *) mod_ssl adjustments to help with using toolkits other than OpenSSL:
7cfa48136e3b42a14cdff1a46b60f4e4d2ad5291niq Use SSL functions/macros instead of directly dereferencing SSL
0a4924de8350e2bbfa16a27f42ff0bc61aa52d43rjung structures wherever possible.
0a4924de8350e2bbfa16a27f42ff0bc61aa52d43rjung Add type-casts for the cases where functions return a generic pointer.
0a4924de8350e2bbfa16a27f42ff0bc61aa52d43rjung Add $SSL/include to configure search path.
8e8568ec7d29f056a2a4942d1d50481e441c25d9covener [Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>]
bec2a2e375fe46599b68399abfcf67b89b270b57wrowe *) Moved several pointers out of the shared Scoreboard so it is
bec2a2e375fe46599b68399abfcf67b89b270b57wrowe more portable, and will present the vhost name across server
bec2a2e375fe46599b68399abfcf67b89b270b57wrowe generation restarts. [William Rowe]
bec2a2e375fe46599b68399abfcf67b89b270b57wrowe *) Fix SSLPassPhraseDialog exec: and SSLRandomSeed exec:
bec2a2e375fe46599b68399abfcf67b89b270b57wrowe [Doug MacEachern]
bec2a2e375fe46599b68399abfcf67b89b270b57wroweChanges with Apache 2.0.30
46fdfef7dfc745effe179387e1dcb8245d3804batrawick *) Fix the main bug for FreeBSD and threaded MPM's. There are
46fdfef7dfc745effe179387e1dcb8245d3804batrawick still issues (see STATUS) but at least the server will now
46fdfef7dfc745effe179387e1dcb8245d3804batrawick run without crashing the machine.
46fdfef7dfc745effe179387e1dcb8245d3804batrawick [David Reid, Aaron Bannert, Justin Erenkrantz]
46fdfef7dfc745effe179387e1dcb8245d3804batrawick *) Fix a typo in mod_deflate's m4 config section.
46fdfef7dfc745effe179387e1dcb8245d3804batrawick [albert chin (china@thewrittenword.com)]
46fdfef7dfc745effe179387e1dcb8245d3804batrawick *) Fix a couple of mod_proxy problems forwarding HTTP connections
46fdfef7dfc745effe179387e1dcb8245d3804batrawick and handling CONNECT:
46fdfef7dfc745effe179387e1dcb8245d3804batrawick (1) PR #9190 Proxy failed to connect to IPv6 hosts.
46fdfef7dfc745effe179387e1dcb8245d3804batrawick (2) Proxy failed to connect when the first IP address returned by
f4845813cd6fa5749dfec8e3bc647b85c1df0980wrowe the resolver was unreachable but a secondary IP address was.
f4845813cd6fa5749dfec8e3bc647b85c1df0980wrowe [Jeff Trawick]
f4845813cd6fa5749dfec8e3bc647b85c1df0980wrowe *) Fix the module identifer as shown in the docs for various core
f4845813cd6fa5749dfec8e3bc647b85c1df0980wrowe modules (e.g., the identifer for mod_log_config was previously
f55c048e33a905f9f771b3aed309373bdf547944jorton listed as config_log_module). PR #9338
f55c048e33a905f9f771b3aed309373bdf547944jorton [James Watson <ap2bug@sowega.org>]
f55c048e33a905f9f771b3aed309373bdf547944jorton *) Fix LimitRequestBody directive by placing it in the HTTP
cddaaa6378c5082e8dff0d11dc21cf6c4928ecbcjorton filter. [Justin Erenkrantz]
cddaaa6378c5082e8dff0d11dc21cf6c4928ecbcjorton *) Fix mod_proxy seg fault when the proxied server returns
cddaaa6378c5082e8dff0d11dc21cf6c4928ecbcjorton an HTTP/0.9 response or a bogus status line.
9b2bd9e83cbb6f5debb2edba59a0c12089eb37c3minfrin [Adam Sussman]
9b2bd9e83cbb6f5debb2edba59a0c12089eb37c3minfrin *) Prevent mod_proxy from truncating one character off the
9b2bd9e83cbb6f5debb2edba59a0c12089eb37c3minfrin end of the status line returned from the proxied server.
9b2bd9e83cbb6f5debb2edba59a0c12089eb37c3minfrin [Adam Sussman, Bill Stoddard]
a89e2c1651aab7734345fa3a6712a757708535ferjung *) Eliminate loop in ap_proxy_string_read().
a89e2c1651aab7734345fa3a6712a757708535ferjung [Adam Sussman, Bill Stoddard]
adc9a2e2b2e56a7416c90f949bd0c72ddd6f1793rjung *) Provide $0..$9 results from mod_include regex parsing.
adc9a2e2b2e56a7416c90f949bd0c72ddd6f1793rjung [William Rowe]
adc9a2e2b2e56a7416c90f949bd0c72ddd6f1793rjung *) Allow mod-include to look for alternate start & end tags [Ian Holsman]
adc9a2e2b2e56a7416c90f949bd0c72ddd6f1793rjung *) Introduced the ForceLanguagePriority directive, to prevent
adc9a2e2b2e56a7416c90f949bd0c72ddd6f1793rjung returning MULTIPLE_CHOICES or NONE_ACCEPTABLE in some cases,
adc9a2e2b2e56a7416c90f949bd0c72ddd6f1793rjung when using Multiviews. [William Rowe]
adc9a2e2b2e56a7416c90f949bd0c72ddd6f1793rjung *) Fix a problem which prevented mod_cgid and suexec from working
adc9a2e2b2e56a7416c90f949bd0c72ddd6f1793rjung together reliably [Greg Ames]
adc9a2e2b2e56a7416c90f949bd0c72ddd6f1793rjung *) Remove the call to exit() from within mod_auth_digest's post_config
adc9a2e2b2e56a7416c90f949bd0c72ddd6f1793rjung phase. [Aaron Bannert]
23bc6974af15e69a9aa4b5b3fc06b800b53ca234sf *) Fix a problem in mod_auth_digest that could potentially cause
23bc6974af15e69a9aa4b5b3fc06b800b53ca234sf problems with initialized static data on a system that uses DSOs.
298eb744831be682f749ffe1c01c88d82adf215esf [Aaron Bannert]
298eb744831be682f749ffe1c01c88d82adf215esf *) Fix a segfault in the worker MPM that could happen during
298eb744831be682f749ffe1c01c88d82adf215esf child process exits. [Brian Pane, Aaron Bannert]
298eb744831be682f749ffe1c01c88d82adf215esf *) Allow mod_auth_dbm to handle multiple DBM types [Ian Holsman]
298eb744831be682f749ffe1c01c88d82adf215esf *) Fix matching of vhosts by ip address so we find IPv4
298eb744831be682f749ffe1c01c88d82adf215esf vhost address when target address is v4-mapped form of
b9aa9ca00496f67eb755d67764775ff23ac7eb03covener that address. [Jeff Trawick]
f2386b627177c7a80d38fed6ec0aed3c086909c1covener *) More performance tweaks to the BNDM string-search algorithm
f2386b627177c7a80d38fed6ec0aed3c086909c1covener used to find "<!--#" tokens in mod_include [Brian Pane]
70d4e28f12f8cc2e130457c841095dc69c67cf31minfrin *) Miscellaneous small performance fixes: optimized away various
70d4e28f12f8cc2e130457c841095dc69c67cf31minfrin string copy operations and removed large temp buffers from
70d4e28f12f8cc2e130457c841095dc69c67cf31minfrin the stack [Brian Pane]
1a668f25bc6b4b111822caaba70bb9289d64ade5niq *) Fixed startup segfault that occurred when a VirtualHost
1a668f25bc6b4b111822caaba70bb9289d64ade5niq directive had a port but no address [Brian Pane]
7a6c86627922e38fa227943b9f888f96109681e5covener *) Allow htdbm to work with multiple DBM types [Ian Holsman]
7a6c86627922e38fa227943b9f888f96109681e5covener *) Win32: Made change to apr_sendfile() to return APR_ENOTIMPL
7a6c86627922e38fa227943b9f888f96109681e5covener if oslevel < WINNT. This should fix several problems reported
17efe57eb8d88fa0d371f4ac4939dbbbe78fd09bcovener Against 2.0.28 on Windows 98 [Bill Stoddard]
17efe57eb8d88fa0d371f4ac4939dbbbe78fd09bcovener *) Win32: Fix bug that could cause CGI scripts with QUERY_STRINGS
17efe57eb8d88fa0d371f4ac4939dbbbe78fd09bcovener to fail. [Bill Stoddard]
8068423ee2d80a7c42b2325a71c24ac9485327cecovener *) Change core code to allow an MPM to set hard thread/server
8068423ee2d80a7c42b2325a71c24ac9485327cecovener limits at startup. prefork, worker, and perchild MPMs now have
8068423ee2d80a7c42b2325a71c24ac9485327cecovener directives to set these limits. [Jeff Trawick]
8068423ee2d80a7c42b2325a71c24ac9485327cecovener *) Win32: The async AcceptEx() event should be autoreset upon
7703bad94964cc64022e08e2d1ae2c5fbfe2d3c6covener successful completion of a wait (WaitForSingleObject). This
7703bad94964cc64022e08e2d1ae2c5fbfe2d3c6covener eliminates a number of spurious
7703bad94964cc64022e08e2d1ae2c5fbfe2d3c6covener setsockopt(SO_UPDATE_ACCEPT_CONTEXT) failed." messages.
7703bad94964cc64022e08e2d1ae2c5fbfe2d3c6covener [Bill Stoddard]
689ee47a7329cf0d0ce4c5a98670b33fcf00d81btrawick *) Move any load library path environment variables out of
689ee47a7329cf0d0ce4c5a98670b33fcf00d81btrawick apachectl and into a separate environment variable file which
aa8df43397bb42245e1633f12e2300c9715f3a7btrawick can be more easily tailored by the admin. The environment
aa8df43397bb42245e1633f12e2300c9715f3a7btrawick variable file as built by Apache may have additional system-
5a2f24f5e41d52e59e1c11e90cd423b8967d4184trawick specific settings. For example, on OS/390 we tailor the heap
19ce7effbcc8a735f1a883f9266e086fde2adb63poirier settings to allow lots of threads. [Jeff Trawick]
19ce7effbcc8a735f1a883f9266e086fde2adb63poirier *) Use the new APR pool code to reduce pool-related lock
5d58d0bc1ce35e0ee814b6c2dc21a5286e460b87covener contention in the worker MPM. [Sander Striker]
8eac2273e3d5f2dc8464fada76fcfbf33a938a2fcovener *) The POD no longer assumes the child is listening on 127.0.0.1
8eac2273e3d5f2dc8464fada76fcfbf33a938a2fcovener and now pulls the first hostname in the list of listeners to
8eac2273e3d5f2dc8464fada76fcfbf33a938a2fcovener perform the dummy connect on. This fixes a bug when the user
c6124d7fde07b58d51785d0f1cb509026eeaa138jim had configured the Listen directive for an IP other than
c6124d7fde07b58d51785d0f1cb509026eeaa138jim 127.0.0.1. This would result in undead children and error
c6124d7fde07b58d51785d0f1cb509026eeaa138jim messages such as "Connection refused: connect to listener".
c6124d7fde07b58d51785d0f1cb509026eeaa138jim [Aaron Bannert]
680e7b4c70df00b695883c824947ca6ec15d69ecsf *) The worker MPM now respects the LockFile setting, needed to
680e7b4c70df00b695883c824947ca6ec15d69ecsf avoid locking problems with NFS. [Jeff Trawick]
3a49a6c98ef80c71830e66e7f8f46083001b494ctrawick *) Fix segfault when worker MPM receives SIGHUP.
d46dfdce9351f52a971777948d9b02f8fc668ff8niq [Ian Holsman, Aaron Bannert, Justin Erenkrantz]
6fee4e2faa2e45fe2636d01e35d03c2cf0c9d431minfrin *) Fix bug that could potentially prevent the perchild MPM from
6fee4e2faa2e45fe2636d01e35d03c2cf0c9d431minfrin working with more than one vhost/uid. [Aaron Bannert]
03aa31ad82759363ba1a55589e517b16308ef635minfrin *) Change make install and apxs -i processing of DSO modules to
03aa31ad82759363ba1a55589e517b16308ef635minfrin perform special handling on platforms where libtool doesn't install
03aa31ad82759363ba1a55589e517b16308ef635minfrin mod_foo.so. This fixes some wonkiness on HP-UX, Tru64, and AIX
03aa31ad82759363ba1a55589e517b16308ef635minfrin which prevented standard LoadModule statements from working.
9fe23388f983cb652b5d68e2bd92aa9f0568c574minfrin [Jeff Trawick]
9fe23388f983cb652b5d68e2bd92aa9f0568c574minfrin *) Whenever mod_so is enabled (not just when there are DSOs for
e9eabac76b50e8f00d0c391f6070d0f42db77aa2wrowe our modules), do whatever special magic is required for compiling/
e9eabac76b50e8f00d0c391f6070d0f42db77aa2wrowe loading third-party modules. This allows third-party DSOs to
e9eabac76b50e8f00d0c391f6070d0f42db77aa2wrowe be used on an AIX build when there were no built-in modules
e9eabac76b50e8f00d0c391f6070d0f42db77aa2wrowe built as DSOs. (This should help on OS/390 and BeOS as well.)
e9eabac76b50e8f00d0c391f6070d0f42db77aa2wrowe [Jeff Trawick]
433d36fd71af86369719893afe09877be4cb4f3asf *) Allow apxs to be used to build DSOs on AIX without requiring the
433d36fd71af86369719893afe09877be4cb4f3asf user to hard-code the list of import files. (This should help
14e5a8cc15b1dcc26ad5420973304e53a9e5406bsf on OS/390 and BeOS as well.) [Jeff Trawick]
14e5a8cc15b1dcc26ad5420973304e53a9e5406bsf *) Resolved segfault in mod_isapi when configuring with ISAPICacheFile.
46fdfef7dfc745effe179387e1dcb8245d3804batrawick PR 8563, 8919 [William Rowe]
46fdfef7dfc745effe179387e1dcb8245d3804batrawick *) Get binary builds working when libapr and libaprutil are built
46fdfef7dfc745effe179387e1dcb8245d3804batrawick shared [Greg Ames]
46fdfef7dfc745effe179387e1dcb8245d3804batrawick *) Get shared builds of libapr and libaprutil, as well as Apache DSOs,
46fdfef7dfc745effe179387e1dcb8245d3804batrawick working on AIX. [Aaron Bannert, Dick Dunbar <RLDunbar@pacbell.net>,
46fdfef7dfc745effe179387e1dcb8245d3804batrawick Gary Hook <ghook@us.ibm.com>, Victor Orlikowski, Jeff Trawick]
46fdfef7dfc745effe179387e1dcb8245d3804batrawick *) Fix the handling of SSI directives in which the ">" of the
46fdfef7dfc745effe179387e1dcb8245d3804batrawick terminating "-->" is the last byte in a file [Brian Pane]
573f949c582f06bd738a96196f40b646b6d540b8rpluem *) Add back in the "suEXEC mechanism enabled (wrapper: /path/to/suexec)"
573f949c582f06bd738a96196f40b646b6d540b8rpluem message that we had back in apache-1.3 and still have scattered
c44902d07eab7deb803a59e959f57cf3b7d56655poirier throughout our docs. [Aaron Bannert]
c44902d07eab7deb803a59e959f57cf3b7d56655poirier *) Prevent the Win32 port from continuing after encountering an
ae1981fc94adf2b231e2d0e15d2f895b2138c969covener error in the command line args to apache. [William Rowe]
ae1981fc94adf2b231e2d0e15d2f895b2138c969covener *) On a error in the proxy, make it write a line to the error log
ae1981fc94adf2b231e2d0e15d2f895b2138c969covener [Ian Holsman]
ae1981fc94adf2b231e2d0e15d2f895b2138c969covener *) Various mod_ssl performance improvements [Doug MacEachern]
4ac05f9625e37cc421f4ea548422827b4de163d7niqChanges with Apache 2.0.29
4ac05f9625e37cc421f4ea548422827b4de163d7niq *) Add buffering in core_output_filter to ensure that long
4ac05f9625e37cc421f4ea548422827b4de163d7niq lists of small buckets don't cause small packet writes.
4ac05f9625e37cc421f4ea548422827b4de163d7niq [Brian Pane, Ryan Bloom]
6999a76d8eb5ef6b4b295e51df0b2fb6064bd373covener *) Fix the installation target to make sure that the manual is
6999a76d8eb5ef6b4b295e51df0b2fb6064bd373covener installed in the correct location.
ead0b57bbeaec5acb14f931b5641962f429dabc9trawick [Yoshifumi Hiramatsu <hiramatu@boreas.dti.ne.jp> and
ead0b57bbeaec5acb14f931b5641962f429dabc9trawick Gomez Henri <hgomez@slib.fr>]
77d6f9d5c2a5cab805e9ace265628f3d791b937dniq *) Fix the cmd command for mod_include. When we are processing
77d6f9d5c2a5cab805e9ace265628f3d791b937dniq a cmd command, we do not want to use the r->filename to set
77d6f9d5c2a5cab805e9ace265628f3d791b937dniq the command name. The command comes from the SSI tag. To do this,
a9d359cdeb1cee65cdb9fab5e19ffb4846172183trawick I added a variable to the function that builds the command line
77d6f9d5c2a5cab805e9ace265628f3d791b937dniq in mod_cgi. This allows the include_cmd function to specify
9f35dd32eedd781d218a85f0315ea5526a8adc84minfrin the command line itself. [Ryan Bloom]
9f35dd32eedd781d218a85f0315ea5526a8adc84minfrin *) Change open_logs hook to return a value, allowing you
9f35dd32eedd781d218a85f0315ea5526a8adc84minfrin to flag a error while opening logs
5dc4220fc22561537ce1421a03e11846a5b719ebminfrin [Ian Holsman, Doug MacEachern]
5dc4220fc22561537ce1421a03e11846a5b719ebminfrin *) Change post_config hook to return a value, allowing you
5dc4220fc22561537ce1421a03e11846a5b719ebminfrin to flag a error post config
5dc4220fc22561537ce1421a03e11846a5b719ebminfrin [Ian Holsman, Jeff Trawick]
a9d359cdeb1cee65cdb9fab5e19ffb4846172183trawick *) Allow SUEXEC_BIN (the path to the suexec binary that is
bd27541a0c96caa881f17a490e23cdd220d480c8poirier hard-coded into the server) to be specified to the configure
68c4447ba8e057cf38cbbec918e0549b817f20b4minfrin script by the --with-suexec-bin parameter. [Aaron Bannert]
68c4447ba8e057cf38cbbec918e0549b817f20b4minfrin *) Fix segv in worker MPM following accept on pipe-of-death
68c4447ba8e057cf38cbbec918e0549b817f20b4minfrin [Brian Pane]
e33d0698670fead33dbd7c907363053b9e2be454minfrin *) Add mod_deflate to experimental.
e33d0698670fead33dbd7c907363053b9e2be454minfrin [Ian Holsman, Justin Erenkrantz]
e33d0698670fead33dbd7c907363053b9e2be454minfrin *) Bail out at configure time if an invalid MPM was specified.
e33d0698670fead33dbd7c907363053b9e2be454minfrin [jean-frederic clere <jfrederic.clere@fujitsu-siemens.com>]
cf8a8738330694e60bad421fcc8361d80b0e9124minfrin *) Prevent segv in ap_note_basic_auth_failure() when no AuthName is
cf8a8738330694e60bad421fcc8361d80b0e9124minfrin configured [John Sterling <sterling@covalent.net>]
a9d359cdeb1cee65cdb9fab5e19ffb4846172183trawick *) Fix apxs to use sbindir. [Henri Gomez <hgomez@slib.fr>]
4ea8055e720d18f386b8026b546e5836ecccba4arjung *) Fix a problem with IPv6 vhosts. PR #8118 [Jeff Trawick]
fd80868005a61e747bc45b39df83cae7abb3d151pgollucci *) Optimization for the BNDM string-search function in
fd80868005a61e747bc45b39df83cae7abb3d151pgollucci mod_include. [Brian Pane]
60a8830541cd85d23a42ccb1639bc4744de9d526poirier *) Fixed the behavior of the XBitHack directive.
60a8830541cd85d23a42ccb1639bc4744de9d526poirier [Taketo Kabe <kabe@sra-tohoku.co.jp>, Cliff Woolley] PR#8804
5ae15cd9d22fb3bdfd2eb0b9761c4ef07fbf2f96minfrin *) The threaded MPM for Unix has been removed. Use the worker
5ae15cd9d22fb3bdfd2eb0b9761c4ef07fbf2f96minfrin MPM instead. [various]
5ae15cd9d22fb3bdfd2eb0b9761c4ef07fbf2f96minfrin *) APR-ize the resolver logic in mod_unique_id. This fixes a bug
69fc9805c344b2dd5fd49a4f75cbf55dedeac7d6minfrin in logging the error from a failed DNS lookup. [Jeff Trawick]
69fc9805c344b2dd5fd49a4f75cbf55dedeac7d6minfrin *) Added the missing macros AP_INIT_TAKE13 and AP_INIT_TAKE123.
46fdfef7dfc745effe179387e1dcb8245d3804batrawick [Cliff Woolley]
46fdfef7dfc745effe179387e1dcb8245d3804batrawick *) Get mod_cgid killed when a MPM exits due to a fatal error.
46fdfef7dfc745effe179387e1dcb8245d3804batrawick [Jeff Trawick]
e1c6c1dac26c35ecebe158438bb0c56afbb9bfb0sf *) Fix a file descriptor leak in mod_include. When we include a
e1c6c1dac26c35ecebe158438bb0c56afbb9bfb0sf file, we use a sub-request, but we didn't destroy the sub-request
dd90cc3ba2a09e7be46c9d8f5faad90edf18134fsf immediately, instead we waited until the original request was
38451a13fb80b89e704792ebc0e6f9e5e5877d7dsf done. This patch closes the sub-request as soon as the data is
38451a13fb80b89e704792ebc0e6f9e5e5877d7dsf done being generated. [Brian Pane <bpane@pacbell.net>]
38451a13fb80b89e704792ebc0e6f9e5e5877d7dsf *) Allow modules that add sockets to the ap_listeners list to
38451a13fb80b89e704792ebc0e6f9e5e5877d7dsf define the function that should be used to accept on that
505e342aefa9fbccc857f1bc653a310e25511946sf socket. Each MPM can define their own function to use for
505e342aefa9fbccc857f1bc653a310e25511946sf the accept function with the MPM_ACCEPT_FUNC macro. This
505e342aefa9fbccc857f1bc653a310e25511946sf also abstracts out all of the Unix accept error handling
505e342aefa9fbccc857f1bc653a310e25511946sf logic, which has become out of synch across Unix MPMs.
26734c75baf170a492ef6a82f07b24ee1af7d0b1sf [Ryan Bloom]
26734c75baf170a492ef6a82f07b24ee1af7d0b1sf *) Fix a bug which would cause the response headers to be omitted
dda254ba84bdff5e236917af1b31693ca4360eabcovener when sending a negotiated ErrorDocument because the required
dda254ba84bdff5e236917af1b31693ca4360eabcovener filters were attached to the wrong request_rec.
dda254ba84bdff5e236917af1b31693ca4360eabcovener [John Sterling <sterling@covalent.net>]
bcb567d8f48f5de8aa84e0b19e93357e0a4d970epquerna *) Remove commas from the end of the macros that define
bf52162f2d05c1fb1a107c7ef108de73f739b3edpquerna directives that are used by MPMs. Prior to this patch,
e1d33ac481c6683a069630c8f9aceec3a48babcetrawick you would use these macros without commas, which was unlike
e1d33ac481c6683a069630c8f9aceec3a48babcetrawick the macros for any other directives. Now, the caller provides
cf12a027b0859c14d5c4852efffeff62158cd98dtrawick the comma rather than the macro providing it. This makes
3becbd2611ffb2e8391a8eacce765b43dcb1c669wrowe the macros look more like the rest of the directives.
8e5e9b2d4c6cbcd21ca182fe1109d59284239515wrowe [Ryan Bloom and Cliff Woolley]
9c78f8d71737dfbbbf4da2f9acb397567a10e88bsf *) Add 'redirect-carefully' environment option to disable sending
9c78f8d71737dfbbbf4da2f9acb397567a10e88bsf redirects under special circumstances. This is helpful for
9c78f8d71737dfbbbf4da2f9acb397567a10e88bsf Microsoft's WebFolders when accessing a directory resource via
9c78f8d71737dfbbbf4da2f9acb397567a10e88bsf DAV methods. [Justin Erenkrantz]
4be9c459920a7c1cfe62d654327dae5c4bb6b284sf *) Begin to abstract out the underlying transport layer.
4be9c459920a7c1cfe62d654327dae5c4bb6b284sf The first step is to remove the socket from the conn_rec,
4be9c459920a7c1cfe62d654327dae5c4bb6b284sf the server now lives in a context that is passed to the
47ff2654d827dd3596ce2e4099d69cec0f1009b9takashi core's input and output filters. This forces us to be very
47ff2654d827dd3596ce2e4099d69cec0f1009b9takashi careful when adding calls that use the socket directly,
47ff2654d827dd3596ce2e4099d69cec0f1009b9takashi because the socket isn't available in most locations.
b4ae72381175122ebfe42ff0d11db7a7f4162014takashi [Ryan Bloom]
b4ae72381175122ebfe42ff0d11db7a7f4162014takashi *) Really reset the MaxClients value in worker and threaded
5e1ae35c05125b8b6c6c648c60e576f5796ea061rpluem when the configured value is not a multiple of the number
5e1ae35c05125b8b6c6c648c60e576f5796ea061rpluem of threads per child. We said we did previously but we
b115299831a7b4bbec58a88d708d8536e1ecd50csf forgot to. [Jeff Trawick]
5e1ae35c05125b8b6c6c648c60e576f5796ea061rpluem *) Add Debian layout. [Daniel Stone <daniel@sfarc.net>]
b9a830d395feaa66ab621841a5cd86e1fa2d184brjung *) If shared modules are requested and mod_so is not available,
82e6711dc508d2822d9397f07136ba4ddd8764e1niq produce a fatal config-time error. [Justin Erenkrantz]
82e6711dc508d2822d9397f07136ba4ddd8764e1niq *) Improve http2env's performance by cutting the work it has to
82e6711dc508d2822d9397f07136ba4ddd8764e1niq do. [Brian Pane <bpane@pacbell.net>]
82e6711dc508d2822d9397f07136ba4ddd8764e1niq *) use new 'apr_hash_merge' function in mod_mime (performance fix)
82e6711dc508d2822d9397f07136ba4ddd8764e1niq [Brian Pane <bpane@pacbell.net>]
f43104f173247435cb4ade2b89aa2ca8108aedb7niqChanges with Apache 2.0.28
1fdcfb04a08e53ce28af657d854922efbbabecf4niq *) Fix infinite loop in mod_cgid.c.
1fdcfb04a08e53ce28af657d854922efbbabecf4niq [Dale Ghent <daleg@elemental.org>, Brian Pane <bpane@pacbell.net>]
1fdcfb04a08e53ce28af657d854922efbbabecf4niq *) When no port is given in a "ServerName host" directive, the
c26aa743a70c2148cdca1e6c637c605d9025b051niq server_rec->port is now set to zero, not 80. That allows for
c26aa743a70c2148cdca1e6c637c605d9025b051niq run-time deduction of the correct server port (depending on
c26aa743a70c2148cdca1e6c637c605d9025b051niq SSL/plain, and depending also on the current setting of
c26aa743a70c2148cdca1e6c637c605d9025b051niq UseCanonicalName). This change makes redirections
e076b09731977eafcef2bfc6f5323f3ab7e83b15niq work, even with https:// connections. As in Apache-1.3, the
e076b09731977eafcef2bfc6f5323f3ab7e83b15niq connection's actual port number is never used, only the ServerName
3fba96a56fbced0f14edde04f417d74d7f5bdb1eniq setting or the client's Host: setting. Documentation updated
3a183ee5b8f8129f6d3ec493be51abacda7c6ea7niq to reflect the change. [Martin Kraemer]
3a183ee5b8f8129f6d3ec493be51abacda7c6ea7niq *) Add a '%{note-name}e' argument to mod-headers, which works in
64dbb5532fba398c5e81efeb21c7fd50c05819d7niq the same way as mod_log_confg. [Ian Holsman]
64dbb5532fba398c5e81efeb21c7fd50c05819d7niq *) Fix the spelling of the AP_MPMQ_MIN_SPARE_DAEMONS and
d31d6c32262a8d1cbfc63d9f7adccae46002c8f7niq AP_MPMQ_MAX_REQUESTS_DAEMON macros in ap_mpm.h and all standard
d31d6c32262a8d1cbfc63d9f7adccae46002c8f7niq MPMs. [Cliff Woolley]
bcb567d8f48f5de8aa84e0b19e93357e0a4d970epquerna *) Introduce htdbm, a user management utility for db/dbm authorization
a50db00c3663c2a0d3531965c64d995516b06288niq databases. [Mladen Turk <mturk@mappingsoft.com>]
11f2c481e1d57bedb3f758565307501e9a2730ddtrawick *) Optimize usage of strlen and strcat in ap_directory_walk.
11f2c481e1d57bedb3f758565307501e9a2730ddtrawick [Brian Pane <bpane@pacbell.net>]
11f2c481e1d57bedb3f758565307501e9a2730ddtrawickChanges with Apache 2.0.27
4aa736735709d0434c02ae6cc65b0738eb9882cctakashi *) Introduce an Apache mod_ssl initial configuration template
4aa736735709d0434c02ae6cc65b0738eb9882cctakashi (ssl.conf, generated from ssl-std.conf). [Ralf S. Engelschall]
99d46a23c6eac800f327b29f8009f7d7da986230trawick *) Fixed a memory leak in the getline parsing code that could
99d46a23c6eac800f327b29f8009f7d7da986230trawick be triggered by arbitrarily large header lines. Requests
99d46a23c6eac800f327b29f8009f7d7da986230trawick from the core input filter for single lines are now limited
99d46a23c6eac800f327b29f8009f7d7da986230trawick to HUGE_STRING_LEN (8192 bytes). [Aaron Bannert]
6c2782f8988f498ad9e5fc84256e202175c3edc9covener *) Fix a truncation bug in how we print the port on the Via: header.
6c2782f8988f498ad9e5fc84256e202175c3edc9covener The routine that prints the Via: header now takes a length for
6c2782f8988f498ad9e5fc84256e202175c3edc9covener the port string. [Zvi Har'El <rl@math.technion.ac.il>]
bf27540ecb929632fd82264742045c96006c382cniq *) Some syntax errors in mod_mime_magic's magic file can result
bcb567d8f48f5de8aa84e0b19e93357e0a4d970epquerna in a 500 error, which previously was unlogged. Now we log the
bcb567d8f48f5de8aa84e0b19e93357e0a4d970epquerna error. [Jeff Trawick]
bcb567d8f48f5de8aa84e0b19e93357e0a4d970epquerna *) Add the support/checkgid helper app, which checks the run-time
bcb567d8f48f5de8aa84e0b19e93357e0a4d970epquerna validity of group identifiers usable in the Group directive.
bcb567d8f48f5de8aa84e0b19e93357e0a4d970epquerna *) Various --enable-so options have been fixed: --enable-so is
bcb567d8f48f5de8aa84e0b19e93357e0a4d970epquerna treated as "static"; explicit --enable-so=shared issues an error;
bcb567d8f48f5de8aa84e0b19e93357e0a4d970epquerna and explicit --enable-so fails with error on systems without
ea6ff3396df1d6d43ee0ecfa3e26ada981d8e9a3sctemme APR_HAS_DSO. [Aaron Bannert]
ba217dc41cebc0976010ee177f8fedac782d1f6fminfrin *) Fix a segfault in the core input filter when the client socket
ab1b172430f2d4e1b222b541bb8c1d431c1a7bc7sf gets disconnected unexpectedly. [Cliff Woolley]
8315a125b56710a222167e4d65b96c3c891f4b25sf *) Fix the reporting for child processes that die. This removes
ab1b172430f2d4e1b222b541bb8c1d431c1a7bc7sf all of the non-portable W* macros from Apache.
3f985866b9b5b49fb57735b5eb135591163f30dfsf [Jeff Trawick and Ryan Bloom]
7f51e5c395d431b8c20226f77de28efe13272bfasf *) Win32: Track and display "Parent Server Generation:" in
7f51e5c395d431b8c20226f77de28efe13272bfasf mod_status output. The generation will be bumped at
7f51e5c395d431b8c20226f77de28efe13272bfasf server graceful restart, when the child process exits
7f51e5c395d431b8c20226f77de28efe13272bfasf by hitting MaxRequestsPerChild or if the child
17d64c884a44f5ca72f6901afd3e50991bfc1c63sf process exits abnormally. [Bill Stoddard]
17d64c884a44f5ca72f6901afd3e50991bfc1c63sf *) Win32: Fix problem where MaxRequestsPerChild directive was
a6e4caaa97e433cc2ef78d957bc32756d9c49f79sf not being picked up in favor of the default. Enable
a6e4caaa97e433cc2ef78d957bc32756d9c49f79sf the parent to start up a new child process immediately upon
a6e4caaa97e433cc2ef78d957bc32756d9c49f79sf the old child starting shutdown.
a6e4caaa97e433cc2ef78d957bc32756d9c49f79sf [Bill Stoddard]
304903af1cf77cbdfa07e8a6482f35f3d9d7b0f3sf *) Fix some bungling of the remote port in rfc1413.c so that
304903af1cf77cbdfa07e8a6482f35f3d9d7b0f3sf IdentityCheck retrieves the proper user id instead of failing
a6e4caaa97e433cc2ef78d957bc32756d9c49f79sf and thus always returning "nobody."
a96ba81cada826f2a9ab1e24218a77bfadfc31d8sf [Dick Streefland <Dick.Streefland@xs4all.nl>]
a96ba81cada826f2a9ab1e24218a77bfadfc31d8sf *) Introduced thread saftey for mod_rewrite's internal cache.
a96ba81cada826f2a9ab1e24218a77bfadfc31d8sf [Brian Pane <bpane@pacbell.net>]
4f133508c93204c06e1acba9774ff184e5812606niq *) Simplified mod_env's directives to behave as most directives are
4f133508c93204c06e1acba9774ff184e5812606niq expected, in that UnsetEnv will not unset a SetEnv and PassEnv
87587593f1a53030e840acc0dec6cc881022ea40covener directive following that UnsetEnv within the same container.
87587593f1a53030e840acc0dec6cc881022ea40covener Also provides a runtime startup warning if a PassEnv configured
87587593f1a53030e840acc0dec6cc881022ea40covener environment value is undefined. [William Rowe]
87587593f1a53030e840acc0dec6cc881022ea40covener *) The worker MPM is now completely ported to APR's new lock API. It
52071e4b9f49c3a1c2c767c7ea80ec92cf9032c9covener uses native APR types for thread mutexes, cross-process mutexes,
52071e4b9f49c3a1c2c767c7ea80ec92cf9032c9covener and condition variables. [Aaron Bannert]
89b8bbc89404e7071e573c4f0a17f528996e855djorton *) Sync up documentation to remove all references to the now deprecated
89b8bbc89404e7071e573c4f0a17f528996e855djorton Port directive. [Justin Erenkrantz]
e1d4c4e8366f46dc5dc1e6e24b4c7ac448dfa061sf *) Moved all ldap modules from the core to httpd-ldap sub-project
e1d4c4e8366f46dc5dc1e6e24b4c7ac448dfa061sf [Ryan Bloom]
6bc4f334a04802bab835893d0c42af8bfb9c3c41sf *) Exit when we can't listen on any of the configured ports. This
53593dbd8fece82cb66a23f0b7024d8d713d66f1sf is the same behavior as 1.3, and it avoids having the MPMs to
53593dbd8fece82cb66a23f0b7024d8d713d66f1sf deal with bogus ap_listen_rec structures. [Jeff Trawick]
79e3f2f950745953fff4a6a8dfe1f7cce31ce287sf *) Cleanup the proxy code that creates a request to the origin
ab2b977442827214b1d884decf3e3f1579fd45e1rpluem server. This change adds an optional hook, which allows modules
ab2b977442827214b1d884decf3e3f1579fd45e1rpluem to gain control while the request is created if the proxy module
ab2b977442827214b1d884decf3e3f1579fd45e1rpluem is loaded. The purpose of this hook is to allow modules to add
195edf54eccd8c5a436c7dd17f5f604e7074d5d1sf input and/or output filters to the request to the origin. While
195edf54eccd8c5a436c7dd17f5f604e7074d5d1sf I was at it, I made the core use this hook, so that proxy request
195edf54eccd8c5a436c7dd17f5f604e7074d5d1sf creation uses some of the code from the core. This can still be
3709b26f3370ae89c5324a3c03fab56a93b09ecdsf greatly improved, but this is a good start. [Ryan Bloom]
3709b26f3370ae89c5324a3c03fab56a93b09ecdsfChanges with Apache 2.0.26
03577bc320125eaa2b27ee7af78b894ee6dfe121takashi *) Port the MaxClients changes from the worker MPM to the threaded
03577bc320125eaa2b27ee7af78b894ee6dfe121takashi MPM. [Ryan Bloom]
f5119c5d7cfe8c6d53cb29d43f8746684068ed82minfrin *) Fix mod_proxy so that it handles chunked transfer-encoding and works
f5119c5d7cfe8c6d53cb29d43f8746684068ed82minfrin with the new input filtering system. [Justin Erenkrantz]
f74d35a61a835e15412b99b8aebe4958fe4e94a5takashi *) Introduce the MultiviewsMatch directive, to allow the operator
94713632faf403489b3f8b4e0ed65e1011ac4991takashi to be flexible in recognizing Handlers and Filters filename
f74d35a61a835e15412b99b8aebe4958fe4e94a5takashi extensions as part of the Multiviews matching logic, strict with
20216b769716c4346cce373f2028d7dbebf03886poirier MultiviewsMatch NegotiatedOnly to accept only filename extentions
20216b769716c4346cce373f2028d7dbebf03886poirier that designate negotiated parameters, (content type, charset, etc.)
20216b769716c4346cce373f2028d7dbebf03886poirier or MultiviewsAll for the 1.3 behavior of matching any files, even
7317a32e0c621c9a28f6f10e83e6c5dc63e3f3bdsf if they have unregistered extensions. [William Rowe]
7317a32e0c621c9a28f6f10e83e6c5dc63e3f3bdsf *) Fixed the configure script to add a LoadModule directive to
ecc6e723b804fb4b8f858910eff3f88242ec56fasf the default httpd.conf for any module that was compiled
ecc6e723b804fb4b8f858910eff3f88242ec56fasf as a DSO. [Aaron Bannert <aaron@clove.org>]
ecc6e723b804fb4b8f858910eff3f88242ec56fasf *) rewrite mod_ssl input filtering to work with the new input filtering
ecc6e723b804fb4b8f858910eff3f88242ec56fasf system. [Justin Erenkrantz]
727d68c6009030f56a350b4603384ce4fb844341minfrin *) prefork: Don't segfault when we are able to listen on some but
727d68c6009030f56a350b4603384ce4fb844341minfrin not all of the configured ports. [Jeff Trawick]
ed6dfb7d7057dc4f42348f12d7bff9fe98fc73cfminfrin *) Build mod_so even if no core modules are built shared.
ed6dfb7d7057dc4f42348f12d7bff9fe98fc73cfminfrin [Aaron Bannert <aaron@clove.org>]
4dee28b6fc8fff5efde4e7821aeb6defed3fb84dsf *) Introduce ap_directory_walk rewrite (with further optimizations
4dee28b6fc8fff5efde4e7821aeb6defed3fb84dsf required) to adapt to the ap_process_request_internal() changes.
4dee28b6fc8fff5efde4e7821aeb6defed3fb84dsf Optimized so subrequests and redirects now reuse previous section
23247a8f748077bc788a5fbaf91d5fad34d0b7d1sf merges, until we mismatch with the original directory_walk, and
23247a8f748077bc788a5fbaf91d5fad34d0b7d1sf precomputed r->finfo results will cause directory_walk to skip
23247a8f748077bc788a5fbaf91d5fad34d0b7d1sf the most expensive phases of the function. [William Rowe]
58015652ffe00f004c6404a0631474f23dadc7dasf *) Allow ApacheMonitor to connect to and control Apache on other
58015652ffe00f004c6404a0631474f23dadc7dasf WinNT/2K machines. [Mladen Turk <mturk@mappingsoft.com>]
2af38cc44e48753913565b38a7a9f325f898a293minfrin *) Remove the Port directive. In it's place, the Listen directive
2af38cc44e48753913565b38a7a9f325f898a293minfrin is now a required directive, which tells Apache what port to
745417156908df54538ca284b382ce8d27b30066minfrin listen on. The ServerName directive has also been extended
2af38cc44e48753913565b38a7a9f325f898a293minfrin to accept an optional port. If the port is specified to the
fc2f0972572614b50523bc5ddb3f866ca4acd2f0sf ServerName, the server will report that port whenever it
fc2f0972572614b50523bc5ddb3f866ca4acd2f0sf reports the port that it is listening on. This change was
fc2f0972572614b50523bc5ddb3f866ca4acd2f0sf made to ease configuration errors that stem from having a Port
251430bcaff1fa6a77953bfe56475eb6cc7abc78sf directive, and a Listen directive. In that situation, the server
251430bcaff1fa6a77953bfe56475eb6cc7abc78sf would only listen to the port specified by the Listen command,
251430bcaff1fa6a77953bfe56475eb6cc7abc78sf which caused a lot of confusion to users. [Ryan Bloom]
7b467aa53854c95318a1c709709c1619a4f47118minfrin *) Added mod_mime_magic, mod_unique_id and mod_vhost_alias to the Win32
7b467aa53854c95318a1c709709c1619a4f47118minfrin build, as loadable modules. [William Rowe]
7ba7402d405dc9e3c1083e34049ed933472ca910poirier *) Fix --enable-mods-shared processing. If most is specified,
7ba7402d405dc9e3c1083e34049ed933472ca910poirier then all modules that can be compiled as shared modules are.
7ba7402d405dc9e3c1083e34049ed933472ca910poirier [Aaron Bannert <aaron@clove.org>]
7ba7402d405dc9e3c1083e34049ed933472ca910poirier *) Update the mime.types file to map video/vnd.mpegurl to mxu
4286d2e267e788d856092bf2ccf461e7ca99570frpluem and add commonly used audio/x-mpegurl for m3u extensions.
4286d2e267e788d856092bf2ccf461e7ca99570frpluem [Heiko Recktenwald <uzs106@uni-bonn.de>, Lars Eilebrecht]
4286d2e267e788d856092bf2ccf461e7ca99570frpluem *) Eliminate the depreciated r->content_language, in favor of the array
43563ad04e4bae7b42f7a34a87b7c60dc69c0c3fpoirier r->content_languages introduced many years ago. Module authors must
5357892a1e367372dc2d4a315156e3e44dc5d56dpoirier substantially overhaul their modules, so this needs to be upgraded
5357892a1e367372dc2d4a315156e3e44dc5d56dpoirier if the module still relied on backwards-brokeness. [William Rowe]
b42af5f6edf4fe4b820288c37920a7a6fd65f1f1poirier *) Allow configure help strings to work with autoconf 2.50+ and 2.13.
b42af5f6edf4fe4b820288c37920a7a6fd65f1f1poirier [Justin Erenkrantz]
49cea03e96dc4707bce15d6318eb013cb8668d96minfrin *) Rewrite the input filtering mechanisms to consolidate and reorganize
49cea03e96dc4707bce15d6318eb013cb8668d96minfrin code. In short, core_input_filter does something now and
49cea03e96dc4707bce15d6318eb013cb8668d96minfrin ap_http_filter is now only concerned with HTTP. [Justin Erenkrantz]
63eaa8ed62d63de0a44346b8af48e08e562db01eminfrin *) Update the Win32 build to re-absorb mod_proxy and family.
63eaa8ed62d63de0a44346b8af48e08e562db01eminfrin [William Rowe]
1af2b28846e2647963db788b081676884fb7df8crpluem *) Resolved the build failure on Win32 using MSVC 5.0 (without the
1af2b28846e2647963db788b081676884fb7df8crpluem current SDK.) [William Rowe]
845258fbf5102b8b09fe9b7f4cb4ea4c089344c3poirier *) Some style changes to the code that does ProxyErrorOverride. Fixed
845258fbf5102b8b09fe9b7f4cb4ea4c089344c3poirier config merge behaviour. [Graham Leggett]
5d36cddfe00d5c6ad18845fcc04e6f7662050fafminfrin *) Allow support programs to be compiled against a static version
5d36cddfe00d5c6ad18845fcc04e6f7662050fafminfrin of libapr. This allows the smaller support programs to be
5d36cddfe00d5c6ad18845fcc04e6f7662050fafminfrin relocated. [Aaron Bannert <aaron@clove.org>]
20aa41f86a5b451529d26d9b901eea69989e5c0aminfrin *) Update the mime.types file to the registered media types as
20aa41f86a5b451529d26d9b901eea69989e5c0aminfrin of 2001-09-25, and add mapping for xsl extension [Mark Cox]
8c92aeeb75b1b393f61a3e01c495484737a0ff8cminfrin *) Fix MaxClients in the Worker MPM, so that it specifies the maximum
8c92aeeb75b1b393f61a3e01c495484737a0ff8cminfrin number of clients that can connect at the same time, instead of
1018201f5223624476334c6e23aead02db7c4040minfrin specifying the maximum number of child processes.
1018201f5223624476334c6e23aead02db7c4040minfrin [Aaron Bannert <aaron@clove.org>]
e5db2522dbe503cbf5399094b6239c88c246a8c5poirier *) Switch proc_pthread AcceptMutex configuration directive to pthread to
e5db2522dbe503cbf5399094b6239c88c246a8c5poirier be consistent with 1.3. [Justin Erenkrantz]
ad7e5e9fb8f63a5155bb392114162997505ff772minfrin *) Cache apr_explode_localtime() value for 15 seconds.
ad7e5e9fb8f63a5155bb392114162997505ff772minfrin [Brian Pane <bpane@pacbell.net>]
ad7e5e9fb8f63a5155bb392114162997505ff772minfrin *) Fix mod_include to not return ETag or Last-Modified headers.
ad7e5e9fb8f63a5155bb392114162997505ff772minfrin [Ian Holsman <ianh@cnet.com>]
59cb8d601b8c44476e59310f68b9c373d8fc62a6minfrin *) Fix worker MPM's scoreboard logic. [Aaron Bannert <aaron@clove.org>]
59cb8d601b8c44476e59310f68b9c373d8fc62a6minfrin *) Eliminate the wasteful run-time conversion of method names from strings
59cb8d601b8c44476e59310f68b9c373d8fc62a6minfrin to numbers in places where the methods are known at compile time.
ec8b1faa56744b338f6d6421144b56c2bb3faae6poirier [Brian Pane <bpane@pacbell.net>]
10abdcbd7b30d957d15c61ea8100ba97a627ac95minfrin *) Turn the worker MPM's queue into a LIFO. This may
10abdcbd7b30d957d15c61ea8100ba97a627ac95minfrin improve cache-hit performance under some conditions.
87e0bf269cc3386ee8e6ab561ff00770151f4f53niq [Aaron Bannert <aaron@clove.org>]
87e0bf269cc3386ee8e6ab561ff00770151f4f53niq *) Switch back to SIGUSR1 for graceful restarts on all platforms that
3c67b7956d44501360506a9f13a5011be73b30ecminfrin support it. [Justin Erenkrantz]
3c67b7956d44501360506a9f13a5011be73b30ecminfrin *) Cleanup the worker MPM. We no longer re-use transaction
3c67b7956d44501360506a9f13a5011be73b30ecminfrin pools. This incurs less overhead than shuffling the pools
97d20d37d21b8d427a920e211858172f0a82427epoirier around so that they can be re-used. Remove one of the
97d20d37d21b8d427a920e211858172f0a82427epoirier queue's condition variables. We just redefined the API to
97d20d37d21b8d427a920e211858172f0a82427epoirier state that you can't try to add more stuff than you allocated
8e04e8ec7d682bff5e6dccdd70c082971a88cb8bniq segments for. [Aaron Bannert <aaron@clove.org>]
8e04e8ec7d682bff5e6dccdd70c082971a88cb8bniq *) Fix SSL VPATH builds [Cody Sherr <csherr@covalent.net>]
53c999a82fcca729dabc8a512b3fb996d61fd814niq *) Fixed persistent connections when a request contains a body.
53c999a82fcca729dabc8a512b3fb996d61fd814niq [Greg Stein]
25d0f8adcab13255494a3572edff1a25f6fbeea3rpluem *) mod_dav uses a new API to speak to the backend provider for dead
25d0f8adcab13255494a3572edff1a25f6fbeea3rpluem property management. [Greg Stein]
25d0f8adcab13255494a3572edff1a25f6fbeea3rpluem *) Remove the Win32 script-processing exception from mod_cgi, and
dd9ae259e1578c4388739c880ede97c55cec543frpluem roll build_command_line/build_argv_list into a unified, overrideable
dd9ae259e1578c4388739c880ede97c55cec543frpluem ap_cgi_build_command optional function. [William Rowe]
0938450cadc9a083d112a86bc7dd7ae34f791364trawick *) Rewrite find_start_sequence to use a better search algorithm
0938450cadc9a083d112a86bc7dd7ae34f791364trawick to find the start tag. [Justin Erenkrantz]
8bed7ee6d97933b958e97e222f37154d83e384e5jorton *) Fix a seg fault in mod_include. When we are generating an
8bed7ee6d97933b958e97e222f37154d83e384e5jorton internal redirect, we must set r->uri to "", not a bogus
8bed7ee6d97933b958e97e222f37154d83e384e5jorton string, and not NULL. [Ryan Bloom]
8bed7ee6d97933b958e97e222f37154d83e384e5jorton *) Optimized location_walk, so subrequests, redirects and second passes
d33ddda47790d3295f4218f87e3a296cf51a9becmjc now reuse previous section merges on a <Location > by <Location >
c7d46b58052fe666c74a47bd26b6cb1e351492adrpluem basis, until we mismatch with the original location_walk.
4e08c8c1a91e2887b41d8cacd3aa532355d0237drpluem [William Rowe]
43d051c8401a1f3b4f7853cd897d3565ab814ea7poirier *) Back out the 1.45 change to util_script.c. This change made
43d051c8401a1f3b4f7853cd897d3565ab814ea7poirier us set the environment variable REQUEST_URI to the redirected
43d051c8401a1f3b4f7853cd897d3565ab814ea7poirier URI, instead of the originally requested URI.
2f34374f6e04b9094a1d13a5ed823f331ba841a3rpluem [Taketo Kabe <kabe@sra-tohoku.co.jp>]
2f34374f6e04b9094a1d13a5ed823f331ba841a3rpluem *) Make mod_include do lazy evaluation of potentially expensive to
7a25b029b69f169bd22718165dff3b271114f92eniq compute variables. [Brian Pane <bpane@pacbell.net>]
7a25b029b69f169bd22718165dff3b271114f92eniq *) Fix logging of bytes sent for HEAD requests. %b and %B should
2f34374f6e04b9094a1d13a5ed823f331ba841a3rpluem log either - or 0, before this patch, they were both logging
3e6a46d2fecf446daf0e280a49fa5565f5f635eajorton the file size. [Taketo Kabe <kabe@sra-tohoku.co.jp>]
3e6a46d2fecf446daf0e280a49fa5565f5f635eajorton *) Make mod_include check for BYTE_CHECK_THRESHOLD per bucket rather
137e484e5f984ceff1102e1212dda8ac0413231aniq than per character. [Brian Pane <bpane@pacbell.net>]
0df8f79d2324b131c36955d7e474a735a762f9eeniq *) Normalize the primary request, redirects and sub-requests to
0df8f79d2324b131c36955d7e474a735a762f9eeniq run the same ap_process_request_internal for consistency in
30e3e760b737f13ce800fa02c5930ade7659ba66niq robustness, behavior and security. [William Rowe]
30e3e760b737f13ce800fa02c5930ade7659ba66niq *) Fix a segfault with mod_include when r->path_info is not set
80370e62044bea458bcd0545c59cb864ed117b04niq (which is the case with mod_proxy). [Ian Holsman <ianh@cnet.com>]
e991c6fc032c59eb6cb751d9d382e933a53a2866niq *) Add -X functionality back. This indicates to all MPMs and any other
e991c6fc032c59eb6cb751d9d382e933a53a2866niq part of Apache that it should run in "debug" mode. [Justin Erenkrantz]
9a00e2d46c44c111d6952e553a2f1a61b7594eb3rpluem *) Some initial support for the cygwin platform [prefork only].
9a00e2d46c44c111d6952e553a2f1a61b7594eb3rpluem This is not to be confused with support for the WinNT/Win32
33d9be77cc6f5fc8734e9c1f526b82d359955152rpluem platform, which is the recommended configuration for native
9a00e2d46c44c111d6952e553a2f1a61b7594eb3rpluem Win32 users. The cygwin platform support is recommended for
33d9be77cc6f5fc8734e9c1f526b82d359955152rpluem cygwin platform users. [Stipe Tolj <tolj@wapme-systems.de>]
172e83c0f024fe6396dd1f3ca3492fd83c304db5jim *) Changed syntax of Set{Input|Output}Filter. The list of filters
da128c59ec571c4dff70f41ecba9c8a9974c6cd6niq must be semicolon delimited (if more than one filter is given.)
45932a847f237b4d8f0667b138bd3f8a15fb53ffniq The Set{Input|Output}Filter directive now overrides a parent
45932a847f237b4d8f0667b138bd3f8a15fb53ffniq container's directive (e.g. SetInputFilter in <Directory /web/foo>
45932a847f237b4d8f0667b138bd3f8a15fb53ffniq will override any SetInputFilter directive in <Directory /web>.)
186e9d990f453d16826ab87a87df7b87e6e05921rpluem This new syntax is more consistent with Add{Input|Output}Filter
186e9d990f453d16826ab87a87df7b87e6e05921rpluem directives defined in mod_mime. Also cures a bug in prior releases
186e9d990f453d16826ab87a87df7b87e6e05921rpluem where the Set{Input|Output}Filter directive would corrupt the
186e9d990f453d16826ab87a87df7b87e6e05921rpluem global configuration if the multiple directives were nested.
6861702c2d883e5c0744d5f7528d2060671ad24dtakashi [William Rowe]
6861702c2d883e5c0744d5f7528d2060671ad24dtakashi *) Cured what's ailed mime for quite some time. If an AddSomething
6861702c2d883e5c0744d5f7528d2060671ad24dtakashi was given in the configuration (Language, Charset, Handler or
6861702c2d883e5c0744d5f7528d2060671ad24dtakashi Encoding) Apache would set the content type as given by AddType,
f1f779c42f76118102fdecbe8777b47a1fc693a7rjung but refused to check the mime.types file if AddType wasn't given
f1f779c42f76118102fdecbe8777b47a1fc693a7rjung for that specific extension. Setting the AddHandler for .html
f1f779c42f76118102fdecbe8777b47a1fc693a7rjung without setting the AddType text/html html would cause Apache to
292cb7b720095e7bb434d79ae53b02d332aeb99acovener use the default content type. [William Rowe]
292cb7b720095e7bb434d79ae53b02d332aeb99acovener *) Added some bulletproofing to memory allocation in the LDAP cache
292cb7b720095e7bb434d79ae53b02d332aeb99acovener code. [Graham Leggett]
137e484e5f984ceff1102e1212dda8ac0413231aniqChanges with Apache 2.0.25
137e484e5f984ceff1102e1212dda8ac0413231aniq *) Move the installed /manual directory out of the /htdocs/ tree, so
137e484e5f984ceff1102e1212dda8ac0413231aniq that it can be kept more independently from the remaining document
137e484e5f984ceff1102e1212dda8ac0413231aniq root. The "Alias /manual ..." already allowed for easy projection
4e08c8c1a91e2887b41d8cacd3aa532355d0237drpluem into existing private document trees. [Martin Kraemer]
d0cd62f11bcd8fa9bf758c5125f55cea5d9038dfrpluem *) Add specified user attributes to the environment when using
d0cd62f11bcd8fa9bf758c5125f55cea5d9038dfrpluem mod_auth_ldap. This allows you to use mod_include to embed specified
51d55be8bbc6652c13bc80d920f4331f7152dceerjung user attributes in a page like so:
51d55be8bbc6652c13bc80d920f4331f7152dceerjung Hello <!--#echo var="AUTHENTICATE_CN"-->, how are you?
51d55be8bbc6652c13bc80d920f4331f7152dceerjung [Graham Leggett]
0af58edfee6112cc3399e0e693340e525b96ab1ctrawick *) Fix a performance problem with the worker MPM. We now create
0af58edfee6112cc3399e0e693340e525b96ab1ctrawick transaction pools once, and re-use them for each connection.
0af58edfee6112cc3399e0e693340e525b96ab1ctrawick [Aaron Bannert <aaron@clove.org>]
27c7a7cad9e83eeebad0a4d5a321144394adc3f9trawick *) Modfied mod_mime to prevent mod_negotation from serving a multiview
27c7a7cad9e83eeebad0a4d5a321144394adc3f9trawick of a 'handler' or 'filter', so that any filename extension that does
8f2700898323915da289644dc1f3ee11a5e5b4earpluem not contribute to the negotiated metadata can't be served without
8f2700898323915da289644dc1f3ee11a5e5b4earpluem an explicit request. E.g., if the .Z extension is associated with
8f2700898323915da289644dc1f3ee11a5e5b4earpluem an unzip filter, the user request somefile.Z.html, mod_negotiation
8f2700898323915da289644dc1f3ee11a5e5b4earpluem won't serve it. It can serve somefile.Z.html when somefile.Z is
e7983ce746b0df56a1b74b42da6d82f5ecb99349covener requested, since the .Z extension is explictly requested, if the
e7983ce746b0df56a1b74b42da6d82f5ecb99349covener .html extension is associated with ContentType text/html.
e7983ce746b0df56a1b74b42da6d82f5ecb99349covener [William Rowe]
77e28c16c8109d76c3b45717fa66ee74415db042rjung *) Introduce the AddInputFilter filter[;filter...] ext [ext...]
bbcfb8ab8e22f90fdf346e9993bd58ba2203b182trawick and corresponding AddOutputFilter syntax, to insert one or more
bbcfb8ab8e22f90fdf346e9993bd58ba2203b182trawick filters by mod_mime filename extension processing.
d1745d6933c22c807cf2388332426defd1b19f03covener [William Rowe]
d1745d6933c22c807cf2388332426defd1b19f03covener *) Fix a growing connection pool in core_output_filter() for
d1745d6933c22c807cf2388332426defd1b19f03covener keepalive requests. [Jeff Trawick]
222834d5a33b915037094af014905f3683cae78btrawick *) Moved split_and_pass_pretag_buckets back to being a
222834d5a33b915037094af014905f3683cae78btrawick macro at Ryans's request. Removed the return from it
2db5d76ac4c75aadecf38e20569bccbfd2360ba7rpluem by setting and returning a return code instead. Updated
2db5d76ac4c75aadecf38e20569bccbfd2360ba7rpluem the code to check the return code from the macro and
2db5d76ac4c75aadecf38e20569bccbfd2360ba7rpluem do the right thing. [Paul J. Reder]
7f4ac5a4cd99a9cae866b5908e358bd932736307chrisd *) Fix a segfault when a numeric value was received for Host:.
1c03114a0f0315ed19a05f654021da9f66005897rjung [Jeff Trawick]
89691c9bd17f5f53fa0aa8d3fe2e1faee5a5d984rpluem *) Add a function ap_remove_input_filter. This is to match
89691c9bd17f5f53fa0aa8d3fe2e1faee5a5d984rpluem up with ap_remove_output_filter. [Ryan Bloom]
89691c9bd17f5f53fa0aa8d3fe2e1faee5a5d984rpluem *) Clean up location_walk, so that this step performs a minimum
3e9c0665b06e44cf776528c6954ed3ca34a77c7fsctemme amount of redundant effort (it must be run twice, but it will no
51a475d92e7d68ee6d7b57aa7fd6e73b2712ce31sctemme longer reparse all <Location > blocks when the request uri
3e9c0665b06e44cf776528c6954ed3ca34a77c7fsctemme hadn't changed.) [William Rowe]
873c287c391b0bbc4719b68bb84946515811e1batrawick *) Eliminate proxy: (and all other 'special') processing from the
6707208ba4e9a5841ca1ab830830fd286ea5b7c5trawick ap_directory_walk() phase. Modules that want to use special
6707208ba4e9a5841ca1ab830830fd286ea5b7c5trawick walk logic should refer to the mod_proxy map_to_location example,
873c287c391b0bbc4719b68bb84946515811e1batrawick with it's proxy_walk and proxysection implementation. This makes
832853bb93c1831daf24e4727c5ca0e1b1786e83lars either directory_walk flavor much more legible, since that phase
832853bb93c1831daf24e4727c5ca0e1b1786e83lars only runs against real <Directory > blocks.
832853bb93c1831daf24e4727c5ca0e1b1786e83lars [William Rowe]
d2696ac6757b3d8bdaa27634a141ac8c8a045e08fielding *) Fix a security problem in mod_include which would allow
d2696ac6757b3d8bdaa27634a141ac8c8a045e08fielding an SSI document to be passed to the client unparsed.
d2696ac6757b3d8bdaa27634a141ac8c8a045e08fielding [Cliff Woolley, Brian Pane]
1782dcd420de504978945e6b812523eeae6d56a2lars *) Introduce the map_to_storage hook, which allows modules to bypass
d2696ac6757b3d8bdaa27634a141ac8c8a045e08fielding the directory_walk and file_walk for non-file requests. TRACE
1782dcd420de504978945e6b812523eeae6d56a2lars shortcut moved to http_protocol.c as APR_HOOK_MIDDLE, and the
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem directory_walk/file_walk happen as APR_HOOK_VERY_LAST in core.c.
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem [William Rowe]
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem *) Add the ability for mod_include to add the INCLUDES filter
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem if the file is configured for the server-parsed handler.
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem This makes the configuration for .shtml files much easier
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem to understand, and allows mod_include to honor Apache 1.3
cf8d02ea0c91653917b044529f3133c5a1bb9200fielding config files. Based on Doug MacEachern's patch to PHP
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem to do the same thing. [Ryan Bloom]
17ac330ebaa71b24cb77580411a231ee45996e03pquerna *) force OpenSSL to ignore process local-caching and to always
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem get/set/delete sessions using mod_ssl's callbacks
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem [Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>,
9f38f3ec3e8087985d108a24ae796962fef83644takashi Geoff Thorpe <geoff@geoffthorpe.net>]
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem *) Make the worker MPM shutdown and restart cleanly. This also
d4ee4552489641d35d1195bbbd6021351c4b79aarjung cleans up some race conditions, and gets the worker using
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem pools more cleanly. [Aaron Bannert <aaron@clove.org>]
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem *) Implement CRYPTO_set_locking_callback() in terms of apr_lock
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem for mod_ssl
abb99af8aa7da2cb4c324133a4e10bd7a50f875erpluem [Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>]
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem *) Fix for mod_include. Ryan's patch to check error
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem codes put a return in the wrong place. Also, the
382d14411b582d97075a836190d74c778977505fcovener include handler return code wasn't being checked.
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem I don't like macros with returns, so I converted
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem SPLIT_AND_PASS_PRETAG_BUCKETS into a function.
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem [Paul J. Reder <rederpj@raleigh.ibm.com>]
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem *) fix segv in mod_mime if no AddTypes are configured
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem [John Sterling <sterling@covalent.net>]
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem *) Enable ssl client authentication at SSL_accept time
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem [Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>]
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem *) Fix a segfault in mod_include when the original request has no
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem associated filename (e.g., we're filtering the error document for
d03aa31ada476d8eb97feaec2b1099809e7f3d57niq a bad URI). [Jeff Trawick]
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem *) Fix a storage leak (a strdup() call) in mod_mime_magic. [Jeff Trawick]
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem *) The prefork and OS/2 MPMs are overwriting the pid file when a second copy
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem of httpd is started and shuts down due to socket conflict. Moving the
df46ff21c57d00f6addccaaf9b1484f2b56b8577pquerna call to ap_log_pid solves the problem.
df46ff21c57d00f6addccaaf9b1484f2b56b8577pquerna *) Changed the late-1.3 log_config substitution %c to %X, to log the
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem status of the closed connection, as it conflicts with the far more
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem common, historical ssl logging directive %...{var}c. [William Rowe]
a5cce34e21a5b472f3806b4526043887bcb7e9eajim *) Added the common error/ tree to the build/install targets
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem (similar to the common icons/ tree) for the multi-language error
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem messages that Lars committed earlier. [William Rowe]
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem *) Added a multi process, multi threaded OS/2 MPM mpmt_os2. [Brian Havard]
8c3667cd1d0db08647793137c0d1aa7f6526bebfniq *) Added a default commented-out mod_ldap and mod_auth_ldap
6824182b3b8e045db97a228d3127bdfcbdfeb0bcniq [Graham Leggett]
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem *) Added documentation for mod_ldap and mod_auth_ldap.
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem [Graham Leggett]
0c26d213d85bc40fc05963c63bf670b42b352d25niq *) Enabled negative caching on attribute comparisons in the LDAP cache.
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem Fixed a problem where the default cache TTL was set in milliseconds
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem not microseconds causing the cache to time out almost immediately.
92357fb76d3ad043e29ba2ba2041a7bdb8d13390niq [Graham Leggett]
9f07b6dc343a4e3eba5f4c47050a77441723ce89nd *) Fixed all the #if APR_HAS_SHARED_MEMORY checks within the LDAP
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem module code to follow APR. [Graham Leggett]
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem *) Fixed LDAP cleanup on graceful restarts. LDAP connections are now
f7cec4a86292b160401472286a17497ae0d4df18covener cleaned up when the connection pool pool is cleaned up.
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem [Graham Leggett]
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem *) Fix a minor issue with Jeff Trawick's mod_include
abc69b39766c0de3eaf99e9016ea3f35e23c116drpluem patch. Without this patch, the code will just allocate
1464434c2c104e0ba224644c42552330f5158537covener more bytes in get_combined_directive than are needed.
8d574b3ac4185e4f71c8b9aae76e7122a78201c4rpluem [Paul Reder]
8d574b3ac4185e4f71c8b9aae76e7122a78201c4rpluem *) Added the LDAP authentication module mod_auth_ldap.
7f4ac5a4cd99a9cae866b5908e358bd932736307chrisd [Dave Carrigan <dave@rudedog.org>, Graham Leggett]
8d574b3ac4185e4f71c8b9aae76e7122a78201c4rpluem *) Added the LDAP cache and connection pooling module mod_ldap.
509111f5f58a9effd4c832f6a0cbd6ad9d549188jorton [Dave Carrigan <dave@rudedog.org>, Graham Leggett]
509111f5f58a9effd4c832f6a0cbd6ad9d549188jorton *) Fix --enable-modules=all breakage with mod_auth_db and mod_auth_digest
0e2a2eae9b72ac099aa25d7419e55af13b004be9minfrin by allowing a module to disable itself if its prerequisites are not
235b900b78cf6849f8344e377a91ded37d9cc9depquerna met. [Justin Erenkrantz]
235b900b78cf6849f8344e377a91ded37d9cc9depquernaChanges with Apache 2.0.24
66b8ec445dced7a2036bcd3b87b6fc3f08a1ab24jorton *) Fix a couple of issues in mod_include when the tag appeared at
66b8ec445dced7a2036bcd3b87b6fc3f08a1ab24jorton offsets near 8192 in the file being parsed. [Jeff Trawick]
0e2a2eae9b72ac099aa25d7419e55af13b004be9minfrin *) Fix an assertion failure in mod_ssl when the keepalive timeout is
0e2a2eae9b72ac099aa25d7419e55af13b004be9minfrin reached. [Jeff Trawick]
0e2a2eae9b72ac099aa25d7419e55af13b004be9minfrin *) Numerous improvements to the Win32 build system. Introduced command line
0e2a2eae9b72ac099aa25d7419e55af13b004be9minfrin builds without requiring .mak files for MSVC 6.0 and later versions.
8d574b3ac4185e4f71c8b9aae76e7122a78201c4rpluem Improved .dsp file compatibility for both Visual Studio 5.0 and 6.0 users.
6f33babce8f8bc723f0b2c755aef049cd509504fpquerna [William Rowe]
0a12339f39799193ac6866fce812a1deb8f4a1abpquerna *) Assorted corrections and improvements to the winnt_mpm startup code. Better
0a12339f39799193ac6866fce812a1deb8f4a1abpquerna reporting of uninstalled services and other error conditions, and changed the
0a12339f39799193ac6866fce812a1deb8f4a1abpquerna default service name to Apache2. [William Rowe]
3fb118bc4e1a634f71c1fa509819ceac36c79dcbpquerna *) Numerous improvements to the Win32 ApacheMonitor utility, including winnt_mpm
3fb118bc4e1a634f71c1fa509819ceac36c79dcbpquerna compatibility with existing Apache 1.3 Win32 Apache management utilites.
fb59af4ce3fcdd314b848359faeddf1e51bb24c5jim [Mladen Turk <mturk@mappingsoft.com>, William Rowe]
fb59af4ce3fcdd314b848359faeddf1e51bb24c5jim *) Fixed the segfaults in mod_mime introduced by hash tables in 2.0.20.
fb59af4ce3fcdd314b848359faeddf1e51bb24c5jim [William Rowe, Greg Ames]
a91a59d0b0ceed7cd5621fe8757eda5ff6a043a8pquerna *) Rounded out the mod_mime Add/Remove pairs by adding RemoveLanguage
a91a59d0b0ceed7cd5621fe8757eda5ff6a043a8pquerna and RemoveCharset directives. [William Rowe]
a91a59d0b0ceed7cd5621fe8757eda5ff6a043a8pquerna *) The Unix MPMs other than perchild now allow child server
a91a59d0b0ceed7cd5621fe8757eda5ff6a043a8pquerna processes to use the accept mutex when starting as root and
a91a59d0b0ceed7cd5621fe8757eda5ff6a043a8pquerna using SysV sems for the accept mutex. Previously, this
a91a59d0b0ceed7cd5621fe8757eda5ff6a043a8pquerna combination would lead to fatal errors in the child server
a91a59d0b0ceed7cd5621fe8757eda5ff6a043a8pquerna processes. perchild can't use SysV sems because of security
a91a59d0b0ceed7cd5621fe8757eda5ff6a043a8pquerna issues. [Jeff Trawick, Greg Ames]
a91a59d0b0ceed7cd5621fe8757eda5ff6a043a8pquerna *) Added Win32 revision stamp resources to all http binaries
3ec1e3a35106ec4c8bcf8fae6a20cb623aed0b62pquerna (including modules/ and support/ tools.) PR7322 [William Rowe]
3ec1e3a35106ec4c8bcf8fae6a20cb623aed0b62pquerna *) Fix ap_rvprintf to support more than 4K of data at one time.
97f7daaffd9b6c1031302d7e551d5279fa0d0d72pquerna [Cody Sherr <csherr@covalent.net>]
97f7daaffd9b6c1031302d7e551d5279fa0d0d72pquerna *) We have always used the obsolete/deprecated Netscape syntax
847db8b2f0188cd9c840acbe4fea77a32748b2edpquerna for our tracking cookies; now the CookieStyle directive
97f7daaffd9b6c1031302d7e551d5279fa0d0d72pquerna allows the Webmaster to choose the Netscape, RFC2109, or
97f7daaffd9b6c1031302d7e551d5279fa0d0d72pquerna RFC2965 format. The new CookieDomain directive allows the
99c8705f69fae71940ad9b091bd2f588a7b9f484minfrin setting of the cookie's Domain= attribute, too. PR #s 5006,
99c8705f69fae71940ad9b091bd2f588a7b9f484minfrin 5023, 5920, 6140 [Ken Coar]
99c8705f69fae71940ad9b091bd2f588a7b9f484minfrin *) Tweak server/Makefile so that the rules for generating exports.c
9376e7dc573bb2721491c79b92f9c06fdfacebe6minfrin are compatible with make utilities which don't expand wildcards
9376e7dc573bb2721491c79b92f9c06fdfacebe6minfrin in a dependency list (e.g., OS/390 make, certain levels of GNU
9376e7dc573bb2721491c79b92f9c06fdfacebe6minfrin make). [Jeff Trawick]
edaefb8bf78debc86ef7de441c7983d8b05517e1minfrin *) Install the SSL headers. [John Sterling <sterling@covalent.net>]
edaefb8bf78debc86ef7de441c7983d8b05517e1minfrin *) Begin to sanitize the MPM configuration directives. Now, all
edaefb8bf78debc86ef7de441c7983d8b05517e1minfrin MPMs use the same functions for all common MPM directives. This
edaefb8bf78debc86ef7de441c7983d8b05517e1minfrin should make it easier to catch all bugs in these directives once.
b5cbd7bc65a5c0eda246b0cd32e7d9ed124d66c4niq [Cody Sherr <csherr@covalent.net>]
b5cbd7bc65a5c0eda246b0cd32e7d9ed124d66c4niq *) Close a major resource leak. Every time we had issued a
b5cbd7bc65a5c0eda246b0cd32e7d9ed124d66c4niq graceful restart, we leaked a socket descriptor.
2ac474e42b9281e247e7082e30c50c5bef1f2cc3rjung [Ryan Bloom]
6ad55f63504cf5fe5205ed9495664519afeadcd9chrisd *) Fix a problem with the new method code. We need to cast
6ad55f63504cf5fe5205ed9495664519afeadcd9chrisd the 1 to an apr_int64_t or it will be treated as a 32-bit
6ad55f63504cf5fe5205ed9495664519afeadcd9chrisd integer, and it will wrap after being shifted 32 times.
809ec9d7cc8bc12d7dc6fafba24f3acad3e49d81chrisd [Cody Sherr <csherr@covalent.net> and Ryan Morgan <rmorgan@covalent.net>]
809ec9d7cc8bc12d7dc6fafba24f3acad3e49d81chrisd *) Fix a bug in mod_expires. Previous to this patch, if you
809ec9d7cc8bc12d7dc6fafba24f3acad3e49d81chrisd told mod_expires to add 604800 seconds to the last-modified
809ec9d7cc8bc12d7dc6fafba24f3acad3e49d81chrisd time, it actually added 604800 usec's to the last-modified time,
f436f5cf34615c3c7d49dd229560ba658033f9eachrisd so that when looking at the response it looked like nothing
f436f5cf34615c3c7d49dd229560ba658033f9eachrisd had been done. The root of the problem was that we always compute
f436f5cf34615c3c7d49dd229560ba658033f9eachrisd time in usec's, but we ask users to input sec's. This means we
ce6098001014d149e90e56ab0e89c1b4aab30136chrisd need to convert to usec's before using those values.
ce6098001014d149e90e56ab0e89c1b4aab30136chrisd [Ryan Bloom]
7245e9b991db85d9d9a587fe5f4051f642ebdc3cchrisd *) The worker MPM now handles shutdown and restart requests. It
7245e9b991db85d9d9a587fe5f4051f642ebdc3cchrisd definitely isn't perfect, but we do stop the servers correctly.
7245e9b991db85d9d9a587fe5f4051f642ebdc3cchrisd The biggest problem right now is that SIGHUP causes the server to
7245e9b991db85d9d9a587fe5f4051f642ebdc3cchrisd just die. [Ryan Bloom]
38b062650152074931a68e933461762c5e233cfcniqChanges with Apache 2.0.23
d1c1b82647a997922859ec76b82e62a956078dbccovener *) Use the prefork MPM by default on Unix. [various]
63de18ba5e922ffaab500317d7d1d0ad6b27b7e2covener *) Added a systray icon monitor application for Win32.
91ef999a69527d2a64983681c92aaef9270697b4rpluem [Mladen Turk <mturk@mappingsoft.com>]
91ef999a69527d2a64983681c92aaef9270697b4rpluem *) mod_rewrite: Fix the line ending on some non-Unix systems for
e82c197ca8872669af89367746826fe6b9955bb3niq messages written to the rewrite log.
e82c197ca8872669af89367746826fe6b9955bb3niq [Richard Labennett <rlabenn@us.ibm.com>]
baef4b5261d84ad9bacb2f4e745b33f35534c25aniq *) All mod_autoindex query parsing is now quietly quashed with the
baef4b5261d84ad9bacb2f4e745b33f35534c25aniq IndexOption IgnoreClient. The IndexOption SuppressColumnSorting
baef4b5261d84ad9bacb2f4e745b33f35534c25aniq still drops the column sort <a href>'s for the column headers, but
baef4b5261d84ad9bacb2f4e745b33f35534c25aniq IgnoreClient is required to ignore these Query options entirely.
742ec45ed2ac00ab03080e898332352220cc1f13niq [William Rowe]
a5e068c4aa3d0084a41e178c7c0c1b1ae2f28125jim *) Introduced new mod_autoindex query argument parsing for F=[0|1|2]
742ec45ed2ac00ab03080e898332352220cc1f13niq to allow the client to select plain, FancyIndexing or HTMLTable
f82568a780e35e8786958c49a1259434e2088b9cniq formatting, V=[0|1] to inhibit or enable version sorting, and
f82568a780e35e8786958c49a1259434e2088b9cniq P=pattern to return only specific files. The old Query Arguments
f82568a780e35e8786958c49a1259434e2088b9cniq were reorganized as C=f for sorting column 'f' (same N, D, S, or M
56b7c92bac48127bda06d80bf94952258f7e0bd3minfrin as before), and O=A|D for ordering ascending or descending.
56b7c92bac48127bda06d80bf94952258f7e0bd3minfrin [William Rowe]
41abbbf0cbaef202fe1ba2dd671ea48990d6e012minfrin *) Fixed an error in mod_include's directive parsing routines which
41abbbf0cbaef202fe1ba2dd671ea48990d6e012minfrin caused #if, #elif, and #else expressions containing backslashes
41abbbf0cbaef202fe1ba2dd671ea48990d6e012minfrin to be improperly evaluated. [Cliff Woolley]
6aa239b3d12f531ad9e305b1a81ad5fd671a3493minfrin *) Introduced new mod_autoindex IndexOptions flags: SuppressIcon to
6aa239b3d12f531ad9e305b1a81ad5fd671a3493minfrin drop the icon column, SuppressRules to drop the <hr> elements,
6aa239b3d12f531ad9e305b1a81ad5fd671a3493minfrin and HTMLTable to create rudimentary HTML table listings (implies
6aa239b3d12f531ad9e305b1a81ad5fd671a3493minfrin FancyIndexing). [William Rowe]
d05e6175473332a8433e4ac85edda0d5a33c94b5minfrin *) Re-introduced the mod_autoindex IndexOptions flag TrackModified
d05e6175473332a8433e4ac85edda0d5a33c94b5minfrin from Apache 1.3.15. This is needed for two reasons, first, given
d05e6175473332a8433e4ac85edda0d5a33c94b5minfrin multiple machines within a server farm, ETags and Last-Modified
13d29a334cfa69f2995b70a48aeacacc1ac7125frpluem stamps won't correspond from machine to machine, and second, many
13d29a334cfa69f2995b70a48aeacacc1ac7125frpluem Unixes don't capture changes to the date or time stamp of existing
6951fc02abfd7642e45333902c14855836717fadrpluem files, since these don't modify the dirent itself. [William Rowe]
db455cbc662c98dbbf53175393c50086ff63370cchrisd *) Re-introduced the mod_autoindex IndexOptions flag FoldersFirst
db455cbc662c98dbbf53175393c50086ff63370cchrisd and DirectoryWidth options from Apache 1.3.10.
db455cbc662c98dbbf53175393c50086ff63370cchrisd [William Rowe, Ken Coar]
2e242dca7111f99d54dd144b7b8418d88d560032chrisd *) Eliminated FancyIndexing directive, deprecated early in Apache
7cb45b833e465d46f6b61de983cc68112587d04bchrisd 1.3 by the IndexOptions FancyIndexing syntax. [William Rowe]
b6b1df87b7ce62620d48526a7ab630897cdaad90chrisd *) mod_autoindex now excludes any file names that would result in
b6b1df87b7ce62620d48526a7ab630897cdaad90chrisd an error, other than a success or redirect. Also optimized
b6b1df87b7ce62620d48526a7ab630897cdaad90chrisd the parent directory, always included except in the URI '/'.
b6b1df87b7ce62620d48526a7ab630897cdaad90chrisd [William Rowe]
4cf58054a85830c67dc23890ee613f62e1f7bdc8minfrin *) Refactored mod_negotiation and mod_mime to help mod_dir accept
4cf58054a85830c67dc23890ee613f62e1f7bdc8minfrin negotiated index pages, and prevent the server from defaulting
4cf58054a85830c67dc23890ee613f62e1f7bdc8minfrin to an autoindex of the directory. mod_negotiation will now die
4cf58054a85830c67dc23890ee613f62e1f7bdc8minfrin with a 500 Internal Error if it could match some filenames
4cf58054a85830c67dc23890ee613f62e1f7bdc8minfrin (e.g. for mod_dir) but none can be served. mod_negotation now
4cf58054a85830c67dc23890ee613f62e1f7bdc8minfrin refuses to serve any file with an extention that mod_mime doesn't
caaa32f2d2e3b28063c745c2632d3979da7f8326minfrin recognize, and wasn't part of the request. [William Rowe]
caaa32f2d2e3b28063c745c2632d3979da7f8326minfrin *) Eliminate mod_cgi's handling of .exe files without the .exe file
caaa32f2d2e3b28063c745c2632d3979da7f8326minfrin extension. This is already handled by multiviews, if the admin
66a8e1cc29cc4612cd938bc8fcabc0ef569e5769rpluem wishes to AddHandler .exe or define a content type handler and
caaa32f2d2e3b28063c745c2632d3979da7f8326minfrin associate .exe files with that content type. Multiviews must be
e02cb8f5090d904c054633ff33dfd1111e16e404minfrin enabled to allow these to be served. [William Rowe]
e02cb8f5090d904c054633ff33dfd1111e16e404minfrin *) Speed up the server's response to a spike in incoming workload
66a8e1cc29cc4612cd938bc8fcabc0ef569e5769rpluem or restarts by assigning empty scoreboard slots to new processes
e02cb8f5090d904c054633ff33dfd1111e16e404minfrin when they are available. [Greg Ames]
2ac474e42b9281e247e7082e30c50c5bef1f2cc3rjung *) Add a handler to mod_includes.c. This handler is designed to
213e520edc00641400771fc8f90b37a967a2d9ebdirkx implement the XbitHack directive. This can't be done with a
213e520edc00641400771fc8f90b37a967a2d9ebdirkx fixup, because we need to check the content-type, which is
213e520edc00641400771fc8f90b37a967a2d9ebdirkx only available in the handler phase. [Ryan Bloom]
a449830d5caa5b9900fe64cc383658b3641f9810dirkx *) Make the includes filter check return codes from filters lower in
a449830d5caa5b9900fe64cc383658b3641f9810dirkx the filter chain. If a lower level filter returns an error, then
a449830d5caa5b9900fe64cc383658b3641f9810dirkx the request needs to stop immediately. This allows mod_include to
a449830d5caa5b9900fe64cc383658b3641f9810dirkx stop parsing data once a lower filter recognizes an error.
a449830d5caa5b9900fe64cc383658b3641f9810dirkx [Ryan Bloom]
a449830d5caa5b9900fe64cc383658b3641f9810dirkx *) Add the ability to extend the methods that Apache understands
82632a19f2f9c346fee2b28a65920ba9737b3973minfrin and have those methods <limit>able in the httpd.conf. It uses
82632a19f2f9c346fee2b28a65920ba9737b3973minfrin the same bit mask/shifted offset as the original HTTP methods
82632a19f2f9c346fee2b28a65920ba9737b3973minfrin such as M_GET or M_POST, but expands the total bits from an int to
82632a19f2f9c346fee2b28a65920ba9737b3973minfrin an ap_int64_t to handle more bits for new request methods than
82632a19f2f9c346fee2b28a65920ba9737b3973minfrin an int provides. [Cody Sherr <csherr@covalent.net>]
0481ff0599c9e3c0c7ad5c1930939dcdac908582chrisd *) Fix broken mod_mime behavior in merging its arguments. Possible
0481ff0599c9e3c0c7ad5c1930939dcdac908582chrisd cause of unexplicable crashes introduced in 2.0.20. [William Rowe]
835d676191444a46d695171e8760d55a66c60fecminfrin *) Solve many mod_ssl porting issues (too many to detail) with
835d676191444a46d695171e8760d55a66c60fecminfrin help from the whole team, but most notably [Ralf S. Engelschall,
835d676191444a46d695171e8760d55a66c60fecminfrin Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>,
723f9f463f1922eaef3d24d00cb289e10daa73ffminfrin Doug MacEachern, William Rowe, Cliff Woolley]
723f9f463f1922eaef3d24d00cb289e10daa73ffminfrin *) More stall fixes for the threaded & worker mpm's.
723f9f463f1922eaef3d24d00cb289e10daa73ffminfrin Make mod_status output more accurate. Don't
c2213b3a46a2666e2e7606ceec509cc4978f187fminfrin count workers in processes which aren't actively
c2213b3a46a2666e2e7606ceec509cc4978f187fminfrin serving requests. [Greg Ames]
c2213b3a46a2666e2e7606ceec509cc4978f187fminfrin *) Win32: Get SSI exec cgi tag working. [Bill Stoddard]
d4562e99f620170ce0bedddc16887b900b34913bminfrin *) Add a single listener/multiple worker MPM. This MPM is
d4562e99f620170ce0bedddc16887b900b34913bminfrin definately not fully correct, but it allows us to solve many
fd279fe992f7171dc3f6d4d40d6db5bb74f2d96eminfrin of the problems that exist in the threaded MPM. This is a
fd279fe992f7171dc3f6d4d40d6db5bb74f2d96eminfrin modified version of the threaded MPM. [Ryan Bloom]
fd279fe992f7171dc3f6d4d40d6db5bb74f2d96eminfrin *) Improve content generation throughout Apache, providing closer
fed63d1b62cc7e56aad77b70ee5b5cc7f5c6aademinfrin compliance with HTML 3.2, HTML 4.01 Transitional and XHTML 1.0
fed63d1b62cc7e56aad77b70ee5b5cc7f5c6aademinfrin Transitional specifications. [William Rowe]
fed63d1b62cc7e56aad77b70ee5b5cc7f5c6aademinfrinChanges with Apache 2.0.22
abe0d0e38b9705f21a13ac8748bce1e3ed35e488minfrin *) Fix a problem where the threaded MPM stalls after restarts or
abe0d0e38b9705f21a13ac8748bce1e3ed35e488minfrin segfaults. Also prevent multiple active processes from using
abe0d0e38b9705f21a13ac8748bce1e3ed35e488minfrin the same scoreboard slot. [Greg Ames]
abe0d0e38b9705f21a13ac8748bce1e3ed35e488minfrin *) Apache/Win32 now fills in the service description with Apache's
fb8ee8b7a3a2503b95bf47685f9083e0b9834e6fminfrin server version string, including loaded and advertised modules.
fb8ee8b7a3a2503b95bf47685f9083e0b9834e6fminfrin [William Rowe]
fb8ee8b7a3a2503b95bf47685f9083e0b9834e6fminfrin *) Improved support for the Win32 build, to recover gracefully from
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd missing apr or apr-util directories or the awk interpreter,
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd create the proper cgi-bin examples, including a test-cgi.bat, and
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd fix the perl shebang line for printenv.pl, when installing from
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd the build environment. [William Rowe]
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd *) Fix a segfault in threaded.c caused by passing uninitialized
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd apr_thread_t * to apr_thread_join(). [Jeff Trawick]
78a20a6e7ad3a0229900ee54c7d11a65f647b663niq *) Use new APR number conversion functions to reduce CPU consumption
9582ad6e149d28b118d4e8571101ecb6f85e0191niq when setting the content length, and in mod_log_config.
9582ad6e149d28b118d4e8571101ecb6f85e0191niq [Brian Pane]
78a20a6e7ad3a0229900ee54c7d11a65f647b663niq *) Fix problem reported by Taketo Kabe <kabe@sra-tohoku.co.jp>
d56bacbfefa5aa883ce5162a115747372fc38d13chrisd where HEAD response headers were being repeated twice for
d56bacbfefa5aa883ce5162a115747372fc38d13chrisd files greater than 32K bytes (4*AP_MIN_BYTES_TO_WRITE). This
d56bacbfefa5aa883ce5162a115747372fc38d13chrisd problem in the http_header filter was exposed by the recent rewrite
d56bacbfefa5aa883ce5162a115747372fc38d13chrisd of the content_length filter. [Taketo Kabe, Bill Stoddard]
d64dd2fd4516c2b1b664c5e59c0628d9aff26984covener *) Fix seg faults in mod_status with ExtendedStatus enabled, after
d64dd2fd4516c2b1b664c5e59c0628d9aff26984covener restarts. A garbage pointer to a vhost's server_rec from the
d64dd2fd4516c2b1b664c5e59c0628d9aff26984covener previous generation was being left around under certain
ed0d39878e79220baaa50c15b79b1fdf877cb919niq conditions. [Greg Ames]
1e911973bcb9df6701a4c16c037771ecf25ade13niq *) Fix a cosmetic problem with mod_include. Non-existant SSI vars
1e911973bcb9df6701a4c16c037771ecf25ade13niq used to appear as '(none', without the closing paren.
1e911973bcb9df6701a4c16c037771ecf25ade13niq [G�nter Knauf <eflash@gmx.net>]
1e911973bcb9df6701a4c16c037771ecf25ade13niq *) Improve the exports generating awk script. In the past, we had
a45125b6474e878ba177025a0584b71cee9c8f32trawick work around problems in the awk script by avoiding some #if and
e47d58d5d983426584c8d16416c50f5c58070746dirkx #ifdefs. This has bitten us many times in generating the exports.c
e47d58d5d983426584c8d16416c50f5c58070746dirkx file. This improvement allows corrects the header file parsing.
e47d58d5d983426584c8d16416c50f5c58070746dirkx [Sander Striker <striker@apache.org>]
33aad3911b15cb5d523075f7df829274fe298a13dirkxChanges with Apache 2.0.21
33aad3911b15cb5d523075f7df829274fe298a13dirkx *) Resolve the Win32 htpasswd bug, where a file that existed would be
433dcb1fbaae82d36634f5120bff71a04296904ddirkx overwritten, regardless of the -c flag.
433dcb1fbaae82d36634f5120bff71a04296904ddirkx [William Rowe, Mladen Turk <mladen.turk@mail.inet.hr>]
433dcb1fbaae82d36634f5120bff71a04296904ddirkx *) Introduce connection sub-pools into ab. Truncating the lifetime
433dcb1fbaae82d36634f5120bff71a04296904ddirkx of these allocations means that ab no longer perpetually grows
433dcb1fbaae82d36634f5120bff71a04296904ddirkx its working set, running out of memory on large request attempts.
d7fcc79b0bee660d71b0cccfe9bbc2765ee6420erederpj [William Rowe]
d7fcc79b0bee660d71b0cccfe9bbc2765ee6420erederpj *) Make scoreboard creation a hook. This allows management
d7fcc79b0bee660d71b0cccfe9bbc2765ee6420erederpj modules to have access to the scoreboard at the time that it is
d7fcc79b0bee660d71b0cccfe9bbc2765ee6420erederpj created, and at every restart request.
d7fcc79b0bee660d71b0cccfe9bbc2765ee6420erederpj [Cody Sherr <csherr@covalent.net>]
65cb7f00eca6689c8a89dc809359991ade1285bcwrowe *) Changed AP_MPMQ_MAX_DAEMONS to refer to MaxClients and
65cb7f00eca6689c8a89dc809359991ade1285bcwrowe added an AP_MPMQ_MAX_DAEMON_USED to refer to the highest
65cb7f00eca6689c8a89dc809359991ade1285bcwrowe daemon index actually used in the scoreboard. I also
65cb7f00eca6689c8a89dc809359991ade1285bcwrowe updated the pertinent calls. [Paul J. Reder]
39c7699ec0799d394d3f67145d4a12ed82f587b8jorton *) Win32: Prevent listening sockets from being inherited by
39c7699ec0799d394d3f67145d4a12ed82f587b8jorton the Apache child process, CGI scripts, rotatelog process
c6d33447e28403a90ad817dba4df75fae785be28pquerna etc. If the Apache child process segfaults, any processes
c6d33447e28403a90ad817dba4df75fae785be28pquerna that the child started are not reaped. Prior to this fix,
439ccf2a084e1da566548931c585cbcc3a9e7f4cminfrin these processes inherited the listening sockets which sometimes
439ccf2a084e1da566548931c585cbcc3a9e7f4cminfrin prevented the restarted Apache child process from accepting
439ccf2a084e1da566548931c585cbcc3a9e7f4cminfrin connections (ie, the server would hang).
439ccf2a084e1da566548931c585cbcc3a9e7f4cminfrin [Bill Stoddard]
439ccf2a084e1da566548931c585cbcc3a9e7f4cminfrin *) Provide vhost and request strings when ExtendedStatus is on.
4ede070ca63bd4c48045e35a7192582769770290jorton [Greg Ames]
795c9499a77c25695bcb9710ed67bbe51492e181rpluem *) Fix some issues with the pod and prefork: check the pod *after*
795c9499a77c25695bcb9710ed67bbe51492e181rpluem processing a connection so that a server processing a time-
795c9499a77c25695bcb9710ed67bbe51492e181rpluem consuming request bails out as soon as practical; when the
a72ba68ecbbc61e4b513e50d6000245c33f753dcwrowe parent process wakes up a server process via connect(), use an
a72ba68ecbbc61e4b513e50d6000245c33f753dcwrowe APR timeout on the connect() so that we don't hang for a long
7a079e0cd696baca90ac43e325f64582e2945c68wrowe time if there aren't server processes around to do accept().
a72ba68ecbbc61e4b513e50d6000245c33f753dcwrowe [Jeff Trawick, Greg Ames]
62c53a0dab4c85bfc6a5ab9abfb1b269d9f7458dniq *) Performance improvement to mod_mime.c. find_ct() in mod_mime,
62c53a0dab4c85bfc6a5ab9abfb1b269d9f7458dniq spends a lot of time in apr_table_get calls. Using the default
ecc1538af1c08282fc2773d2eb3f1a54251862f9minfrin httpd.conf, the tables for languages and charsets are somewhat
ecc1538af1c08282fc2773d2eb3f1a54251862f9minfrin large, so the time spent scanning them on each request is
ecc1538af1c08282fc2773d2eb3f1a54251862f9minfrin significant. Replacing the tables with hash tables provides
ecc1538af1c08282fc2773d2eb3f1a54251862f9minfrin a nice speedup. [Brian Pane <bpane@pacbell.net>]
3f5585f7f4a7d74f2f94ec729ea8c1879d419e35rederpj *) Add two functions to allow modules to access random parts of the
3f5585f7f4a7d74f2f94ec729ea8c1879d419e35rederpj scoreboard. This allows modules compiled for one MPM to access the
3f5585f7f4a7d74f2f94ec729ea8c1879d419e35rederpj scoreboard, even if it the server was compiled for another MPM.
3f5585f7f4a7d74f2f94ec729ea8c1879d419e35rederpj [Harrie Hazewinkel <harrie@covalent.net>]
e4b96ba15dc8b2b27d251d53e29b86da32cd5066pquernaChanges with Apache 2.0.20
108ebbb87b2a46f4416ec507824471a483c39fe1sctemme *) Fix problem in content-length filter where the filter would
108ebbb87b2a46f4416ec507824471a483c39fe1sctemme buffer all the output from a CGI before sending any bytes
108ebbb87b2a46f4416ec507824471a483c39fe1sctemme down the filter stack to the network. This problem would cause
7abe34dd5a20fc8fde09dca9116b88e6ddfd55ddjorton significant memory consumption if the CGIs generated
7abe34dd5a20fc8fde09dca9116b88e6ddfd55ddjorton lots of bytes. [Bill Stoddard]
10d486b9267800c5e376c22f6c0d45dc2ae86f67chrisd *) Get non-blocking CGI pipe reads working with the bucket brigades.
10d486b9267800c5e376c22f6c0d45dc2ae86f67chrisd [Bill Stoddard]
10d486b9267800c5e376c22f6c0d45dc2ae86f67chrisd *) Fix seg fault on Windows when serving files cached with mod_file_cache.
3e155218733389e7b1ea3a9ffd0aea533fd929cechrisd [Bill Stoddard]
3e155218733389e7b1ea3a9ffd0aea533fd929cechrisd *) Fix a bug in the threaded MPM that would cause it to kill off all
3e155218733389e7b1ea3a9ffd0aea533fd929cechrisd workers immediately after starting if the number of workers started
ab43b4a17b2ac31ccb1cf280be8c42a8a314cecbjorton was above a certain threshold. [Ryan Bloom, Bill Stoddard]
ab43b4a17b2ac31ccb1cf280be8c42a8a314cecbjortonChanges with Apache 2.0.19
f3a5934ca0fb0f0f813bd9d9d06af8937e3f401fjim *) Fix problem with threaded MPM. The problem was that if each child
67139e2d50d1e11558d87f7042f61cb04bb0d1d2jim process was busy serving a single long-lived request and the server
67139e2d50d1e11558d87f7042f61cb04bb0d1d2jim was sent a graceful restart signal, the server would stop serving
67139e2d50d1e11558d87f7042f61cb04bb0d1d2jim requests. This would happen because each child process would wait to
a4ab95921be8ce5de50913cd6505d41b672eb375minfrin die until the last thread was done, and the parent wouldn't spawn any
a4ab95921be8ce5de50913cd6505d41b672eb375minfrin new children until a process died. Now, the parent looks at the fact
a4ab95921be8ce5de50913cd6505d41b672eb375minfrin that the children are dying gracefully, and starts new children.
a4ab95921be8ce5de50913cd6505d41b672eb375minfrin Those new children only start enough threads to compliment the number
e605dd6afa940f799c873ffeaa5e25fa4ea9a2c8minfrin of threads in the other child process that shares the same spot in
e605dd6afa940f799c873ffeaa5e25fa4ea9a2c8minfrin the scoreboard. In this way, we make sure to never go over
e605dd6afa940f799c873ffeaa5e25fa4ea9a2c8minfrin MaxClients. [Ryan Bloom]
e605dd6afa940f799c873ffeaa5e25fa4ea9a2c8minfrin *) modified mod_negotiation and mod_autoindex to speed up by almost a
50c06405bc48121db2913925549407fd3e79bcedmturk factor of two on apr_dir_read()-enhanced platforms, such as Win32
50c06405bc48121db2913925549407fd3e79bcedmturk and OS2, by calling ap_sub_request_lookup_dirent() with the results
dec02391360e503cd3437d16bed765dc653b9de5minfrin already provided by apr_dir_read(). [William Rowe]
dec02391360e503cd3437d16bed765dc653b9de5minfrin *) mod_file_cache is now more robust to filtering and serves requests
dec02391360e503cd3437d16bed765dc653b9de5minfrin slightly more efficiently. [Cliff Woolley]
1b27a3a26f18191db7ecb4d536cb121ba9520a8eniq *) Fix problem handling FLUSH bucket in the chunked encoding filter.
1b27a3a26f18191db7ecb4d536cb121ba9520a8eniq Module was calling ap_rwrite() followed by ap_rflush() but the
686ce4eade942e515b1725d0c9751da36b759a6ctrawick served content was not being displayed in the browser. Inspection
686ce4eade942e515b1725d0c9751da36b759a6ctrawick of the output stream revealed that the first data chunk was
686ce4eade942e515b1725d0c9751da36b759a6ctrawick missing the trailing CRLF required by the RFC. [Bill Stoddard]
4bd465052c4a0c8d41e573ee7a90c312d980355fchrisd *) apxs no longer generates ap_send_http_header() in the example handler
4bd465052c4a0c8d41e573ee7a90c312d980355fchrisd *) Fix an ab problem which could cause a divide-by-zero exception
4bd465052c4a0c8d41e573ee7a90c312d980355fchrisd with certain invocations (e.g., ab -k -c 6 -n 100 localhost/).
4bd465052c4a0c8d41e573ee7a90c312d980355fchrisd [Ian Holsman <ianh@cnet.com>]
4bd465052c4a0c8d41e573ee7a90c312d980355fchrisd *) Solve case-insensitive platforms' confusion about negotiated
8fd638698262130d00458b2c95548f6f94875847rpluem filenames, allowing files of differnt case to match in choosing
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem the document to serve. [William Rowe]
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem *) Fix brokenness when ThreadsPerChild is higher than the built-in
79d4b708d021714647aab8b138ae671ed24765cewrowe limit. We left ap_threads_per_child at the higher value which
79d4b708d021714647aab8b138ae671ed24765cewrowe led to segfaults when doing certain scoreboard operations.
79d4b708d021714647aab8b138ae671ed24765cewrowe [Jeff Trawick]
79d4b708d021714647aab8b138ae671ed24765cewrowe *) Fix seg faults and/or missing output from mod_include. The
88d0e50f16b21d4d0af0a48da7ad28fb5991834crpluem default_handler was using the subrequest pool for files and
88d0e50f16b21d4d0af0a48da7ad28fb5991834crpluem MMAPs, even though the associated APR structures typically
88d0e50f16b21d4d0af0a48da7ad28fb5991834crpluem live longer than the subrequest. [Greg Ames]
48fa058fe468025347930610ac2473094fa0f4e4chrisd *) Extend mod_setenvif to support specifying regular expressions
48fa058fe468025347930610ac2473094fa0f4e4chrisd on the SetEnvIf (and SetEnvIfNoCase) directive attribute field.
48fa058fe468025347930610ac2473094fa0f4e4chrisd Example: SetEnvIf ^TS* [a-z].* HAVE_TS
3ec4328f079d8867cc323155e59678ad9437914frooneg will cause HAVE_TS to be set if any of the request headers begins
3ec4328f079d8867cc323155e59678ad9437914frooneg with "TS" and has a value that begins with any character in the
3ec4328f079d8867cc323155e59678ad9437914frooneg set [a-z]. [Bill Stoddard]
de0d0b50c96fae59c28e09fed61b0d15cfa4147bchrisd *) httpd children now re-bind themselves to a random CPU on
de0d0b50c96fae59c28e09fed61b0d15cfa4147bchrisd multiprocessor systems on AIX via bindprocessor() in 2.0.
de0d0b50c96fae59c28e09fed61b0d15cfa4147bchrisd [Victor J. Orlikowski]
de0d0b50c96fae59c28e09fed61b0d15cfa4147bchrisd *) Fix htdigest. It would go into a loop in getline when adding
de0d0b50c96fae59c28e09fed61b0d15cfa4147bchrisd a second user. [Bill Stoddard]
db78659055df54243bca678c35bd2ce7e31a9237rooneg *) Win32 platforms now fully support mod_userdir options. [Will Rowe]
db78659055df54243bca678c35bd2ce7e31a9237rooneg *) Automatically generate httpd.exp for AIX.
95817edd05387a5276f51fcd5db79fc21b89b55brooneg DSOs now work again on AIX in 2.0
95817edd05387a5276f51fcd5db79fc21b89b55brooneg [Victor J. Orlikowski]
63689d77e084e36b8194fb6df5adfc0344965e01trawick *) Add a new request hook, error_log. This phase allows modules
63689d77e084e36b8194fb6df5adfc0344965e01trawick to act on the error log string _after_ it has been written
63689d77e084e36b8194fb6df5adfc0344965e01trawick to the error log. The goal for this hook is to allow monitoring
63689d77e084e36b8194fb6df5adfc0344965e01trawick modules to send the error string to the monitoring agent.
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes [Ryan Bloom]
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes *) Modify mod_echo to make it use filters for input and output.
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes [Ryan Morgan <rmorgan@covalent.net>]
8b67b9d3ce40755d1b58971198a02b2749d8e13dbnicholes *) Extend mod_headers to support conditional driven Header
8b67b9d3ce40755d1b58971198a02b2749d8e13dbnicholes add, append and set. Use SetEnvIf to set an envar and conditionally
8b67b9d3ce40755d1b58971198a02b2749d8e13dbnicholes add/append/set headers based on this envar thusly:
a1a615ca49b162d71d88089210395c9a9cfeb539rpluem SetEnvIf TSMyHeader value HAVE_TSMyHeader
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes Header add MyHeader "%t %D" env=HAVE_TSMyHeader
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes If the request contains header "TSMyHeader: value" then header
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes MyHeader: "t=xxxxxxxxxx D=yyyy" will be sent on the response.
a1a615ca49b162d71d88089210395c9a9cfeb539rpluem [Bill Stoddard]
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes *) Extend mod_headers to support using format specifiers on Header
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes add, append and set header values. Two format specifiers are supported:
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes %t - reports, in UTC microseconds since the epoch, when the
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes request was received.
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes %D - reports the time, in microseconds, between when the request was
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes received and the response sent.
69c36bbae91de0e99a682aaae9d6fa61fceb2771bnicholes Header add MyHeader "This request served in %D microseconds. %t"
a1a615ca49b162d71d88089210395c9a9cfeb539rpluem results in a header being added to the response that looks like this:
1b0dce86d7fc8a5aa4c89b05255be26e508c615crpluem MyHeader: This request served in D=5438 microseconds. t=991424704447256
1b0dce86d7fc8a5aa4c89b05255be26e508c615crpluem [Bill Stoddard]
edc5389f50ce4153e6192740f3c7a188c8cf8d67niq *) Fix reset_filter(). We need to be careful how we remove filters.
6c05afd314b4ddd545d63b4ff5de822cc30eec79trawick If we set r->output_filters to NULL, we also have to reset the
6c05afd314b4ddd545d63b4ff5de822cc30eec79trawick connection's filters. [John Sterling]
13cd67e9c1dacbd6b9f040bda337c725cedd98f3brianp *) Optimise reset_filter() in http_protocol.c. [Greg Stein]
a623efbff95aab78da9e030524b0fa69b054f6d0brianp *) Add a check to ap_die() to make sure the filter stack is sane and
a623efbff95aab78da9e030524b0fa69b054f6d0brianp contains the correct basic filters when an error occurs. This fixes
a623efbff95aab78da9e030524b0fa69b054f6d0brianp a problem where headers are not being sent on error. [John Sterling]
a623efbff95aab78da9e030524b0fa69b054f6d0brianp *) New Header directive 'echo' option. "Header echo regex" will
a623efbff95aab78da9e030524b0fa69b054f6d0brianp cause any headers received on the request that match regex to be
0b4b04d8621478ba59f0a6ba2950ddc02ab92b58colm echoed to (included in) the response headers.
0b4b04d8621478ba59f0a6ba2950ddc02ab92b58colm [Bill Stoddard]
2f1bb5376c5c4022383bb729679ca751dd75a2eabrianp *) include/ap_compat.h tested and set APR_COMPAT_H instead of AP_COMPAT_H.
2f1bb5376c5c4022383bb729679ca751dd75a2eabrianp This prevented the inclusion of apr_compat.h. PR #7773
ad862ab5716726a2d72a292ba1dfb29566c86153brianp [Oleg Broytmann <phd@phd.pp.ru>]
ad862ab5716726a2d72a292ba1dfb29566c86153brianp *) Moved util_uri to the apr-util library. This required a bunch of
17d53ea32c4968e47733f1c2c063ae07d280efd6jerenkrantz apr_name changes for the uri utility functions. [Justin Erenkrantz]
17d53ea32c4968e47733f1c2c063ae07d280efd6jerenkrantz *) Move the addition of default AP_HTTP_HTTP_HEADER filters to the
2d5532b13110a8d85653da92e97795b09cc25cc2trawick insert_filter phase so that other filters are not bypassed by default.
b38565306421ff53e9f7499bc728d6df5cec294dpquerna [Graham Leggett]
b38565306421ff53e9f7499bc728d6df5cec294dpquerna *) Reimplement mod_headers as an output filter. mod_headers can now
b38565306421ff53e9f7499bc728d6df5cec294dpquerna add custom headers to inbound requests using the RequestHeader directive
89cc93f847a5510482d72d21fc38e9edb8e04057rjung and to responses using the same old Header directive. [Graham Leggett]
cfa64348224b66dd1c9979b809406c4d15b1c137fieldingChanges with Apache 2.0.18
cfa64348224b66dd1c9979b809406c4d15b1c137fielding *) Fix command-line processing so that if a bad argument is specified
74499a117b3b2cd9666715a14f90c0e5d1a4ee8ajim Apache will exit. [Jeff Trawick]
74499a117b3b2cd9666715a14f90c0e5d1a4ee8ajim *) Change the make targets and rules to be consistent in all of the
cfa64348224b66dd1c9979b809406c4d15b1c137fielding Apache-owned source trees. [Roy Fielding]
cfa64348224b66dd1c9979b809406c4d15b1c137fielding *) Fix processing of the TRACE method. Previously we passed bogus
been part of Apache on Unix/Linux/BSD since the early v1.3 releases.
and moving hints.m4 inline. [Roy Fielding]
*) Get mod_tls to compile/work better on Windows. PR #7612
*) Fix shutdown/restart hangs in the threaded MPM.
--with-module=module_type:/path/to/module.c
The configure script will copy the module.c file to
modules/module_type, and it will be added to the relevant Makefiles.
*) Change the default installation directory to /usr/local/apache2,
as now defined by the "Apache" layout in config.layout. [Marc Slemko]
*) Make generic hooks to work, with mod_generic_hook_import/export
us use a consistent location for the config.layout file, and it
csv/gnuplot format, rudimentary ssl support and various other tweaks
apache. Often by a order of magnitude :-) See talk/paper of Sander
libtool muck that is now under srclib/apr/build. [Roy Fielding]
*) Fix bug in the Unix threaded.c MPM that allowed child processes
listening sockets were used, allow/deny-from-IPv4-address rules
*) Reimplement the Windows MPM (mpm_winnt.c) to eliminate calling
*) Fix a seg fault in mod_userdir.c. We used to use the pw structure
added feature of allowing a uid/gid per child process. If no
uid/gid is specified, then Perchild behaves exactly like dexter.
*) Add a very early prototype of SSL support (in mod_tls.c). It is
vital that you read modules/tls/README before attempting to build
*) Correct a typo in httpd.conf.
*) Adopt apr user/group name features for mod_rewrite. Eliminates some
'extra' stat's for user/group since they should never occur, and now
Win32/OS2 exceptions without hiccuping. [William Rowe]
*) Modify the apr_stat/lstat/getfileinfo calls within apache to use
*) Move initgroupgs, ap_uname2id and ap_gname2id from util.c to
mpm_common.c. These functions are only valid on some platforms,
*) Update highperformance.conf to work with either prefork or
i.e. syntax like %{LA-U:REMOTE_USER}, and also fix the parsing of
hints.m4) of various compilation flags (eg: CFLAGS). Also,
*) Allow the buildconf process to find the config.m4 files in the correct
such as apache_2.0a9.tar.gz on FreeBSD again. [Ryan Bloom]
server root from the Apache.exe path.
loadable modules, dynamic libs are all named libfoo.dll, and the
makefile.win populates the include, lib and libexec directories.
numeric address strings (e.g., "Listen [fe80::1]:8080").
*) Get the functions in server/linked into the server, regardless of
be loadable into the server. Our new build/install mechanism expects
to build + install on Win32. Makefile.win now rewrites @@ServerRoot@
and installs the conf, htdocs and htdocs/manual directories.
time, and that list is then used to generate the exports.c file.
*) Added lib/aputil/ as a placeholder for utility functions which are not
rotatelogs.c code, and no longer churn log processes for this
hostname resolution/address string parsing and building
*) Mod_info.c has now been ported to Apache 2.0. As a part of this
*) APR read/write functions and bucket read functions now operate
code in mod_log_config.c
*) In the Apache/Win32 console window, accept Ctrl+C to stop the
since we don't compute digests of filtered (e.g., translated)
*) Update the mime.types file to the registered media types as
*) Namespace protect some macros declared in ap_config.h
*) Add support for /, //, //servername and //server/sharename
*) Fix another bug in the send_the_file() read/write loop. A partial
*) Reimplement core_output_filter to buffer/save bucket brigades
*) send_the_file now falls back to a read/write loop on platforms that
*) APR now has UUID generation/formatting/parsing support.
-add rules for cross-compiling in rules.mk. Okay, rule to check for
-add missing "AR=@AR@" to severaly Makefile.in's
*) Fix building on BSD/OS using its native make. The build system
hook in http_core.c. This removes the need to add the filter in
update allows the user to clear or preserve pw/groups/comment.
<IfModule mod_kilroy.c>
<IfModule mod_lovejoy.c>
*) Fix some compile warnings in mod_mmap_static.c
*) APRVARS.in no longer overwrites the EXTRA_LIBS variable.
*) Fix compile break on some platforms for mod_mime_magic.c
platforms to hints.m4, which contains (or should contain)
*) Add tables with non-string/binary values to APR.
configuration file started with an IfModule/IfDefine container,
not terminated with cr/lf sequences in Win32. [William Rowe]
*) Move all strings functions in APR to src/lib/apr/strings and create
apr_strings.h for the prototypes. [Ryan Bloom]
*) Clean out obsolete names (from httpd.h) for the HTTP Status Codes
*) Update the lib/expat-lite/ library (bring forward changes from
configure.in. [Dave Hill <ddhill@zk3.dec.com>]
timeouts (i.e, if a timeout was specified, the pipe reverted to
3x the rate of Apache 1.3.(e.g, Apache 1.3 will serve 400 rps
compiled-in limits (e.g., ThreadsPerChild, MaxClients, StartTreads).
and a user makes a request like http://www.example.com//cgi-bin/cgi
*) Yet another update to saferead/halfduplex stuff -- need to ensure
to the configured User/Group (like other httpd processes)
if the len was negative. Use <sys/un.h> for struct sockaddr_un
doesn't seem to have a problem but /bin/sh on Solaris does.
ContentDigest enabled and we can't/don't mmap the file.
related bugs, and changed shmem/locking to use apr API. Shared-mem
would be errors generating ap_config_auto.h later in the configure
*) Organize http_main.c as independent code, such that no code or
in 1.3's ebcdic.c. [Jeff Trawick]
buffer if the implementation knows how to use it (i.e., if L_tmpnam
*) Configure creates config.nice now containing your configure
options. Syntax: ./config.nice [--more-options]
*) Fix mm's memcpy/memset macros, pointer arithmetic was broken.
*) The ab program in the src/support directory is now portable using
*) Finished move of ap_md5 routines to apr_md5. Removed ap_md5.h.
Apache.dsw created to bring together all the pieces. Create new file
os/win32/BaseAddr.ref to define module base addresses (to prevent
*) More FAQs and answers from comp.infosystems.www.servers.unix.
fix up from Apache 1.3. #include'ing "ap_mpm.h" fixes up an
we can use ReadFileScatter and WriteFileGather in readwrite.c.
fixes to mod_so.c.
Makefile.win includes the same user interface as the old
*) Put in Korean and Norwegian index.html pages (2.0 and 1.3)
config file. E.g. 'ServerAdmin ${POSTMASTER}'. As commited
it does this on a line by line basis; i.e. if the envvar
ErrorDocument XXX /local/uri
ErrorDocument XXX http://valid/url
*) Changed 'CacheNegotiatedDocs' from its present/not-present
done with --with-module=/path/to/module. Modules can only be added
*) Enable Apache to use sendfile/TransmitFile API
*) Make file I/O and network I/O writev/sendv APIs consistent.
bytes_read/bytes_written is always valid (never -1). Plus
some fixes to buff.c to correct problems introduced by the
*) buff.c has been converted to no longer use errno.
automatically for developers from src/Configure.
*) Fixed building of src/support/htpasswd.c
*) Moved mod_auth_digest.c from experimental to standard. [Roy Fielding]
*) Support line-continuation feature in config.option file and
*) Implement WINNT Win32 MPM from original Win32 code in http_main.c
(per default used the config.option file).
calling order to be specified on a per-hook/per-module basis.
*) os/unix/unixd.[ch]: detach, setuid, setgid, stuff which will be common
*) mpm_prefork: throw away all the alarm/timeout crud; and clean up the
of alloc.c for now. [Dean Gaudet]
based on IP/port. [Ben Laurie]
*) I/O layering and BUFF revamp. See docs/buff.txt. [Dean Gaudet]
docs/initial_blurb.txt. [Dean Gaudet]
an absolute path to the ./libexec directory where the libhttp.ep file
routines are now called ap_base64* and are 'plain' (i.e., no
pool access or anything clever). Inside util.c the routines acting
*) Fixed assumption of absolute paths in binbuild.sh. [Tony Finch]
src/support/httpd.exp. [Bill Stoddard, Randy Terbush]
*) Make ap_sha1.c compile for EBCDIC platforms: replace remaining LONG
*) PORT: Improved compilation and DSO support on Sequent DYNIX/ptx.
*) Local struct mmap in http_core.c conflicted with system structure
*) Added updated mod_digest as modules/experimental/mod_auth_digest.
*) CIDR addresses such as a.b.c.d/24 where d != 0 weren't handled
*) RewriteLock/RewriteMap didn't work properly with virtual hosts.
*) PORT: Support for compaq/tandem/com.
Netscape servers. See support/SHA1 for more information.
Caused the separation of ap_md5.c into md5, sha1 and a general
ap_checkpass.c with just a validate_passwd routine. Added a
couple of flags to support/htpasswd. Some reuse of the to64()
with ASCII/EBCDIC conversions in "ident" query.
are combined, and duplicate tokens (e.g., "Vary: host, host" or
install the DSO; useful for editing httpd.conf with apxs. Fix
create duplicate LoadModule/AddModule entries; apxs can now be
used to re- enable/disable a module. [Wilfredo Sanchez]
Win 95 users may need to update their TCP/IP stack to pick up
Winsock 2. (See http://www.microsoft.com/windows95/downloads/)
error.log when CGI scripts fail. This makes Apache on Win32
*) Fix `make r' test procedure in src/regex/: ap_isprint was not found.
*) Add DSO support for DGUX 4.x using gcc. Tested on x86 platforms.
*) Add the new mass-vhost module (mod_vhost_alias.c) developed and
parent/child process management code.
*) Fix ndbm.h include problems with brain-dead glibc >= 2.1 which
has ndbm.h in a non-standard db1/ subdir. PR#4431, PR#4528
*) Determine AP_BYTE_ORDER for ap_config_auto.h and already
content-types are "text/html;parameters". PR#4524 [Ken Coar]
*void. When the OS/platform/compiler supports quads, ap_snprintf()
*) Add RULE_EXPAT, the src/lib/ directory structure, and a modified copy
(e.g., HTTP/0.9 or HTTP/1.1) of the request. [Ken Coar]
*) Switch to /bin/sh5 in APACI on Ultrix and friends to avoid problems with
their brain-dead /bin/sh. [Ralf S. Engelschall] PR#4372
*) mod_include's fsize/flastmod should allow only relative paths, just
*) Add iconsdir, htdocsdir, and cgidir to config.layout.
*) Fix minor but annoying bug with the test for Configuration.tmpl
in unix/os.c, and don't install the dyld error handlers, which
*) Add functionality to the install-bindist.sh script created by
binbuild.sh to use tar when copying distribution files to the
install-bindist.sh now detects the local perl5 path to install
src/modules/proxy_util.c where a NULL filepointer and
have assurance about how string manipulators (e.g., tr) will
*) Add "opt" (SysV-style) layout to config.layout. [Raymond S Brand
*) Fix number of bytes copied by read_connection() in src/support/ab.c
*) Make sure RewriteLock can be used only in the global context, (i.e.
uncompress/gzip, but those tools sometimes do not produce
*) PORT: deal with UTS compiler error in http_protocol.c
binary (e.g., image file) in the first place.
*) support/htpasswd now permits the password to be specified on the
apache -n apache1 -i -f c:/httpd.conf
Installs apache as service 'apache1' and associates c:/httpd.conf
Installs apache as service 'apache2'. httpd.conf is located under
the default server root (/apache/conf/httpd.conf).
apache -n apache3 -i -d c:/program files/apache
c:/program files/apache.
*) Correct the signed/unsigned character handling for the MD5 routines;
*) OS/2: Rework CGI handling to use spawn*() instead of fork/exec, achieving
*) proxy ftp: instead of using the hardwired string "text/plain" as
<Directory proxy:ftp://some.host>
DefaultType gargle/blurb
*) Be more smart in APACI's configure script when determining the UID/GID
the number of fork()s from one/request to just the odd one an hour.
*) Added proxy, auth and header support to src/support/ab.c. Added a
README file to src/support/
*) Fix sed-substitutions in `make install': path elements like `httpd/conf'
(for instance from an APACI configure --sysconfdir=/etc/httpd/conf
*) PORT: Add support for FreeBSD 4.x [Ralf S. Engelschall]
the reboot prompt (which is only given if MSVCRT.DLL system
*) WIN32: Apache.exe now contains an icon. [Paul Sutton]
*) Using APACI, the main config file (usually httpd.conf) was
*) Move the directive `ExtendedStatus' in httpd.conf-dist-win _after_ the
DSO/DLL section because it's a directive from mod_status and isn't
against libap.a and use its ap_snprintf() instead of sprintf() to avoid
*) Add Apple's Mac OS X Server Layout "Rhapsody" to config.layout.
*) Add cgidir, htdocsdir, iconsdir variables to Makefile.tmpl in order
*) Use proper pid_t type for saving PIDs in alloc.c. [John Bley]
in http_core.c. [John Bley, Roy Fielding]
*) src/support/: The ApacheBench benchmark program was overhauled by
*) Added -S option to install.sh so that options can be passed to
is *not* given in the argument list; i.e., the logical negation
*) Win32: Add global symbols missing from ApacheCore.def. [Carl Olsen]
to util.c for parsing an HTTP header field value to extract the next
code different from 500. This allows the proxy to, e.g., return
as "com.name" to be served. [Paul Sutton] PR#3769.
make subtasking easier on the OSD/POSIX mainframe environment.
ap_compat.h. [David White <david@persimmon.com>] PR#3725
*) Make NDBM file suffix determination for mod_rewrite more accurate, i.e.
*) Let src/Configure be aware of CFLAGS options starting with plus
signs as it's the case for the HP/UX compiler.
and this makes its functions available to things in src/support.
*) WIN32: Created new makefiles Makefile_win32.txt (normal build)
and Makefile_win32_debug.txt (debug build) that work on Win95.
nmake /f Makefile_win32.txt # compiles normal build
nmake /f Makefile_win32.txt install # compiles and installs
nmake /f Makefile_win32.txt clean # removes compiled junk
nmake /f Makefile_win32_debug.txt # compiles debug build
nmake /f Makefile_win32_debug.txt install
nmake /f Makefile_win32_debug.txt clean
*) Small fix for mod_env.html: The module was documented as to be _not_
*) Instead of fixing a bug in the generation procedure for config.status (a
making sure the src/support/ tools are _forced_ to be build last (they
*) Fix installation procedure: Now that os-inline.c is actually used (a
recently fixed bug prevented this) we need to also install os-include.c
`escape' and `unescape' were added which can be used to escape/unescape
to/from hex-encodings in URLs parts (this is especially useful in
*) Major overhaul of mod_negotiation.c, part 2.
- added ap_array_pstrcat() to alloc.c for efficient concatenation
*) Major overhaul of mod_negotiation.c, part 1.
revision (draft-ietf-http-v11-spec-rev-06.txt).
e.g. no feature negotiation). Removed old experimental version.
negotiation results are consistent across backup/restores and mirrors
*) RFC2396 allows the syntax http://host:/path (with no port number)
*) When modules update/modify the file name in the configfile_t structure,
*) The hashbang emulation code in ap_execve.c would interpret
#!/hashbang/scripts correctly, but failed to fall back to a
o fixed auto-suffix handling now that config.layout exists.
config.layout and every path now can be marked this way (not only the
SINGLE_LISTEN_UNSERIALIZED_ACCEPT to NetBSD/OpenBSD section
of ap_config.h to allow serialized accept for multiport listens.
*) PORT: Fixed a misplaced #endif for NetBSD/OpenBSD section
of ap_config.h that would skip several defines if DEFAULT_GROUP
strcasecmp, so allow it in ap_config.h. [Amiel Lee Yee] PR#3247
*) Fix ordering of definitions in ap_config.h so that ap_inline is
*) Make generation of src/Configuration.apaci more robust: It failed to
another (e.g. cgi vs. fastcgi). We now check for mod_XXX, libXXX and even
*) In src/Configure remove the SERVER_SUBVERSION support (already deprecated
*) Allow special options -Wc,xxx and -Wl,xxx on APXS compile/link command.
IS to the compiler/linker command. [Ralf S. Engelschall]
config.layout. Custom layouts are possible by using FILE:ID as the
The config.layout file consists of <Layout ID>..</Layout> sections
extension (e.g., .fr, .de) can be labelled as being some other
*) mod_include.c:handle_perl() now properly tests for OPT_INCNOEXEC
*) Updated mime.types to reflect current Internet media types
Improved mod_actions.c so that it can use any of the methods
defined in httpd.h. Added ap_method_number_of(method) for
*) Fix problems with handling of UNC names (e.g., \\host\path)
*) Move a typedef to fix compile problems on Linux with 1.x kernels.
*) http_config.c would respond with 501 (Method Not Implemented) if a
should have been a 500 response. Likewise, mod_proxy.c would responsd
on-the-fly/batch permute the order of two modules (mod_foo and mod_bar)
mod_foo with the begin of the module list, i.e. it `moves' the module to
which permutes mod_foo with the end of the module list, i.e. it `moves'
on container start lines (e.g., it wouldn't spot
*) Fix Berkeley-DB/2.x support in mod_auth_db: The data structures were not
httpd.conf-dist* files. The srm and access files now contain
only comments, and httpd.conf has all the combined contents in
*) PORT: DSO/ELF support for FreeBSD 3.0.
*) Fix http://localhost/ hints in top-level INSTALL document.
ap_config.h. [Brian Havard]
*) PORT: Add Pyramid DC/OSx support to configuration mechanism.
*) PORT: Fix sys/resource.h handling for Amdahl's UTS 2.1
*) Correct comment in mod_log_config.c about its internals.
handle the creation of modules.c [Jim Jagielski]
and to avoid problems under platforms where only version 2.x is present.
*) Remove redundant substitutions in top-level Makefile.tmpl.
platforms where `nogroup' exists in /etc/group. [Ralf S. Engelschall]
the possibility to override it manually via APACI or src/Configuration.
existance of the file under /usr/include, too.
*) Fix possible buffer overflow situation in suexec.c.
*) Fix documentation of ProxyPass/ProxyPassReverse according to the
in /home/user, not in /, therefore clicking on "../" in the
dump core for replies with invalid headers (e.g., duplicate
plop gmon.out profile data for each child [Doug MacEachern]
config.status script to be immune against arguments with whitespaces.
script `buildinfo.sh' which is both more flexible and already proofed to
*) Make ab.c again pass ``gcc -Wall -Wshadow -Wpointer-arith -Wcast-align
*) Remove bad reference to non-existing SERVER_VERSION in mod_rewrite.html
*) Bump up MAX_ENV_FLAGS in mod_rewrite.h from the too conservatice limit of
variables in one RewriteRule and had to patch mod_rewrite.h for every
*) Make sure the config.status file is not overridden when just
See include/ap_mmn.h for more details. [Randy Terbush]
*) Cleanup of the PrintPath/PrintPathOS2 helper functions. Avoid
following the same idea as "MSVC vs WIN32". Additionally the src/os/emx/
directory was renamed to src/os/os2/ for consistency.
linking the DSOs, i.e. PIC libs and shared libs. Currently the rule is
*) Add correct `model' MIME types from RFC2077 to mime.types file.
*) Fixed examples in mod_rewrite.html document.
*) Update the mod_rewrite.html document to correctly reflect the situation
Makefile.tmpl: The umask+cp approach didn't work as expected (especially
*) Fix `distclean' and `clean' targets in src/Makefile.tmpl to have same
src/helper/mkdir.sh script. [Ralf S. Engelschall]
`search' entries in /etc/resolv.conf.
INSTALL file because a lot of users don't read htdocs/manual/dso.html
[Knut A.Syed <Knut.Syed@nhh.no>] PR#2674
(compilers complained) and the .so.V.R.P filename extension was adjusted
*) Disable the incorrect entry for application/msword in the
*) Fix broken RANLIB handling in src/Configure (the entry from
src/Configuration.tmpl was ignored) and additionally force RANLIB to
*) Autogenerate some HAVE_XXXXX_H defines in conf_auto.h (determined via
TestCompile) instead of defining them manually in conf.h based on less
OS-type and/or OS-version identifiers to discover whether a system header
required by HTML 3.2 and later) to mod_mime_magic's conf/magic.
*) Add Dynamic Shared Object (DSO) support for SCO5 (OpenServer 5.0.x).
*) Fix the Guess-DSO-flags-from-Perl stuff in src/Configure: "perl" was
*) PORT: remove broken test for MAP_FILE in http_main.c.
*) PORT: Change support/apachectl to use "kill -0 $pid" to test if the
but case-insensitive platforms). New #define for this added to conf.h
*) Enable DSO support for OpenBSD in general, not only for 2.x, because it
also works for OpenBSD 1.x. [Ralf S. Engelschall]
of a config.status script (as GNU Autoconf does) which remembers the used
*) Correct initialization of variable `allowed_globals' in http_main.c
multipart/x-mixed-replace;boundary=ThisRandomString.
modules/xxx/Makefile's to avoid problems with SVR4 Make under "full-DSO"
<Directory /> section of the default access.conf-dist
*) Fix symbol export list (src/support/httpd.exp) after recent
solved by another helper script findprg.sh which searches for Perl and
*) Remove the system() call from htpasswd.c, which eliminates a system
dependancy. ["M.D.Parker" <mdpc@netcom.com>] PR#2332
*) PORT: helpers/GuessOS updates for various versions for NCR SVR4.
*) Fix recently introduced Win32 child spawning code in mod_rewrite.c which
configure and src/Configure depend on this.
*) Changes usage of perror/fprintf to stderr to more proper ap_log_error
*) PORT: QNX needed a #include <sys/mman.h>; and now it uses flock
spawn_child was obsoleted and moved to compat.h
*) Fix src/support/httpd.exp (DSO export file which is currently only
``RewriteRule ^myscript$ - [T=application/x-httpd-cgi]'' This was often
*) Fix discrepancy in proxy_ftp.c which was causing failures when
*) Support for the NCR MP/RAS 3.0
*) The LDFLAGS_SHLIB_EXPORT variable of src/Configuration[.tmpl] was
not retrieved in src/Configure and thus was not useable.
- SUBDIRS is now generated in src/Makefile only and not in
Makefile.config because it is a local define for this location.
- update the "depend" targets in Makefile.tmpl files to use $(OSDIR), too.
- replaced SHLIB_OBJS/SHLIBS_OBJ consistently with OBJS_PIC because OBJS
- replaced ugly xx-so.o/xx.so-o hack with a clean and consistent usage
of xxx.lo as GNU libtool does with its PIC objects
- reduce local complexity in modules Makefile.tmpl by moving the last
*) WIN32: Make Win32 work again after the /dev/null DoS fix.
*) When opening "configuration" files (like httpd.conf, htaccess
and htpasswd), Apache will not allow them to be non-/dev/null
necessary. Long-term fix is to either serialize the chdir/spawn combo
htdocs/manual/suexec.html document before using the suexec-related
and htdocs/manual/suexec.html documents.
UID/GID and safe PATH, too.
- overhauled mkshadow.sh script: now its more IFS-safe and approx. twice
*) Add a note to httpd.conf-dist that apache will on some systems fail
and not the original statically list from modules.c
confusion with the next point and reduces the Makefile.tmpl complexity
6. The modules.c generation was extended to now contain two
of loading/linking (we use load=link+load & link=activate instead of
*) Fix the generated mod_xxx.c from "apxs -g -f xxx" after the
*) Add a comment to mod_example.c showing the format of a FLAG command
places in the code (e.g. DATE_GMT). PR#1551
*) get/set_module_config are trivial enough to be better off inline. Worth
*) Fix off-by-one error in ap_proxy_date_canon() in proxy_util.c
*) Fix debug log messages for BS2000/OSD: instead of logging the whole
*) Make sure the referer_log and agent_log entries in the default httpd.conf
*) WIN32: Make roots of filesystems (e.g. c:/) work. [Ben Laurie]
from mod_so.c to Configure because first it needs $PLAT etc. and second
AIX variants should work fine, too. Even AIX 3.x should work). This is
which we put into a os/unix/os-dso-aix.c file.
*) Fix two bugs in select() handling in http_main.c.
side-effect this reduces some subdir fiddling in configure+Makefile.tmpl.
"make root=/tmp/apache install" for rolling the package without bristling
*) Workaround braindead AWK's when generating ap_config.h: The split() and
*) Fix DEBUG_CGI situation in mod_cgi.c [David MacKenzie] PR#2114
*) Make sure that "make install" doesn't overwrite the `mime.types' and
*) PORT: Dynamic Shared Object (DSO) support for OpenBSD 2.x
variables) to avoid side-effects in "src/Configure" when the user
*) Provide backward compatibility from some old src/Configuration.tmpl
*) NeXT required strdup() in support/logresolve.c
ap_snprintf, and ap_psprintf). See include/ap.h for docs.
*) Because /usr/local/apache is the default prefix the ``configure
to `char *' under OSF1 and FreeBSD 2.x where it is defined this way
*) PORT: Make sure some AWK's don't fail in src/Configure with "string too
long" errors when generating the MODULES entry for src/Makefile
*) Make sure src/Configure doesn't complain about the old directory
/usr/local/etc/httpd/ when APACI is used. [Lars Eilebrecht]
*) Adding DSO support for the HP/UX platform by emulating the dlopen-style
interface via the similar but proprietary HP/UX shl_xxx-style system
APACI Makefile.tmpl "install" target more robust for sensible UnixWare
- Apache provided general functions (e.g., ap_cpystrn)
- Public API functions (e.g., palloc, bgets)
cross-object usage) but should be (e.g., new_connection)
For backward source compatibility a new header file named compat.h was
dummy.so file (containing dummy references to all global symbols) the
Placing the Apache core code itself into a DSO library named libhttpd.so.
where we perhaps exploit this libhttpd.so mechanism for providing nifty
inside the src subtree (i.e. for non-APACI users). Following GNU Makefile
to the mak/dsp files. [Alexei Kosut]
*) Add documentation file and src/Configuration.tmpl entry for the
*) Now src/Configure uses a fallback strategy for the shared object support
and installation of the support tools from the src/support/ area.
dynamic shared object (DSO) mechanism [mod_so.c]. The trick here is that
Apache C header files (PREFIX/include) and the new APXS tool
(SBINDIR/apxs). The intend is to provide a handy tool for third-party
modules, from trivial ones (single mod_foo.c) to complex ones (like PHP3
*) Modify the log directives in httpd.conf-dist files to use CustomLog
script and a corresponding top-level "Makefile.tmpl" file. The goal is
the old src/Configure stuff in batch and additionally installs the
routines. Use this to replace http_bprintf.c. Add new routines
is necessary on at least Solaris where the /etc/rc?.d scripts
http://.../cgi-bin/...?http%3A%2F%2F... references) [Martin Kraemer]
the mod_proxy.html and corrected the hyperlink to it in the
new_features_1.3.html document. [Ralf S. Engelschall] PR#1348
*) Fix a bug in the src/helpers/fp2rp script and make it a little bit
*) Add the new ApacheBench program "ab" to src/support/: This is derived
*) src/include/ap_config.h now wraps it's #define's with #ifndef/#endif's
*) [PORT] For A/UX change the OS-#define for -DAUX to -DAUX3.
the ugly export kludge, makes the one-liner file mod_mime.h obsolete, and
*) util.c cleanup and speedup. [Dean Gaudet]
modules as shared objects. Especially Solaris 2.x, SunOS 4.1, IRIX and
*) The Configure script now generates src/include/ap_config.h which
"http://host" url is treated as if a similar "Host:" header had been
supplied. This change was made to support future HTTP/1.x protocols
*) API: Cleanup of code in http_vhost.c, and remove vhost matching
*) API: A new source module main/util_uri.c; It contains a routine
user; /* user name, as in http://user:passwd@host:port/ */
password; /* password, as in http://user:passwd@host:port/ */
a username can contain when trying to expand it via /etc/passwd.
*) Hide Proxy-Authorization from CGI/SSI/etc just like Authorization is
reads fail. ["M.D.Parker" <mdpc@netcom.com>] PR#1827
*) Source file dependencies in Makefile.tmpl files throughout the
htdocs/manual/known_client_problems.html are in the default
(like mod_dld for Win32). This replaces mod_dld.c. Use SharedModule
header files are in the src/include directory. The -Imain -Iap
and mod_rewrite) have not been moved to src/include; nor have
calls that use too small an initial guess, see alloc.c.
because the key/value is a constant, or the value has been built
Note that it is easy to get code subtly wrong if you pass a key/value
safe thing to do is to pass key/values which are in the pool of
i.e. if the table is part of a subrequest, a value from the main
usage, enabled by defining POOL_DEBUG. See alloc.c for more details.
*) API: "typedef array_header table" removed from alloc.h, folks should
HAVE_MMAP/SHMGET #defines strictly are informational that the
Unixware 1.x appears to have the same SIGHUP bug as solaris does with
*) PORT: A/UX can handle single-listen accepts without mutex
*) suexec errors now include the errno/description. [Marc Slemko] PR#1543
*) Some const declarations in mod_imap.c that were added for debugging
*) The src/main/*.h header files have had #ifndef wrappers added to
multiple paths (e.g., in .c files as well as other .h files).
src/ap/ap.h, to ease their use in non-httpd applications. [Ken Coar]
set with SetEnv/BrowserMatch and similar directives.
(the Siemens BS2000/OSD family) in the POSIX subsystem
Located in libap.a. [Jim Jagielski]
alloc.c (affects win32 only). [Ben Hyde]
server itself (like the src/support tools). [Ken Coar]
It also wouldn't handle "AddIconByType (TXT,/icons/text.gif text/*"
htdocs/manual/misc/known_client_problems.html#257th-byte) can happen
can be used by items in src/support among other things.
(e.g., <Directory>) where they're invalid. [Martin Kraemer]
for fgetc() and fgets() on SunOS 4.x. [Martin Kraemer, Ben Hyde]
subdirectory htdocs/manual/vhost/. [Lars Eilebrecht <sfx@unix-ag.org>]
[M.D.Parker] PR#1352
*) Inherit a bugfix to fnmatch.c from FreeBSD sources.
breaking on some systems. [Bhaba R.Misra <system@vt.edu>] PR#1368
*) A mild SIGTERM/SIGALRM race condition was eliminated.
*) Warn user that default path has changed if /usr/local/etc/httpd
*) PORT: On AIX 1.x files can't be named '@', fix the proxy cache
Document this a bit more in src/PORTING. [Dean Gaudet] PR#467
*) WIN32: Make index.html and friends work under Win95. [Ben Laurie]
*) Default pathname has been changed everywhere to /usr/local/apache
*) PORT: UnixWare 2.x requires -lgen for syslog.
[M.D.Parker <mdpc@netcom.com>] PR#1284
*) New support tool: src/support/split-logfile, a sample Perl script which
*) Makefile.tmpl was not using $CFLAGS in the link phase.
*) Add debugging code to alloc.c. Defining ALLOC_DEBUG provides a
Purify. See main/alloc.c for more details. [Dean Gaudet]
be used for whatever reason is appropriate (i.e. format() warnings
gcc >= 2.7.x (so that we have fewer support issues with older
Also removed the auto-generated link to www.apache.org that was the
*) suexec.c wouldn't build without -DLOG_EXEC. [Jason A. Dour]
*) Fixed error in proxy_util.c when looping through multiple host IP
buffered writes -- that is, it will buffer up to PIPE_BUF (i.e. 4k)
*) API: New register_other_child() API (see http_main.h) which allows
*) API: New piped_log API (see http_log.h) which implements piped logs,
Some things (like RewriteMaps) were checked/performed even if they
*) Removal of mod_auth_msql.c from the distribution. There are many
http://modules.apache.org/ It would be nice to offer a generic
Makefile on the fly based on Makefile.tmpl and Configuration.
*) support/httpd_monitor is no longer distributed because the
the headers/contents of the request. It does not run during subrequests
USE_xxx_SERIALIZED_ACCEPT in conf.h. xxx is FCNTL for fcntl(),
- Linux 2.x uses flock instead of fcntl
- Solaris 2.x uses pthreads
*) PORT: The semantics of accept/select make it very desirable to use
Modules can be dropped into modules/extra, or in their own
modules/standard. All other source code is in main. OS-specific
match "/home/a/andrew/public_html", now it only matches things
/dev/tty, etc.)
and cidr syntax (i.e. 10.1.0.0/16). PR#762
Apache would omit the chunk header/footer on the next block. Cleaned
e.g. when max_requests_per_child is reached, etc.
*) PORT: QNX mmap() support for faster/more reliable scoreboard handling.
setting. The define MAX_SPAWN_RATE can be used to raise/lower
in a language that by default does buffering (e.g. perl) this
*) PORT: Allow for use of n32bit libraries under IRIX 6.x
*) PORT: Linux: Attempt to detect glibc based systems and include crypt.h
*) PORT: QNX doesn't have initgroups() which support/suexec.c uses.
rect /url.hrm 10 20 30 40
braindead SunOS 4.1.x, allow env variables to be set even on rules with
i.e. now mod_rewrite no longer has a shared copyright. Instead is is
See http_config.h for more details. [Dean Gaudet]
LoadModule/LoadFile directives. Note that module DLLs must be
Module autoindex_module mod_autoindex.o
*) popendir/pclosedir created to properly protect directory scanning.
*) Makefile.nt added - to build all the bits from the command line:
nmake -f Makefile.nt
httpd.h. [Dean Gaudet]
the SFIO library calls sfread/sfwrite if B_SFIO is defined at
*) Turn off chunked encoding after sending terminating chunk/footer
*) SECURITY: When a client connects to a particular port/addr, and
actually be reached via that port/addr. [Ed Korthof <ed@organic.com>]
*) Support virtual hosts with wildcard port and/or multiple ports
and mod_include.c. [Dean Gaudet]
Also removed the auto-generated link to www.apache.org that was the
htdocs/manual/misc/known_client_problems.html#257th-byte) can happen
*) #ifdef wrap a few #defines in httpd.h to make life easier on
*) Fix MPE compilation error in mod_usertrack.c. [Mark Bixby]
should consider comparing against src/modules/standard/mod_include.c
*) suexec.c wouldn't build without -DLOG_EXEC. [Jason A. Dour]
minus WIN32/NT stuff, but plus copyright removement.
under Solaris 2.x (up through 2.5.1). It has been fixed.
lockfile in any location. It previously defaulted to /usr/tmp/htlock.
*) Add a placeholder in modules/Makefile to avoid errors with certain
*) USE_FLOCK_SERIALIZED_ACCEPT is now default for FreeBSD, A/UX, and
redirect flag, e.g. R=permanent, the permanent status was lost.
*) PORT: Support for Maxion/OS SVR4.2 Real Time Unix. [no name given] PR#383
*) PORT: fix problem compiling http_bprintf.c with gcc under SCO
*) Fixed open timestamp fd in proxy_cache.c [Chuck Murcko]
directive and the DEFAULT_TYPE symbol in httpd.h. Changed the value
of DEFAULT_TYPE to match the documented default (text/plain).
*) In mod_proxy.c, check return values for proxy_host2addr() when reading
the connection (e.g., when user presses Stop). Apache will now stop
*) Rearrange Configuration.tmpl so that mod_rewrite has higher priority
htdocs/manual/stopping.html for details on stopping and
*) The default handler now logs invalid methods or URIs (i.e. PUT on an
buffer or write inside buff.c or fread'ing from a CGI's output,
*) Use /bin/sh5 on ULTRIX. [P. Alejandro Lopez-Valencia] PR#369
*) Add UnixWare compile/install instructions. [Chuck Murcko]
*) Add macro for memmove to conf.h for SUNOS4. [Marc Slemko]
*) More signed/unsigned port fixes. [Dean Gaudet]
*) suexec.c doesn't close the log file, allowing CGIs to continue writing
*) Improved generation of modules/Makefile to be more generic for
*) Fixed overlaying of request/sub-request notes and headers in
*) Port to UXP/DS(V20) [Toshiaki Nomura <nom@yk.fujitsu.co.jp>]
*) changed status check mask in proxy_http.c from "HTTP/#.# ### *" to
- Changed send_dir() to remove user/passwd from displayed URL.
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]