CHANGES revision fd3fa792f04fc9c4e8f5f83dceb0fc34e71f8570
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox UserChanges with Apache 2.0.31-dev
7a2a1b8b14fc804ac80612d7b98064095e445be5Automatic Updater *) New Directive for mod_proxy: 'ProxyPreserveHost'. This passes
7a42357217528037bdfedcb17eeebfe96ae4266aAutomatic Updater the incoming host header through to the proxied server
1167fc7904c5f0a472f8df207ac46dd52c7f1ec8Automatic Updater [Geoff <g.russell@ieee.org>]
46da3117812814a29432a8d9a9ccf8acdbfdadceAutomatic Updater *) New Directive Option for ProxyPass. It now can block a location
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User from being proxied [Jukka Pihl <jukka.pihl@entirem.com>]
79b273c187a4aa1016a62181983dfdd0521681aeMark Andrews *) Don't let the default handler try to serve a raw directory. At
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User best you get gibberish. Much worse things can happen depending
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington on the OS. [Jeff Trawick]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Change the pre_config hook to return a value. Modules can now emit
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User an error message and then cause the server to quit gracefully during
bbde8dc56605130058a1540609264fa109da3b63Automatic Updater startup. This required a bump to the MMN. [Aaron Bannert]
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews *) Fix some unix socket descriptor leaks in the handler side of
e130ab53e992670e2a2ecf043976ac09f21358d1Automatic Updater mod_cgid (the part that runs in the server process). Whack a
3cc98b8ecedcbc8465f1cf2740b966b315662430Automatic Updater silly "close(-1)" in the handler too. [Jeff Trawick]
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews *) Change the pre_mpm hook to return a value, so that scoreboard
a01aa536188bb3535dfc1107a623e6355a8e6b7cMark Andrews init errors percolate up to code that knows how to exit
89623368b8f662d458d9964b923050f33c5f75b0Tinderbox User cleanly. This required a bump to the MMN. [Jeff Trawick]
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater *) Add the socket back to the conn_rec and remove the create_connection
efb0e886f18894a1d2489f1ad74ad14b579e11c7Mark Andrews hook. The create_connection hook had a design flaw that did not
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater allow creating connections based on vhost info. [Bill Stoddard]
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater *) Fixed PATH_INFO and QUERY_STRING from mod_negotiation results.
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater Resolves the common case of using negotation to resolve the request
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson /script/foo for /script.cgi/foo. [William Rowe]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Added new functions ap_add_(input|output)_filter_handle to
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User allow modules to bypass the usual filter name lookup when
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt adding hard-coded filters to a request [Brian Pane]
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater *) caching should now work on subrequests (still very experimental)
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt [Ian Holsman]
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater *) The Win32 mpm_winnt now has a shared scoreboard. [William Rowe]
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt *) Change ap_get_brigade prototype to use apr_off_t instead of apr_off_t*.
e130ab53e992670e2a2ecf043976ac09f21358d1Automatic Updater [Justin Erenkrantz]
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt *) Refactor ap_rgetline so that it does not use an internal brigade.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User Change ap_rgetline's prototype to return errors. [Justin Erenkrantz]
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater *) Remove mod_auth_db. [Justin Erenkrantz]
cdfc81e048bd34c1d628380247bda6b80a89e20eAutomatic Updater *) Do not install unnecessary pcre headers like config.h and internal.h.
cdfc81e048bd34c1d628380247bda6b80a89e20eAutomatic Updater [Joe Orton <joe@manyfish.co.uk>]
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater *) Change in quick_hanlder behavior for subrequests. it now passes DONE
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater (as it does for a normal request). quick_handled sub-requests now work
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater in mod-include [Ian Holsman]
eabc9c3c07cd956d3c436bd7614cb162dabdda76Mark Andrews *) Change SUBREQ_CORE so that it is a 'HTTP_HEADER' filter instead of
eabc9c3c07cd956d3c436bd7614cb162dabdda76Mark Andrews 'CONTENT' one, as it needs to run AFTER all content headers
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Rename BeOS MPM directive RequestsPerThread to MaxRequestsPerThread.
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews [Lars Eilebrecht]
8e9f3b69914ee02a80b87c97b1f8093edb3e9ae0Automatic Updater *) Split out blocking from the mode in the input filters.
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews [Justin Erenkrantz]
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews *) Fix a segfault in mod_include. [Justin Erenkrantz, Jeff Trawick]
80faf1588895fd26490f82f95a7a1b771df1c324Automatic Updater *) Cause Win32 to capture all child-worker process errors in
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews Apache to the main server error log, until the child can
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater open its own error logs. [William Rowe]
114f7780384371121918624ae2c80ecfce545683Tinderbox User *) HPUX 11.*: Do not kill the child process when accept()
693c4232dfdffaff672197d4b9fea944c64cf80aAutomatic Updater returns ENOBUFS on HPUX 11.*. (ported from a 1.3 patch
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews by [madhusudan_mathihalli@hp.com])
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater [Bill Stoddard]
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater *) Fix a problem in the parsing of the <Proxy foo> directive.
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater [Jeff Trawick]
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater *) rewrite of mod_ssl input filter for better performance and less
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson memory usage [Doug MacEachern]
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater *) allow quick_handler to be run on subrequests. [Ian Holsman]
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater *) mod_dav now asks its provider to place content directly into the
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User filter stack when handling a GET request. The mod_dav/provider
b871c7156eb037d41f53828c6fcb9cc876128962Mark Andrews API has changed, so providers need to be updated. [Greg Stein]
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User *) Clear the output socket descriptor in unixd_accept() to make sure
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User we don't supply a bogus socket to the caller if the accept fails.
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews This caused problems with the worker MPM, which tried to process
2a31bd531072824ef252c18303859d6af7451b00Francis Dupont the returned socket if it was non-NULL. [Brian Pane]
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User *) Move a check for an empty brigade to the start of core input filter
2a31bd531072824ef252c18303859d6af7451b00Francis Dupont to avoid segfaults. [Justin Erenkrantz, Jeff Trawick]
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User *) Add FileETag directive to allow configurable control of what
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User data are used to form ETag values for file-based URIs. MMN
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews bumped to 20020111 because of fields added to the end of
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews the core_dir_config structure. [Ken Coar]
24bf1e02f03577db0feb50b80238c4150c96d05dAutomatic Updater *) Fix a segfault in mod_rewrite's logging code caused by passing the
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews wrong config to ap_get_remote_host(). [Jeff Trawick]
7500521cecdff3c00e594ec41d3a17292332ffbcTinderbox User *) Allow mod_cgid to work from a binary distribution install by
a308b69ac66fadf66863484f301314d6e6a3f1d2Automatic Updater using 755 for the permissions on the log directory instead of
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews 750. [Jeff Trawick]
a01aa536188bb3535dfc1107a623e6355a8e6b7cMark Andrews *) Fixed a segfault that happened during graceful shutdown (or when
89623368b8f662d458d9964b923050f33c5f75b0Tinderbox User the httpd ran out of file descriptors) with the worker MPM [Brian Pane]
b871c7156eb037d41f53828c6fcb9cc876128962Mark Andrews *) Split all Win32 modules [excluding the core components mod_core,
b871c7156eb037d41f53828c6fcb9cc876128962Mark Andrews mod_so, mod_win32 and the winnt mpm] into individual loadable
b871c7156eb037d41f53828c6fcb9cc876128962Mark Andrews modules, so the administrator may individually disable the former
b871c7156eb037d41f53828c6fcb9cc876128962Mark Andrews compiled-in modules by simply commenting out their LoadModule
b871c7156eb037d41f53828c6fcb9cc876128962Mark Andrews directives. [William Rowe]
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater *) Saved Win32 module authors and porters many future headaches, by
cdfc81e048bd34c1d628380247bda6b80a89e20eAutomatic Updater duplicating the appropriate .h files such as os.h into the include
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater directory, including in the build tree. [William Rowe]
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater *) mod_ssl adjustments to help with using toolkits other than OpenSSL:
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater Use SSL functions/macros instead of directly dereferencing SSL
fe80a4909bf62b602feaf246866e9d29f7654194Automatic Updater structures wherever possible.
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater Add type-casts for the cases where functions return a generic pointer.
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater Add $SSL/include to configure search path.
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson [Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>]
aa1d397c4736cd86540555193d71e55fa3b37b2aMark Andrews *) Moved several pointers out of the shared Scoreboard so it is
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson more portable, and will present the vhost name across server
dd65eb1efb40b1c47d57963192bfc54873b219beAutomatic Updater generation restarts. [William Rowe]
dd65eb1efb40b1c47d57963192bfc54873b219beAutomatic Updater *) Fix SSLPassPhraseDialog exec: and SSLRandomSeed exec:
133e6d43fa82e80d3798be4de00f4540f485ec6cAutomatic Updater [Doug MacEachern]
133e6d43fa82e80d3798be4de00f4540f485ec6cAutomatic UpdaterChanges with Apache 2.0.30
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson *) Fix the main bug for FreeBSD and threaded MPM's. There are
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater still issues (see STATUS) but at least the server will now
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User run without crashing the machine.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [David Reid, Aaron Bannert, Justin Erenkrantz]
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User *) Fix a typo in mod_deflate's m4 config section.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User [albert chin (china@thewrittenword.com)]
f132a836c4e386b1af045dd8fe7106ae61b90bffAutomatic Updater *) Fix a couple of mod_proxy problems forwarding HTTP connections
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic Updater and handling CONNECT:
c6a0f4ae1d7183a16ffb196b86b647f870694796Automatic Updater (1) PR #9190 Proxy failed to connect to IPv6 hosts.
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic Updater (2) Proxy failed to connect when the first IP address returned by
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User the resolver was unreachable but a secondary IP address was.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [Jeff Trawick]
8711e5c73ca872d59810760af0332194cbdd619bAutomatic Updater *) Fix the module identifer as shown in the docs for various core
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater modules (e.g., the identifer for mod_log_config was previously
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic Updater listed as config_log_module). PR #9338
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater [James Watson <ap2bug@sowega.org>]
9c446b72069d0ab9f710502f4d7048e50875fccbAutomatic Updater *) Fix LimitRequestBody directive by placing it in the HTTP
e85565067cf73f8cc21ee29b11761659f1d47ee9Automatic Updater filter. [Justin Erenkrantz]
bc0a53583d92309bebcf93c408e2f3247ebd3d3cAutomatic Updater *) Fix mod_proxy seg fault when the proxied server returns
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater an HTTP/0.9 response or a bogus status line.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Adam Sussman]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Prevent mod_proxy from truncating one character off the
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater end of the status line returned from the proxied server.
7f79131f9a8e804b93c57f3c679065cce878b726Automatic Updater [Adam Sussman, Bill Stoddard]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Eliminate loop in ap_proxy_string_read().
3f616e6f846be57b1717c6beaba0f74de9d5a7c6Automatic Updater [Adam Sussman, Bill Stoddard]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Provide $0..$9 results from mod_include regex parsing.
19b3dc94bce93fa76bd7e066f9298630dbc9dcb4Automatic Updater [William Rowe]
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater *) Allow mod-include to look for alternate start & end tags [Ian Holsman]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Introduced the ForceLanguagePriority directive, to prevent
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater returning MULTIPLE_CHOICES or NONE_ACCEPTABLE in some cases,
5ecad47f69b3fd945472ab2900a9ff826a7ce2f6Automatic Updater when using Multiviews. [William Rowe]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Fix a problem which prevented mod_cgid and suexec from working
71bd43eebd9d6e42dbcae62b730f5b6508d5acd8Automatic Updater together reliably [Greg Ames]
7262eb86f2b465822206122921e2f357218f0cfdAutomatic Updater *) Remove the call to exit() from within mod_auth_digest's post_config
96ea71632887c58a9d00f47eb318bf76b35903c3Mark Andrews phase. [Aaron Bannert]
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater *) Fix a problem in mod_auth_digest that could potentially cause
bbb069be941f649228760edcc241122933c066d2Automatic Updater problems with initialized static data on a system that uses DSOs.
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater [Aaron Bannert]
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews *) Fix a segfault in the worker MPM that could happen during
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater child process exits. [Brian Pane, Aaron Bannert]
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews *) Allow mod_auth_dbm to handle multiple DBM types [Ian Holsman]
a382ca49c874d38ad3ac8995b49f9f27128e4ca9Automatic Updater *) Fix matching of vhosts by ip address so we find IPv4
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews vhost address when target address is v4-mapped form of
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews that address. [Jeff Trawick]
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews *) More performance tweaks to the BNDM string-search algorithm
cafd3a2b9974fe0a4ab95e0289746062bd958d68Automatic Updater used to find "<!--#" tokens in mod_include [Brian Pane]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Miscellaneous small performance fixes: optimized away various
7a2a1b8b14fc804ac80612d7b98064095e445be5Automatic Updater string copy operations and removed large temp buffers from
f132a836c4e386b1af045dd8fe7106ae61b90bffAutomatic Updater the stack [Brian Pane]
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User *) Fixed startup segfault that occurred when a VirtualHost
f7a71eef29bcbf892270460269c79664f600cffdAutomatic Updater directive had a port but no address [Brian Pane]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Allow htdbm to work with multiple DBM types [Ian Holsman]
cf7e98f59148b559946a7f1ca728471374f1eef3Automatic Updater *) Win32: Made change to apr_sendfile() to return APR_ENOTIMPL
930f6069e5aa157cf6987cdafd412f5757a5a558Automatic Updater if oslevel < WINNT. This should fix several problems reported
8ccd7da886e93cd490fcb6f4c4e98a6514f35820Automatic Updater Against 2.0.28 on Windows 98 [Bill Stoddard]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Win32: Fix bug that could cause CGI scripts with QUERY_STRINGS
cf7e98f59148b559946a7f1ca728471374f1eef3Automatic Updater to fail. [Bill Stoddard]
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson *) Change core code to allow an MPM to set hard thread/server
c3fd32ed29e9e419bb56583f4272a506773b1ea0Automatic Updater limits at startup. prefork, worker, and perchild MPMs now have
c3fd32ed29e9e419bb56583f4272a506773b1ea0Automatic Updater directives to set these limits. [Jeff Trawick]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Win32: The async AcceptEx() event should be autoreset upon
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic Updater successful completion of a wait (WaitForSingleObject). This
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User eliminates a number of spurious
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User setsockopt(SO_UPDATE_ACCEPT_CONTEXT) failed." messages.
3857cb6fcabeb79d85de4b3e3e4ab99912b701f8Mark Andrews [Bill Stoddard]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Move any load library path environment variables out of
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews apachectl and into a separate environment variable file which
9174e44c14b1cb91a651fa1dc29470438c246ab9Automatic Updater can be more easily tailored by the admin. The environment
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson variable file as built by Apache may have additional system-
e2caa7536302de34de6cc04025abcd53dc3a499aAutomatic Updater specific settings. For example, on OS/390 we tailor the heap
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User settings to allow lots of threads. [Jeff Trawick]
0b57424d28c9a67018107133f9fbc0a7dcf057e2Mark Andrews *) Use the new APR pool code to reduce pool-related lock
0b57424d28c9a67018107133f9fbc0a7dcf057e2Mark Andrews contention in the worker MPM. [Sander Striker]
dc11390a658e02e1a03accd4dbe14c94fa9de556Automatic Updater *) The POD no longer assumes the child is listening on 127.0.0.1
08d53af7d51409036462fa80fb1bde7a8c2ac123Automatic Updater and now pulls the first hostname in the list of listeners to
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews perform the dummy connect on. This fixes a bug when the user
b109432c3a939bff66a463be86c371bd88efe3aaAutomatic Updater had configured the Listen directive for an IP other than
7d12a6b412fe47e6d6582923fd6954ab8cd0baebAutomatic Updater 127.0.0.1. This would result in undead children and error
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews messages such as "Connection refused: connect to listener".
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews [Aaron Bannert]
7d12a6b412fe47e6d6582923fd6954ab8cd0baebAutomatic Updater *) The worker MPM now respects the LockFile setting, needed to
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews avoid locking problems with NFS. [Jeff Trawick]
3351ccbd5c1961404044f8273d54dad405f53960Mark Andrews *) Fix segfault when worker MPM receives SIGHUP.
7d12a6b412fe47e6d6582923fd6954ab8cd0baebAutomatic Updater [Ian Holsman, Aaron Bannert, Justin Erenkrantz]
0b57424d28c9a67018107133f9fbc0a7dcf057e2Mark Andrews *) Fix bug that could potentially prevent the perchild MPM from
7d12a6b412fe47e6d6582923fd6954ab8cd0baebAutomatic Updater working with more than one vhost/uid. [Aaron Bannert]
e8fc8c884b44371784805e1e0d3100da403dd3f1Automatic Updater *) Change make install and apxs -i processing of DSO modules to
e8fc8c884b44371784805e1e0d3100da403dd3f1Automatic Updater perform special handling on platforms where libtool doesn't install
e8fc8c884b44371784805e1e0d3100da403dd3f1Automatic Updater mod_foo.so. This fixes some wonkiness on HP-UX, Tru64, and AIX
e8fc8c884b44371784805e1e0d3100da403dd3f1Automatic Updater which prevented standard LoadModule statements from working.
e8fc8c884b44371784805e1e0d3100da403dd3f1Automatic Updater [Jeff Trawick]
e8fc8c884b44371784805e1e0d3100da403dd3f1Automatic Updater *) Whenever mod_so is enabled (not just when there are DSOs for
e8fc8c884b44371784805e1e0d3100da403dd3f1Automatic Updater our modules), do whatever special magic is required for compiling/
e8fc8c884b44371784805e1e0d3100da403dd3f1Automatic Updater loading third-party modules. This allows third-party DSOs to
7d12a6b412fe47e6d6582923fd6954ab8cd0baebAutomatic Updater be used on an AIX build when there were no built-in modules
b253dcf9668f95e141bce9556dc88e30d3305a1dTinderbox User built as DSOs. (This should help on OS/390 and BeOS as well.)
b253dcf9668f95e141bce9556dc88e30d3305a1dTinderbox User [Jeff Trawick]
b253dcf9668f95e141bce9556dc88e30d3305a1dTinderbox User *) Allow apxs to be used to build DSOs on AIX without requiring the
b253dcf9668f95e141bce9556dc88e30d3305a1dTinderbox User user to hard-code the list of import files. (This should help
b253dcf9668f95e141bce9556dc88e30d3305a1dTinderbox User on OS/390 and BeOS as well.) [Jeff Trawick]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Resolved segfault in mod_isapi when configuring with ISAPICacheFile.
59528addd704f8d5757b54e540520f74e588a7c7Automatic Updater PR 8563, 8919 [William Rowe]
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic Updater *) Get binary builds working when libapr and libaprutil are built
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater shared [Greg Ames]
4b2cb1422c7c600fbc13b1cb06a8b4693bc11af8Mark Andrews *) Get shared builds of libapr and libaprutil, as well as Apache DSOs,
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews working on AIX. [Aaron Bannert, Dick Dunbar <RLDunbar@pacbell.net>,
4b2cb1422c7c600fbc13b1cb06a8b4693bc11af8Mark Andrews Gary Hook <ghook@us.ibm.com>, Victor Orlikowski, Jeff Trawick]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Fix the handling of SSI directives in which the ">" of the
7f79131f9a8e804b93c57f3c679065cce878b726Automatic Updater terminating "-->" is the last byte in a file [Brian Pane]
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson *) Add back in the "suEXEC mechanism enabled (wrapper: /path/to/suexec)"
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater message that we had back in apache-1.3 and still have scattered
efb0e886f18894a1d2489f1ad74ad14b579e11c7Mark Andrews throughout our docs. [Aaron Bannert]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Prevent the Win32 port from continuing after encountering an
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington error in the command line args to apache. [William Rowe]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) On a error in the proxy, make it write a line to the error log
f7369b2881b5e63d69600adcedc8ba938303d30cTinderbox User [Ian Holsman]
b13d89bd89878137c81b36a36596cca3920f27a4Automatic Updater *) Various mod_ssl performance improvements [Doug MacEachern]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox UserChanges with Apache 2.0.29
f7369b2881b5e63d69600adcedc8ba938303d30cTinderbox User *) Add buffering in core_output_filter to ensure that long
f7369b2881b5e63d69600adcedc8ba938303d30cTinderbox User lists of small buckets don't cause small packet writes.
d6317350b1180aa4517f2e8a92fa8fbcbf904ad8Automatic Updater [Brian Pane, Ryan Bloom]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Fix the installation target to make sure that the manual is
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington installed in the correct location.
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington [Yoshifumi Hiramatsu <hiramatu@boreas.dti.ne.jp> and
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington Gomez Henri <hgomez@slib.fr>]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Fix the cmd command for mod_include. When we are processing
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington a cmd command, we do not want to use the r->filename to set
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington the command name. The command comes from the SSI tag. To do this,
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington I added a variable to the function that builds the command line
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington in mod_cgi. This allows the include_cmd function to specify
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington the command line itself. [Ryan Bloom]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Change open_logs hook to return a value, allowing you
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington to flag a error while opening logs
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington [Ian Holsman, Doug MacEachern]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Change post_config hook to return a value, allowing you
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington to flag a error post config
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington [Ian Holsman, Jeff Trawick]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Allow SUEXEC_BIN (the path to the suexec binary that is
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington hard-coded into the server) to be specified to the configure
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington script by the --with-suexec-bin parameter. [Aaron Bannert]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Fix segv in worker MPM following accept on pipe-of-death
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Add mod_deflate to experimental.
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington [Ian Holsman, Justin Erenkrantz]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Bail out at configure time if an invalid MPM was specified.
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington [jean-frederic clere <jfrederic.clere@fujitsu-siemens.com>]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Prevent segv in ap_note_basic_auth_failure() when no AuthName is
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington configured [John Sterling <sterling@covalent.net>]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Fix apxs to use sbindir. [Henri Gomez <hgomez@slib.fr>]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Fix a problem with IPv6 vhosts. PR #8118 [Jeff Trawick]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Optimization for the BNDM string-search function in
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington mod_include. [Brian Pane]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Fixed the behavior of the XBitHack directive.
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington [Taketo Kabe <kabe@sra-tohoku.co.jp>, Cliff Woolley] PR#8804
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) The threaded MPM for Unix has been removed. Use the worker
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington MPM instead. [various]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) APR-ize the resolver logic in mod_unique_id. This fixes a bug
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington in logging the error from a failed DNS lookup. [Jeff Trawick]
56effd2e3f579fd77b1fb37d47871d1bf1286bc4Automatic Updater *) Added the missing macros AP_INIT_TAKE13 and AP_INIT_TAKE123.
ae7e54b14c946e0984c191554db9abb4893f9349Automatic Updater [Cliff Woolley]
ae7e54b14c946e0984c191554db9abb4893f9349Automatic Updater *) Get mod_cgid killed when a MPM exits due to a fatal error.
ae7e54b14c946e0984c191554db9abb4893f9349Automatic Updater [Jeff Trawick]
ae7e54b14c946e0984c191554db9abb4893f9349Automatic Updater *) Fix a file descriptor leak in mod_include. When we include a
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User file, we use a sub-request, but we didn't destroy the sub-request
ae7e54b14c946e0984c191554db9abb4893f9349Automatic Updater immediately, instead we waited until the original request was
ae7e54b14c946e0984c191554db9abb4893f9349Automatic Updater done. This patch closes the sub-request as soon as the data is
ae7e54b14c946e0984c191554db9abb4893f9349Automatic Updater done being generated. [Brian Pane <bpane@pacbell.net>]
ae7e54b14c946e0984c191554db9abb4893f9349Automatic Updater *) Allow modules that add sockets to the ap_listeners list to
ae7e54b14c946e0984c191554db9abb4893f9349Automatic Updater define the function that should be used to accept on that
ae7e54b14c946e0984c191554db9abb4893f9349Automatic Updater socket. Each MPM can define their own function to use for
ae7e54b14c946e0984c191554db9abb4893f9349Automatic Updater the accept function with the MPM_ACCEPT_FUNC macro. This
ec8755f605d7dcb2de1076040e77bc2d7ec33b4aTinderbox User also abstracts out all of the Unix accept error handling
d4ef65050feac78554addf6e16a06c6e2e0bd331Brian Wellington logic, which has become out of synch across Unix MPMs.
d4ef65050feac78554addf6e16a06c6e2e0bd331Brian Wellington *) Fix a bug which would cause the response headers to be omitted
aa1d397c4736cd86540555193d71e55fa3b37b2aMark Andrews when sending a negotiated ErrorDocument because the required
aa1d397c4736cd86540555193d71e55fa3b37b2aMark Andrews filters were attached to the wrong request_rec.
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington [John Sterling <sterling@covalent.net>]
d4ef65050feac78554addf6e16a06c6e2e0bd331Brian Wellington *) Remove commas from the end of the macros that define
aa1d397c4736cd86540555193d71e55fa3b37b2aMark Andrews directives that are used by MPMs. Prior to this patch,
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User you would use these macros without commas, which was unlike
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington the macros for any other directives. Now, the caller provides
6c6a121295b30772cbf3dd75a51fb9d883051a0eAutomatic Updater the comma rather than the macro providing it. This makes
099b86fb8136a7dff81df85cf395978c16eb254cAutomatic Updater the macros look more like the rest of the directives.
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington [Ryan Bloom and Cliff Woolley]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Add 'redirect-carefully' environment option to disable sending
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington redirects under special circumstances. This is helpful for
a308b69ac66fadf66863484f301314d6e6a3f1d2Automatic Updater Microsoft's WebFolders when accessing a directory resource via
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater DAV methods. [Justin Erenkrantz]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Begin to abstract out the underlying transport layer.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater The first step is to remove the socket from the conn_rec,
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater the server now lives in a context that is passed to the
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater core's input and output filters. This forces us to be very
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User careful when adding calls that use the socket directly,
e01f44b37ba11c9d34f4a8394f950efae5c07f33Automatic Updater because the socket isn't available in most locations.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Really reset the MaxClients value in worker and threaded
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater when the configured value is not a multiple of the number
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater of threads per child. We said we did previously but we
3de6db3208d51de1e138b63b9670430c03f99694Automatic Updater forgot to. [Jeff Trawick]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Add Debian layout. [Daniel Stone <daniel@sfarc.net>]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) If shared modules are requested and mod_so is not available,
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington produce a fatal config-time error. [Justin Erenkrantz]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Improve http2env's performance by cutting the work it has to
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington do. [Brian Pane <bpane@pacbell.net>]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) use new 'apr_hash_merge' function in mod_mime (performance fix)
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington [Brian Pane <bpane@pacbell.net>]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonChanges with Apache 2.0.28
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Fix infinite loop in mod_cgid.c.
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington [Dale Ghent <daleg@elemental.org>, Brian Pane <bpane@pacbell.net>]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) When no port is given in a "ServerName host" directive, the
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington server_rec->port is now set to zero, not 80. That allows for
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington run-time deduction of the correct server port (depending on
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington SSL/plain, and depending also on the current setting of
7adcb4de92bf4383a4c5624c4ed256736d02bc6dMark Andrews UseCanonicalName). This change makes redirections
7adcb4de92bf4383a4c5624c4ed256736d02bc6dMark Andrews work, even with https:// connections. As in Apache-1.3, the
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington connection's actual port number is never used, only the ServerName
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington setting or the client's Host: setting. Documentation updated
e130ab53e992670e2a2ecf043976ac09f21358d1Automatic Updater to reflect the change. [Martin Kraemer]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Add a '%{note-name}e' argument to mod-headers, which works in
a26b22914b7bf25f065afb8cdef983766dcd672bAutomatic Updater the same way as mod_log_confg. [Ian Holsman]
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater *) Fix the spelling of the AP_MPMQ_MIN_SPARE_DAEMONS and
79cea03ba823e2d3a34895f0ba91d7fb5ad799e7Automatic Updater AP_MPMQ_MAX_REQUESTS_DAEMON macros in ap_mpm.h and all standard
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User MPMs. [Cliff Woolley]
7adcb4de92bf4383a4c5624c4ed256736d02bc6dMark Andrews *) Introduce htdbm, a user management utility for db/dbm authorization
7adcb4de92bf4383a4c5624c4ed256736d02bc6dMark Andrews databases. [Mladen Turk <mturk@mappingsoft.com>]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Optimize usage of strlen and strcat in ap_directory_walk.
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington [Brian Pane <bpane@pacbell.net>]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonChanges with Apache 2.0.27
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Introduce an Apache mod_ssl initial configuration template
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington (ssl.conf, generated from ssl-std.conf). [Ralf S. Engelschall]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Fixed a memory leak in the getline parsing code that could
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington be triggered by arbitrarily large header lines. Requests
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington from the core input filter for single lines are now limited
7adcb4de92bf4383a4c5624c4ed256736d02bc6dMark Andrews to HUGE_STRING_LEN (8192 bytes). [Aaron Bannert]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Fix a truncation bug in how we print the port on the Via: header.
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington The routine that prints the Via: header now takes a length for
7adcb4de92bf4383a4c5624c4ed256736d02bc6dMark Andrews the port string. [Zvi Har'El <rl@math.technion.ac.il>]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Some syntax errors in mod_mime_magic's magic file can result
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington in a 500 error, which previously was unlogged. Now we log the
e130ab53e992670e2a2ecf043976ac09f21358d1Automatic Updater error. [Jeff Trawick]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Add the support/checkgid helper app, which checks the run-time
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington validity of group identifiers usable in the Group directive.
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Various --enable-so options have been fixed: --enable-so is
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington treated as "static"; explicit --enable-so=shared issues an error;
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington and explicit --enable-so fails with error on systems without
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington APR_HAS_DSO. [Aaron Bannert]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Fix a segfault in the core input filter when the client socket
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User gets disconnected unexpectedly. [Cliff Woolley]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Fix the reporting for child processes that die. This removes
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater all of the non-portable W* macros from Apache.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Jeff Trawick and Ryan Bloom]
56effd2e3f579fd77b1fb37d47871d1bf1286bc4Automatic Updater *) Win32: Track and display "Parent Server Generation:" in
42bee07ebb8152a6ec2f87f4790d87368c24704cAutomatic Updater mod_status output. The generation will be bumped at
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater server graceful restart, when the child process exits
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater by hitting MaxRequestsPerChild or if the child
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User process exits abnormally. [Bill Stoddard]
7adcb4de92bf4383a4c5624c4ed256736d02bc6dMark Andrews *) Win32: Fix problem where MaxRequestsPerChild directive was
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington not being picked up in favor of the default. Enable
7adcb4de92bf4383a4c5624c4ed256736d02bc6dMark Andrews the parent to start up a new child process immediately upon
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington the old child starting shutdown.
7adcb4de92bf4383a4c5624c4ed256736d02bc6dMark Andrews [Bill Stoddard]
7adcb4de92bf4383a4c5624c4ed256736d02bc6dMark Andrews *) Fix some bungling of the remote port in rfc1413.c so that
7adcb4de92bf4383a4c5624c4ed256736d02bc6dMark Andrews IdentityCheck retrieves the proper user id instead of failing
7adcb4de92bf4383a4c5624c4ed256736d02bc6dMark Andrews and thus always returning "nobody."
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington [Dick Streefland <Dick.Streefland@xs4all.nl>]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Introduced thread saftey for mod_rewrite's internal cache.
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington [Brian Pane <bpane@pacbell.net>]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Simplified mod_env's directives to behave as most directives are
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington expected, in that UnsetEnv will not unset a SetEnv and PassEnv
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington directive following that UnsetEnv within the same container.
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington Also provides a runtime startup warning if a PassEnv configured
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington environment value is undefined. [William Rowe]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) The worker MPM is now completely ported to APR's new lock API. It
e130ab53e992670e2a2ecf043976ac09f21358d1Automatic Updater uses native APR types for thread mutexes, cross-process mutexes,
89623368b8f662d458d9964b923050f33c5f75b0Tinderbox User and condition variables. [Aaron Bannert]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Sync up documentation to remove all references to the now deprecated
79cea03ba823e2d3a34895f0ba91d7fb5ad799e7Automatic Updater Port directive. [Justin Erenkrantz]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Moved all ldap modules from the core to httpd-ldap sub-project
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Exit when we can't listen on any of the configured ports. This
84a18c72b9f05a7d2aabbc50886de494251d1719Automatic Updater is the same behavior as 1.3, and it avoids having the MPMs to
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater deal with bogus ap_listen_rec structures. [Jeff Trawick]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Cleanup the proxy code that creates a request to the origin
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater server. This change adds an optional hook, which allows modules
1fdd58445074579ee3b65c871137a7a1740eb542Mark Andrews to gain control while the request is created if the proxy module
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User is loaded. The purpose of this hook is to allow modules to add
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User input and/or output filters to the request to the origin. While
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User I was at it, I made the core use this hook, so that proxy request
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User creation uses some of the code from the core. This can still be
cc5a9ce75af9870f2cb9e2bf00548c2f7e6398d6Automatic Updater greatly improved, but this is a good start. [Ryan Bloom]
ec8755f605d7dcb2de1076040e77bc2d7ec33b4aTinderbox UserChanges with Apache 2.0.26
3f616e6f846be57b1717c6beaba0f74de9d5a7c6Automatic Updater *) Port the MaxClients changes from the worker MPM to the threaded
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User MPM. [Ryan Bloom]
532d27b39244fadfcf8d8b4593f4c65434c9c664Automatic Updater *) Fix mod_proxy so that it handles chunked transfer-encoding and works
532d27b39244fadfcf8d8b4593f4c65434c9c664Automatic Updater with the new input filtering system. [Justin Erenkrantz]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Introduce the MultiviewsMatch directive, to allow the operator
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User to be flexible in recognizing Handlers and Filters filename
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User extensions as part of the Multiviews matching logic, strict with
665ba746c0585088d0c314dcfc4671aa2c7b2dc1Automatic Updater MultiviewsMatch NegotiatedOnly to accept only filename extentions
e8c17c74535be290abaaa160a434ed80bf0ad2feMark Andrews that designate negotiated parameters, (content type, charset, etc.)
665ba746c0585088d0c314dcfc4671aa2c7b2dc1Automatic Updater or MultiviewsAll for the 1.3 behavior of matching any files, even
9c446b72069d0ab9f710502f4d7048e50875fccbAutomatic Updater if they have unregistered extensions. [William Rowe]
665ba746c0585088d0c314dcfc4671aa2c7b2dc1Automatic Updater *) Fixed the configure script to add a LoadModule directive to
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User the default httpd.conf for any module that was compiled
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User as a DSO. [Aaron Bannert <aaron@clove.org>]
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater *) rewrite mod_ssl input filtering to work with the new input filtering
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater system. [Justin Erenkrantz]
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater *) prefork: Don't segfault when we are able to listen on some but
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater not all of the configured ports. [Jeff Trawick]
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater *) Build mod_so even if no core modules are built shared.
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater [Aaron Bannert <aaron@clove.org>]
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater *) Introduce ap_directory_walk rewrite (with further optimizations
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater required) to adapt to the ap_process_request_internal() changes.
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater Optimized so subrequests and redirects now reuse previous section
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater merges, until we mismatch with the original directory_walk, and
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater precomputed r->finfo results will cause directory_walk to skip
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater the most expensive phases of the function. [William Rowe]
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater *) Allow ApacheMonitor to connect to and control Apache on other
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater WinNT/2K machines. [Mladen Turk <mturk@mappingsoft.com>]
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater *) Remove the Port directive. In it's place, the Listen directive
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater is now a required directive, which tells Apache what port to
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater listen on. The ServerName directive has also been extended
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater to accept an optional port. If the port is specified to the
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater ServerName, the server will report that port whenever it
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater reports the port that it is listening on. This change was
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater made to ease configuration errors that stem from having a Port
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater directive, and a Listen directive. In that situation, the server
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater would only listen to the port specified by the Listen command,
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater which caused a lot of confusion to users. [Ryan Bloom]
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater *) Added mod_mime_magic, mod_unique_id and mod_vhost_alias to the Win32
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater build, as loadable modules. [William Rowe]
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater *) Fix --enable-mods-shared processing. If most is specified,
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater then all modules that can be compiled as shared modules are.
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater [Aaron Bannert <aaron@clove.org>]
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater *) Update the mime.types file to map video/vnd.mpegurl to mxu
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater and add commonly used audio/x-mpegurl for m3u extensions.
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater [Heiko Recktenwald <uzs106@uni-bonn.de>, Lars Eilebrecht]
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater *) Eliminate the depreciated r->content_language, in favor of the array
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater r->content_languages introduced many years ago. Module authors must
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater substantially overhaul their modules, so this needs to be upgraded
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User if the module still relied on backwards-brokeness. [William Rowe]
fe84edc17e0d582cf7b4270f8df9d4742a107b1cAutomatic Updater *) Allow configure help strings to work with autoconf 2.50+ and 2.13.
a382ca49c874d38ad3ac8995b49f9f27128e4ca9Automatic Updater [Justin Erenkrantz]
31a540386a9abaf681d8952f1b2cdf5c75a0ba6cAutomatic Updater *) Rewrite the input filtering mechanisms to consolidate and reorganize
ff8ec39ce4afc2d774ce99f2386474d2c8539cd4Automatic Updater code. In short, core_input_filter does something now and
bf8c3776f1bf1a1270e5e0443ae5a8df022632a8Mark Andrews ap_http_filter is now only concerned with HTTP. [Justin Erenkrantz]
bf8c3776f1bf1a1270e5e0443ae5a8df022632a8Mark Andrews *) Update the Win32 build to re-absorb mod_proxy and family.
bf8c3776f1bf1a1270e5e0443ae5a8df022632a8Mark Andrews [William Rowe]
31a540386a9abaf681d8952f1b2cdf5c75a0ba6cAutomatic Updater *) Resolved the build failure on Win32 using MSVC 5.0 (without the
31a540386a9abaf681d8952f1b2cdf5c75a0ba6cAutomatic Updater current SDK.) [William Rowe]
ff8ec39ce4afc2d774ce99f2386474d2c8539cd4Automatic Updater *) Some style changes to the code that does ProxyErrorOverride. Fixed
31a540386a9abaf681d8952f1b2cdf5c75a0ba6cAutomatic Updater config merge behaviour. [Graham Leggett]
75333ed9bf283dc5f93deea43460149937402985Automatic Updater *) Allow support programs to be compiled against a static version
31a540386a9abaf681d8952f1b2cdf5c75a0ba6cAutomatic Updater of libapr. This allows the smaller support programs to be
ec8755f605d7dcb2de1076040e77bc2d7ec33b4aTinderbox User relocated. [Aaron Bannert <aaron@clove.org>]
40072ce70bc4125329addb4aaa56d18a1230bc17Automatic Updater *) Update the mime.types file to the registered media types as
60d5d17479b47c03b9c7c86f54269718103750b8Automatic Updater of 2001-09-25, and add mapping for xsl extension [Mark Cox]
a382ca49c874d38ad3ac8995b49f9f27128e4ca9Automatic Updater *) Fix MaxClients in the Worker MPM, so that it specifies the maximum
a382ca49c874d38ad3ac8995b49f9f27128e4ca9Automatic Updater number of clients that can connect at the same time, instead of
60d5d17479b47c03b9c7c86f54269718103750b8Automatic Updater specifying the maximum number of child processes.
ff8ec39ce4afc2d774ce99f2386474d2c8539cd4Automatic Updater [Aaron Bannert <aaron@clove.org>]
31a540386a9abaf681d8952f1b2cdf5c75a0ba6cAutomatic Updater *) Switch proc_pthread AcceptMutex configuration directive to pthread to
31a540386a9abaf681d8952f1b2cdf5c75a0ba6cAutomatic Updater be consistent with 1.3. [Justin Erenkrantz]
ff8ec39ce4afc2d774ce99f2386474d2c8539cd4Automatic Updater *) Cache apr_explode_localtime() value for 15 seconds.
31a540386a9abaf681d8952f1b2cdf5c75a0ba6cAutomatic Updater [Brian Pane <bpane@pacbell.net>]
31a540386a9abaf681d8952f1b2cdf5c75a0ba6cAutomatic Updater *) Fix mod_include to not return ETag or Last-Modified headers.
31a540386a9abaf681d8952f1b2cdf5c75a0ba6cAutomatic Updater [Ian Holsman <ianh@cnet.com>]
ff8ec39ce4afc2d774ce99f2386474d2c8539cd4Automatic Updater *) Fix worker MPM's scoreboard logic. [Aaron Bannert <aaron@clove.org>]
31a540386a9abaf681d8952f1b2cdf5c75a0ba6cAutomatic Updater *) Eliminate the wasteful run-time conversion of method names from strings
31a540386a9abaf681d8952f1b2cdf5c75a0ba6cAutomatic Updater to numbers in places where the methods are known at compile time.
31a540386a9abaf681d8952f1b2cdf5c75a0ba6cAutomatic Updater [Brian Pane <bpane@pacbell.net>]
a308b69ac66fadf66863484f301314d6e6a3f1d2Automatic Updater *) Turn the worker MPM's queue into a LIFO. This may
a308b69ac66fadf66863484f301314d6e6a3f1d2Automatic Updater improve cache-hit performance under some conditions.
a308b69ac66fadf66863484f301314d6e6a3f1d2Automatic Updater [Aaron Bannert <aaron@clove.org>]
31a540386a9abaf681d8952f1b2cdf5c75a0ba6cAutomatic Updater *) Switch back to SIGUSR1 for graceful restarts on all platforms that
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User support it. [Justin Erenkrantz]
016614bf32c25cbd3f2b39f68455b8c98a1a22b3Automatic Updater *) Cleanup the worker MPM. We no longer re-use transaction
7dd02af3c9350553e1d52d980a7812425b3f1295Automatic Updater pools. This incurs less overhead than shuffling the pools
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User around so that they can be re-used. Remove one of the
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User queue's condition variables. We just redefined the API to
d4ef65050feac78554addf6e16a06c6e2e0bd331Brian Wellington state that you can't try to add more stuff than you allocated
d4ef65050feac78554addf6e16a06c6e2e0bd331Brian Wellington segments for. [Aaron Bannert <aaron@clove.org>]
01f91b9cd440833f66e7476e43659655cb52ad10Automatic Updater *) Fix SSL VPATH builds [Cody Sherr <csherr@covalent.net>]
3e5b24a74c03d5b52f32d138e64e427bd2cbc8f3Automatic Updater *) Fixed persistent connections when a request contains a body.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) mod_dav uses a new API to speak to the backend provider for dead
789875a1bd6d50c00d3bd883cad17ead1d3c21cdMark Andrews property management. [Greg Stein]
789875a1bd6d50c00d3bd883cad17ead1d3c21cdMark Andrews *) Remove the Win32 script-processing exception from mod_cgi, and
5f4db4a664e7742d47abed1401fc42e4dd68174cAutomatic Updater roll build_command_line/build_argv_list into a unified, overrideable
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User ap_cgi_build_command optional function. [William Rowe]
b253dcf9668f95e141bce9556dc88e30d3305a1dTinderbox User *) Rewrite find_start_sequence to use a better search algorithm
b123be91958e0bc58a10c165be64d47661199e3bEvan Hunt to find the start tag. [Justin Erenkrantz]
b123be91958e0bc58a10c165be64d47661199e3bEvan Hunt *) Fix a seg fault in mod_include. When we are generating an
b123be91958e0bc58a10c165be64d47661199e3bEvan Hunt internal redirect, we must set r->uri to "", not a bogus
b123be91958e0bc58a10c165be64d47661199e3bEvan Hunt string, and not NULL. [Ryan Bloom]
b123be91958e0bc58a10c165be64d47661199e3bEvan Hunt *) Optimized location_walk, so subrequests, redirects and second passes
b123be91958e0bc58a10c165be64d47661199e3bEvan Hunt now reuse previous section merges on a <Location > by <Location >
b123be91958e0bc58a10c165be64d47661199e3bEvan Hunt basis, until we mismatch with the original location_walk.
b253dcf9668f95e141bce9556dc88e30d3305a1dTinderbox User [William Rowe]
b123be91958e0bc58a10c165be64d47661199e3bEvan Hunt *) Back out the 1.45 change to util_script.c. This change made
b123be91958e0bc58a10c165be64d47661199e3bEvan Hunt us set the environment variable REQUEST_URI to the redirected
b123be91958e0bc58a10c165be64d47661199e3bEvan Hunt URI, instead of the originally requested URI.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [Taketo Kabe <kabe@sra-tohoku.co.jp>]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Make mod_include do lazy evaluation of potentially expensive to
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater compute variables. [Brian Pane <bpane@pacbell.net>]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Fix logging of bytes sent for HEAD requests. %b and %B should
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater log either - or 0, before this patch, they were both logging
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater the file size. [Taketo Kabe <kabe@sra-tohoku.co.jp>]
fd7c65dce9c2b1a3d12ca4df9074cd38019fdb5fAutomatic Updater *) Make mod_include check for BYTE_CHECK_THRESHOLD per bucket rather
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater than per character. [Brian Pane <bpane@pacbell.net>]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Normalize the primary request, redirects and sub-requests to
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User run the same ap_process_request_internal for consistency in
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User robustness, behavior and security. [William Rowe]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Fix a segfault with mod_include when r->path_info is not set
ff62ab3c2e6274f19190ded15548c723d38bbbe3Automatic Updater (which is the case with mod_proxy). [Ian Holsman <ianh@cnet.com>]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Add -X functionality back. This indicates to all MPMs and any other
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater part of Apache that it should run in "debug" mode. [Justin Erenkrantz]
d9f94d668f4b9342e9367d80e9fc6e81fab303a0Mark Andrews *) Some initial support for the cygwin platform [prefork only].
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater This is not to be confused with support for the WinNT/Win32
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User platform, which is the recommended configuration for native
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User Win32 users. The cygwin platform support is recommended for
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater cygwin platform users. [Stipe Tolj <tolj@wapme-systems.de>]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Changed syntax of Set{Input|Output}Filter. The list of filters
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User must be semicolon delimited (if more than one filter is given.)
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater The Set{Input|Output}Filter directive now overrides a parent
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater container's directive (e.g. SetInputFilter in <Directory /web/foo>
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater will override any SetInputFilter directive in <Directory /web>.)
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater This new syntax is more consistent with Add{Input|Output}Filter
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater directives defined in mod_mime. Also cures a bug in prior releases
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater where the Set{Input|Output}Filter directive would corrupt the
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater global configuration if the multiple directives were nested.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [William Rowe]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Cured what's ailed mime for quite some time. If an AddSomething
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User was given in the configuration (Language, Charset, Handler or
7f814b8b164ae04916a8487cdc5e88ee3ff51a58Automatic Updater Encoding) Apache would set the content type as given by AddType,
7f814b8b164ae04916a8487cdc5e88ee3ff51a58Automatic Updater but refused to check the mime.types file if AddType wasn't given
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater for that specific extension. Setting the AddHandler for .html
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User without setting the AddType text/html html would cause Apache to
88d58d79c5bc7ce3c20a42461a5070116c736836Automatic Updater use the default content type. [William Rowe]
7f814b8b164ae04916a8487cdc5e88ee3ff51a58Automatic Updater *) Added some bulletproofing to memory allocation in the LDAP cache
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User code. [Graham Leggett]
48b36fa08b2b5bc0d552dc2a4425b3f7007b3d59Automatic UpdaterChanges with Apache 2.0.25
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Move the installed /manual directory out of the /htdocs/ tree, so
7f814b8b164ae04916a8487cdc5e88ee3ff51a58Automatic Updater that it can be kept more independently from the remaining document
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User root. The "Alias /manual ..." already allowed for easy projection
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater into existing private document trees. [Martin Kraemer]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Add specified user attributes to the environment when using
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater mod_auth_ldap. This allows you to use mod_include to embed specified
7f814b8b164ae04916a8487cdc5e88ee3ff51a58Automatic Updater user attributes in a page like so:
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater Hello <!--#echo var="AUTHENTICATE_CN"-->, how are you?
48b36fa08b2b5bc0d552dc2a4425b3f7007b3d59Automatic Updater [Graham Leggett]
7f814b8b164ae04916a8487cdc5e88ee3ff51a58Automatic Updater *) Fix a performance problem with the worker MPM. We now create
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User transaction pools once, and re-use them for each connection.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [Aaron Bannert <aaron@clove.org>]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Modfied mod_mime to prevent mod_negotation from serving a multiview
1959fd489a8832e4e3d311670f64ae18e5d08156Automatic Updater of a 'handler' or 'filter', so that any filename extension that does
1959fd489a8832e4e3d311670f64ae18e5d08156Automatic Updater not contribute to the negotiated metadata can't be served without
1959fd489a8832e4e3d311670f64ae18e5d08156Automatic Updater an explicit request. E.g., if the .Z extension is associated with
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User an unzip filter, the user request somefile.Z.html, mod_negotiation
1959fd489a8832e4e3d311670f64ae18e5d08156Automatic Updater won't serve it. It can serve somefile.Z.html when somefile.Z is
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User requested, since the .Z extension is explictly requested, if the
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User .html extension is associated with ContentType text/html.
b6561016dc8a813bfd91cef5b876b3dfc3f08ffaTinderbox User [William Rowe]
8bc194b266a17f89e6c54469d4dfbb408070f39eMark Andrews *) Introduce the AddInputFilter filter[;filter...] ext [ext...]
8bc194b266a17f89e6c54469d4dfbb408070f39eMark Andrews and corresponding AddOutputFilter syntax, to insert one or more
8bc194b266a17f89e6c54469d4dfbb408070f39eMark Andrews filters by mod_mime filename extension processing.
8bc194b266a17f89e6c54469d4dfbb408070f39eMark Andrews [William Rowe]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Fix a growing connection pool in core_output_filter() for
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User keepalive requests. [Jeff Trawick]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Moved split_and_pass_pretag_buckets back to being a
8711e5c73ca872d59810760af0332194cbdd619bAutomatic Updater macro at Ryans's request. Removed the return from it
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User by setting and returning a return code instead. Updated
8711e5c73ca872d59810760af0332194cbdd619bAutomatic Updater the code to check the return code from the macro and
b6561016dc8a813bfd91cef5b876b3dfc3f08ffaTinderbox User do the right thing. [Paul J. Reder]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Fix a segfault when a numeric value was received for Host:.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [Jeff Trawick]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Add a function ap_remove_input_filter. This is to match
e5bf83fe0bbca838a0749e9071bd76d9ee0fb59bFrancis Dupont up with ap_remove_output_filter. [Ryan Bloom]
e5bf83fe0bbca838a0749e9071bd76d9ee0fb59bFrancis Dupont *) Clean up location_walk, so that this step performs a minimum
4dca64bb8991502db368028aeeba2f832d3b971dAutomatic Updater amount of redundant effort (it must be run twice, but it will no
e5bf83fe0bbca838a0749e9071bd76d9ee0fb59bFrancis Dupont longer reparse all <Location > blocks when the request uri
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User hadn't changed.) [William Rowe]
ead8aa3182c5805fccb6c7c1636cede6a24a5fc1Automatic Updater *) Eliminate proxy: (and all other 'special') processing from the
ead8aa3182c5805fccb6c7c1636cede6a24a5fc1Automatic Updater ap_directory_walk() phase. Modules that want to use special
ead8aa3182c5805fccb6c7c1636cede6a24a5fc1Automatic Updater walk logic should refer to the mod_proxy map_to_location example,
ead8aa3182c5805fccb6c7c1636cede6a24a5fc1Automatic Updater with it's proxy_walk and proxysection implementation. This makes
ead8aa3182c5805fccb6c7c1636cede6a24a5fc1Automatic Updater either directory_walk flavor much more legible, since that phase
ead8aa3182c5805fccb6c7c1636cede6a24a5fc1Automatic Updater only runs against real <Directory > blocks.
7169f76a893666eb20fc7750782e7f411db742d6Tinderbox User [William Rowe]
7169f76a893666eb20fc7750782e7f411db742d6Tinderbox User *) Fix a security problem in mod_include which would allow
ead8aa3182c5805fccb6c7c1636cede6a24a5fc1Automatic Updater an SSI document to be passed to the client unparsed.
ead8aa3182c5805fccb6c7c1636cede6a24a5fc1Automatic Updater [Cliff Woolley, Brian Pane]
ead8aa3182c5805fccb6c7c1636cede6a24a5fc1Automatic Updater *) Introduce the map_to_storage hook, which allows modules to bypass
ead8aa3182c5805fccb6c7c1636cede6a24a5fc1Automatic Updater the directory_walk and file_walk for non-file requests. TRACE
8ccd7da886e93cd490fcb6f4c4e98a6514f35820Automatic Updater shortcut moved to http_protocol.c as APR_HOOK_MIDDLE, and the
ead8aa3182c5805fccb6c7c1636cede6a24a5fc1Automatic Updater directory_walk/file_walk happen as APR_HOOK_VERY_LAST in core.c.
ead8aa3182c5805fccb6c7c1636cede6a24a5fc1Automatic Updater [William Rowe]
765c97d56ccddc9d7904c7d9ff2e2d825d9687e4Automatic Updater *) Add the ability for mod_include to add the INCLUDES filter
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User if the file is configured for the server-parsed handler.
be46cb4bee9253ee4832340c719920642e00c41aTinderbox User This makes the configuration for .shtml files much easier
229ea4644b3a7d9c7fdaa43888e7f55ba01e2ee3Automatic Updater to understand, and allows mod_include to honor Apache 1.3
fe84edc17e0d582cf7b4270f8df9d4742a107b1cAutomatic Updater config files. Based on Doug MacEachern's patch to PHP
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User to do the same thing. [Ryan Bloom]
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater *) force OpenSSL to ignore process local-caching and to always
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User get/set/delete sessions using mod_ssl's callbacks
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater [Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>,
665ba746c0585088d0c314dcfc4671aa2c7b2dc1Automatic Updater Geoff Thorpe <geoff@geoffthorpe.net>]
7af91d15b2ce1ce32f7320f6d5cc3b83621c241aAutomatic Updater *) Make the worker MPM shutdown and restart cleanly. This also
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater cleans up some race conditions, and gets the worker using
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater pools more cleanly. [Aaron Bannert <aaron@clove.org>]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Implement CRYPTO_set_locking_callback() in terms of apr_lock
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>]
af9cf290cea6ada6ce27b51c724ab77ad5d73fa0Tinderbox User *) Fix for mod_include. Ryan's patch to check error
e171a4137c6ba348957e61b7c4c3541493c0da02Automatic Updater codes put a return in the wrong place. Also, the
c53a6f37deaa396660adb6a4ca600c4a58adfd3fAutomatic Updater include handler return code wasn't being checked.
c53a6f37deaa396660adb6a4ca600c4a58adfd3fAutomatic Updater I don't like macros with returns, so I converted
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater SPLIT_AND_PASS_PRETAG_BUCKETS into a function.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Paul J. Reder <rederpj@raleigh.ibm.com>]
4461317255ebae1954dccae7167ac1be3602e58bAutomatic Updater *) fix segv in mod_mime if no AddTypes are configured
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater [John Sterling <sterling@covalent.net>]
7af91d15b2ce1ce32f7320f6d5cc3b83621c241aAutomatic Updater *) Enable ssl client authentication at SSL_accept time
7af91d15b2ce1ce32f7320f6d5cc3b83621c241aAutomatic Updater [Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>]
ff8ec39ce4afc2d774ce99f2386474d2c8539cd4Automatic Updater *) Fix a segfault in mod_include when the original request has no
af9cf290cea6ada6ce27b51c724ab77ad5d73fa0Tinderbox User associated filename (e.g., we're filtering the error document for
7af91d15b2ce1ce32f7320f6d5cc3b83621c241aAutomatic Updater a bad URI). [Jeff Trawick]
6671e343b8c7e44ac10a7900fde59555fbc71571Automatic Updater *) Fix a storage leak (a strdup() call) in mod_mime_magic. [Jeff Trawick]
7af91d15b2ce1ce32f7320f6d5cc3b83621c241aAutomatic Updater *) The prefork and OS/2 MPMs are overwriting the pid file when a second copy
7af91d15b2ce1ce32f7320f6d5cc3b83621c241aAutomatic Updater of httpd is started and shuts down due to socket conflict. Moving the
7af91d15b2ce1ce32f7320f6d5cc3b83621c241aAutomatic Updater call to ap_log_pid solves the problem.
7af91d15b2ce1ce32f7320f6d5cc3b83621c241aAutomatic Updater *) Changed the late-1.3 log_config substitution %c to %X, to log the
7af91d15b2ce1ce32f7320f6d5cc3b83621c241aAutomatic Updater status of the closed connection, as it conflicts with the far more
7af91d15b2ce1ce32f7320f6d5cc3b83621c241aAutomatic Updater common, historical ssl logging directive %...{var}c. [William Rowe]
4104e236f71eb5108fcfda6711878a97f6f4a8e7Automatic Updater *) Added the common error/ tree to the build/install targets
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater (similar to the common icons/ tree) for the multi-language error
e628576d3b3d91c8954679077f4c208f1e43b433Automatic Updater messages that Lars committed earlier. [William Rowe]
7af91d15b2ce1ce32f7320f6d5cc3b83621c241aAutomatic Updater *) Added a multi process, multi threaded OS/2 MPM mpmt_os2. [Brian Havard]
8e9f3b69914ee02a80b87c97b1f8093edb3e9ae0Automatic Updater *) Added a default commented-out mod_ldap and mod_auth_ldap
8e9f3b69914ee02a80b87c97b1f8093edb3e9ae0Automatic Updater configuration to httpd-std.conf and httpd-win.conf
664917bedafa65dee4349c84324a31731aa1e228Francis Dupont [Graham Leggett]
af9cf290cea6ada6ce27b51c724ab77ad5d73fa0Tinderbox User *) Added documentation for mod_ldap and mod_auth_ldap.
229ea4644b3a7d9c7fdaa43888e7f55ba01e2ee3Automatic Updater [Graham Leggett]
fd7c65dce9c2b1a3d12ca4df9074cd38019fdb5fAutomatic Updater *) Enabled negative caching on attribute comparisons in the LDAP cache.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater Fixed a problem where the default cache TTL was set in milliseconds
fd7c65dce9c2b1a3d12ca4df9074cd38019fdb5fAutomatic Updater not microseconds causing the cache to time out almost immediately.
e628576d3b3d91c8954679077f4c208f1e43b433Automatic Updater [Graham Leggett]
e628576d3b3d91c8954679077f4c208f1e43b433Automatic Updater *) Fixed all the #if APR_HAS_SHARED_MEMORY checks within the LDAP
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User module code to follow APR. [Graham Leggett]
9d80d23172c30fd63e5046a7e69b8445e564ff31Automatic Updater *) Fixed LDAP cleanup on graceful restarts. LDAP connections are now
fe84edc17e0d582cf7b4270f8df9d4742a107b1cAutomatic Updater cleaned up when the connection pool pool is cleaned up.
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User [Graham Leggett]
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User *) Fix a minor issue with Jeff Trawick's mod_include
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User patch. Without this patch, the code will just allocate
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User more bytes in get_combined_directive than are needed.
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User *) Added the LDAP authentication module mod_auth_ldap.
bea3208b417a0700bd524807082875b7d09585e4Automatic Updater [Dave Carrigan <dave@rudedog.org>, Graham Leggett]
bea3208b417a0700bd524807082875b7d09585e4Automatic Updater *) Added the LDAP cache and connection pooling module mod_ldap.
9d9d2b1450380caab764a1254c1687f0613fc94aAutomatic Updater [Dave Carrigan <dave@rudedog.org>, Graham Leggett]
bea3208b417a0700bd524807082875b7d09585e4Automatic Updater *) Fix --enable-modules=all breakage with mod_auth_db and mod_auth_digest
b6561016dc8a813bfd91cef5b876b3dfc3f08ffaTinderbox User by allowing a module to disable itself if its prerequisites are not
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User met. [Justin Erenkrantz]
48dfee71508886d86fe8fb12f91961b5daf3141dMark AndrewsChanges with Apache 2.0.24
48dfee71508886d86fe8fb12f91961b5daf3141dMark Andrews *) Fix a couple of issues in mod_include when the tag appeared at
48dfee71508886d86fe8fb12f91961b5daf3141dMark Andrews offsets near 8192 in the file being parsed. [Jeff Trawick]
48dfee71508886d86fe8fb12f91961b5daf3141dMark Andrews *) Fix an assertion failure in mod_ssl when the keepalive timeout is
48dfee71508886d86fe8fb12f91961b5daf3141dMark Andrews reached. [Jeff Trawick]
48dfee71508886d86fe8fb12f91961b5daf3141dMark Andrews *) Numerous improvements to the Win32 build system. Introduced command line
48dfee71508886d86fe8fb12f91961b5daf3141dMark Andrews builds without requiring .mak files for MSVC 6.0 and later versions.
48dfee71508886d86fe8fb12f91961b5daf3141dMark Andrews Improved .dsp file compatibility for both Visual Studio 5.0 and 6.0 users.
48dfee71508886d86fe8fb12f91961b5daf3141dMark Andrews [William Rowe]
48dfee71508886d86fe8fb12f91961b5daf3141dMark Andrews *) Assorted corrections and improvements to the winnt_mpm startup code. Better
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User reporting of uninstalled services and other error conditions, and changed the
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User default service name to Apache2. [William Rowe]
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic Updater *) Numerous improvements to the Win32 ApacheMonitor utility, including winnt_mpm
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User compatibility with existing Apache 1.3 Win32 Apache management utilites.
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic Updater [Mladen Turk <mturk@mappingsoft.com>, William Rowe]
48dfee71508886d86fe8fb12f91961b5daf3141dMark Andrews *) Fixed the segfaults in mod_mime introduced by hash tables in 2.0.20.
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User [William Rowe, Greg Ames]
8c9c79e5fea0cb698026a74821695907c8312a46Mark Andrews *) Rounded out the mod_mime Add/Remove pairs by adding RemoveLanguage
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User and RemoveCharset directives. [William Rowe]
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User *) The Unix MPMs other than perchild now allow child server
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User processes to use the accept mutex when starting as root and
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic Updater using SysV sems for the accept mutex. Previously, this
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User combination would lead to fatal errors in the child server
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic Updater processes. perchild can't use SysV sems because of security
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic Updater issues. [Jeff Trawick, Greg Ames]
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User *) Added Win32 revision stamp resources to all http binaries
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic Updater (including modules/ and support/ tools.) PR7322 [William Rowe]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Fix ap_rvprintf to support more than 4K of data at one time.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Cody Sherr <csherr@covalent.net>]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) We have always used the obsolete/deprecated Netscape syntax
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater for our tracking cookies; now the CookieStyle directive
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater allows the Webmaster to choose the Netscape, RFC2109, or
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater RFC2965 format. The new CookieDomain directive allows the
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater setting of the cookie's Domain= attribute, too. PR #s 5006,
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater 5023, 5920, 6140 [Ken Coar]
e007e3e5b0316c6c05698a71101885743aca22bdAutomatic Updater *) Tweak server/Makefile so that the rules for generating exports.c
e007e3e5b0316c6c05698a71101885743aca22bdAutomatic Updater are compatible with make utilities which don't expand wildcards
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User in a dependency list (e.g., OS/390 make, certain levels of GNU
7169f76a893666eb20fc7750782e7f411db742d6Tinderbox User make). [Jeff Trawick]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Install the SSL headers. [John Sterling <sterling@covalent.net>]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Begin to sanitize the MPM configuration directives. Now, all
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater MPMs use the same functions for all common MPM directives. This
bbf7c3fd96ae5e02cb84743c581862e35327032aAutomatic Updater should make it easier to catch all bugs in these directives once.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Cody Sherr <csherr@covalent.net>]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Close a major resource leak. Every time we had issued a
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User graceful restart, we leaked a socket descriptor.
7adcb4de92bf4383a4c5624c4ed256736d02bc6dMark Andrews *) Fix a problem with the new method code. We need to cast
b6561016dc8a813bfd91cef5b876b3dfc3f08ffaTinderbox User the 1 to an apr_int64_t or it will be treated as a 32-bit
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User integer, and it will wrap after being shifted 32 times.
95cfad51a3f71246d263af79a7861a6821f7a0beAutomatic Updater [Cody Sherr <csherr@covalent.net> and Ryan Morgan <rmorgan@covalent.net>]
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User *) Fix a bug in mod_expires. Previous to this patch, if you
95cfad51a3f71246d263af79a7861a6821f7a0beAutomatic Updater told mod_expires to add 604800 seconds to the last-modified
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User time, it actually added 604800 usec's to the last-modified time,
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User so that when looking at the response it looked like nothing
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User had been done. The root of the problem was that we always compute
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User time in usec's, but we ask users to input sec's. This means we
f132a836c4e386b1af045dd8fe7106ae61b90bffAutomatic Updater need to convert to usec's before using those values.
5e1503eb9464c2284bb782228d4c315087a2415fAutomatic Updater *) The worker MPM now handles shutdown and restart requests. It
5ecad47f69b3fd945472ab2900a9ff826a7ce2f6Automatic Updater definitely isn't perfect, but we do stop the servers correctly.
5e1503eb9464c2284bb782228d4c315087a2415fAutomatic Updater The biggest problem right now is that SIGHUP causes the server to
08d53af7d51409036462fa80fb1bde7a8c2ac123Automatic Updater just die. [Ryan Bloom]
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic UpdaterChanges with Apache 2.0.23
f132a836c4e386b1af045dd8fe7106ae61b90bffAutomatic Updater *) Use the prefork MPM by default on Unix. [various]
5ecad47f69b3fd945472ab2900a9ff826a7ce2f6Automatic Updater *) Added a systray icon monitor application for Win32.
07d9d0dbcc0c79deb3c34f4a8af05ac68a6800e4Mark Andrews [Mladen Turk <mturk@mappingsoft.com>]
a66012b52c20200f118781463db4e4ee44454298Automatic Updater *) mod_rewrite: Fix the line ending on some non-Unix systems for
f132a836c4e386b1af045dd8fe7106ae61b90bffAutomatic Updater messages written to the rewrite log.
f132a836c4e386b1af045dd8fe7106ae61b90bffAutomatic Updater [Richard Labennett <rlabenn@us.ibm.com>]
e2e3f655d133f08056c9035412d4c013aab234e7Automatic Updater *) All mod_autoindex query parsing is now quietly quashed with the
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User IndexOption IgnoreClient. The IndexOption SuppressColumnSorting
b6561016dc8a813bfd91cef5b876b3dfc3f08ffaTinderbox User still drops the column sort <a href>'s for the column headers, but
2fd1e3918971180155c10d09454a277f015daecaAutomatic Updater IgnoreClient is required to ignore these Query options entirely.
2fd1e3918971180155c10d09454a277f015daecaAutomatic Updater [William Rowe]
2fd1e3918971180155c10d09454a277f015daecaAutomatic Updater *) Introduced new mod_autoindex query argument parsing for F=[0|1|2]
2fd1e3918971180155c10d09454a277f015daecaAutomatic Updater to allow the client to select plain, FancyIndexing or HTMLTable
2fd1e3918971180155c10d09454a277f015daecaAutomatic Updater formatting, V=[0|1] to inhibit or enable version sorting, and
b6561016dc8a813bfd91cef5b876b3dfc3f08ffaTinderbox User P=pattern to return only specific files. The old Query Arguments
2fd1e3918971180155c10d09454a277f015daecaAutomatic Updater were reorganized as C=f for sorting column 'f' (same N, D, S, or M
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User as before), and O=A|D for ordering ascending or descending.
e2e3f655d133f08056c9035412d4c013aab234e7Automatic Updater [William Rowe]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Fixed an error in mod_include's directive parsing routines which
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington caused #if, #elif, and #else expressions containing backslashes
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington to be improperly evaluated. [Cliff Woolley]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Introduced new mod_autoindex IndexOptions flags: SuppressIcon to
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington drop the icon column, SuppressRules to drop the <hr> elements,
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater and HTMLTable to create rudimentary HTML table listings (implies
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater FancyIndexing). [William Rowe]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Re-introduced the mod_autoindex IndexOptions flag TrackModified
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User from Apache 1.3.15. This is needed for two reasons, first, given
82447d835d3ff5c658749b4e9b4f66166407b3eaAutomatic Updater multiple machines within a server farm, ETags and Last-Modified
82447d835d3ff5c658749b4e9b4f66166407b3eaAutomatic Updater stamps won't correspond from machine to machine, and second, many
82447d835d3ff5c658749b4e9b4f66166407b3eaAutomatic Updater Unixes don't capture changes to the date or time stamp of existing
82447d835d3ff5c658749b4e9b4f66166407b3eaAutomatic Updater files, since these don't modify the dirent itself. [William Rowe]
82447d835d3ff5c658749b4e9b4f66166407b3eaAutomatic Updater *) Re-introduced the mod_autoindex IndexOptions flag FoldersFirst
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User and DirectoryWidth options from Apache 1.3.10.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [William Rowe, Ken Coar]
d04fe0d954df649d763640642cb5a456ae1c63a3Automatic Updater *) Eliminated FancyIndexing directive, deprecated early in Apache
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater 1.3 by the IndexOptions FancyIndexing syntax. [William Rowe]
bbb069be941f649228760edcc241122933c066d2Automatic Updater *) mod_autoindex now excludes any file names that would result in
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater an error, other than a success or redirect. Also optimized
e062b72f783cdb436a1a57a630bdff471dbb3038Mark Andrews the parent directory, always included except in the URI '/'.
d145b64cacc8d9cda51f9924ec70cd4661c3e2cfAutomatic Updater [William Rowe]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Refactored mod_negotiation and mod_mime to help mod_dir accept
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater negotiated index pages, and prevent the server from defaulting
d145b64cacc8d9cda51f9924ec70cd4661c3e2cfAutomatic Updater to an autoindex of the directory. mod_negotiation will now die
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater with a 500 Internal Error if it could match some filenames
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User (e.g. for mod_dir) but none can be served. mod_negotation now
d04fe0d954df649d763640642cb5a456ae1c63a3Automatic Updater refuses to serve any file with an extention that mod_mime doesn't
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User recognize, and wasn't part of the request. [William Rowe]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Eliminate mod_cgi's handling of .exe files without the .exe file
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater extension. This is already handled by multiviews, if the admin
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater wishes to AddHandler .exe or define a content type handler and
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater associate .exe files with that content type. Multiviews must be
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater enabled to allow these to be served. [William Rowe]
2cdbfcdad94eba75f3f8e77343a0eefabf553b8eAutomatic Updater *) Speed up the server's response to a spike in incoming workload
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User or restarts by assigning empty scoreboard slots to new processes
52cfbde0bd391cfb37e3c1a1b460c16ba6bf1a73Automatic Updater when they are available. [Greg Ames]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Add a handler to mod_includes.c. This handler is designed to
52cfbde0bd391cfb37e3c1a1b460c16ba6bf1a73Automatic Updater implement the XbitHack directive. This can't be done with a
52cfbde0bd391cfb37e3c1a1b460c16ba6bf1a73Automatic Updater fixup, because we need to check the content-type, which is
24e0e8d17df315d5d494ca933874e545eadce773Automatic Updater only available in the handler phase. [Ryan Bloom]
a01aa536188bb3535dfc1107a623e6355a8e6b7cMark Andrews *) Make the includes filter check return codes from filters lower in
52cfbde0bd391cfb37e3c1a1b460c16ba6bf1a73Automatic Updater the filter chain. If a lower level filter returns an error, then
79242b4b2baccf73f007645983fccad02747af13Automatic Updater the request needs to stop immediately. This allows mod_include to
31a540386a9abaf681d8952f1b2cdf5c75a0ba6cAutomatic Updater stop parsing data once a lower filter recognizes an error.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Add the ability to extend the methods that Apache understands
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User and have those methods <limit>able in the httpd.conf. It uses
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User the same bit mask/shifted offset as the original HTTP methods
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User such as M_GET or M_POST, but expands the total bits from an int to
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater an ap_int64_t to handle more bits for new request methods than
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater an int provides. [Cody Sherr <csherr@covalent.net>]
601c1908d06375f5dea00ab98671a6c934d8a840Automatic Updater *) Fix broken mod_mime behavior in merging its arguments. Possible
601c1908d06375f5dea00ab98671a6c934d8a840Automatic Updater cause of unexplicable crashes introduced in 2.0.20. [William Rowe]
0c7657e9302e7f9a8fe4f32fe561dc7e7e7ee6b5Automatic Updater *) Solve many mod_ssl porting issues (too many to detail) with
fd7c65dce9c2b1a3d12ca4df9074cd38019fdb5fAutomatic Updater help from the whole team, but most notably [Ralf S. Engelschall,
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>,
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User Doug MacEachern, William Rowe, Cliff Woolley]
601c1908d06375f5dea00ab98671a6c934d8a840Automatic Updater *) More stall fixes for the threaded & worker mpm's.
aa1d397c4736cd86540555193d71e55fa3b37b2aMark Andrews Make mod_status output more accurate. Don't
601c1908d06375f5dea00ab98671a6c934d8a840Automatic Updater count workers in processes which aren't actively
601c1908d06375f5dea00ab98671a6c934d8a840Automatic Updater serving requests. [Greg Ames]
55f7099aade5630f3b10b5f007536c60e80cced2Automatic Updater *) Win32: Get SSI exec cgi tag working. [Bill Stoddard]
cd839f5cf5f84cf163f55ff05cb88ce37efd24d1Automatic Updater *) Add a single listener/multiple worker MPM. This MPM is
8ccd7da886e93cd490fcb6f4c4e98a6514f35820Automatic Updater definately not fully correct, but it allows us to solve many
cd839f5cf5f84cf163f55ff05cb88ce37efd24d1Automatic Updater of the problems that exist in the threaded MPM. This is a
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User modified version of the threaded MPM. [Ryan Bloom]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Improve content generation throughout Apache, providing closer
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User compliance with HTML 3.2, HTML 4.01 Transitional and XHTML 1.0
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User Transitional specifications. [William Rowe]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox UserChanges with Apache 2.0.22
c95f536d78842fbc8ebcef653d88e1f2270054f8Automatic Updater *) Fix a problem where the threaded MPM stalls after restarts or
f9119ad8f6114b2255e7545bf5cd187f4db0a89bAutomatic Updater segfaults. Also prevent multiple active processes from using
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User the same scoreboard slot. [Greg Ames]
f9119ad8f6114b2255e7545bf5cd187f4db0a89bAutomatic Updater *) Apache/Win32 now fills in the service description with Apache's
f9119ad8f6114b2255e7545bf5cd187f4db0a89bAutomatic Updater server version string, including loaded and advertised modules.
f9119ad8f6114b2255e7545bf5cd187f4db0a89bAutomatic Updater [William Rowe]
c95f536d78842fbc8ebcef653d88e1f2270054f8Automatic Updater *) Improved support for the Win32 build, to recover gracefully from
c95f536d78842fbc8ebcef653d88e1f2270054f8Automatic Updater missing apr or apr-util directories or the awk interpreter,
c95f536d78842fbc8ebcef653d88e1f2270054f8Automatic Updater create the proper cgi-bin examples, including a test-cgi.bat, and
c95f536d78842fbc8ebcef653d88e1f2270054f8Automatic Updater fix the perl shebang line for printenv.pl, when installing from
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User the build environment. [William Rowe]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Fix a segfault in threaded.c caused by passing uninitialized
ec8755f605d7dcb2de1076040e77bc2d7ec33b4aTinderbox User apr_thread_t * to apr_thread_join(). [Jeff Trawick]
45c349c278fd83acd4dcb91eec3482401a623e47Automatic Updater *) Use new APR number conversion functions to reduce CPU consumption
45c349c278fd83acd4dcb91eec3482401a623e47Automatic Updater when setting the content length, and in mod_log_config.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Fix problem reported by Taketo Kabe <kabe@sra-tohoku.co.jp>
bf8c3776f1bf1a1270e5e0443ae5a8df022632a8Mark Andrews where HEAD response headers were being repeated twice for
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User files greater than 32K bytes (4*AP_MIN_BYTES_TO_WRITE). This
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater problem in the http_header filter was exposed by the recent rewrite
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater of the content_length filter. [Taketo Kabe, Bill Stoddard]
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) Fix seg faults in mod_status with ExtendedStatus enabled, after
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater restarts. A garbage pointer to a vhost's server_rec from the
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater previous generation was being left around under certain
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater conditions. [Greg Ames]
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) Fix a cosmetic problem with mod_include. Non-existant SSI vars
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater used to appear as '(none', without the closing paren.
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater [G�nter Knauf <eflash@gmx.net>]
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) Improve the exports generating awk script. In the past, we had
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater work around problems in the awk script by avoiding some #if and
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User #ifdefs. This has bitten us many times in generating the exports.c
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User file. This improvement allows corrects the header file parsing.
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews [Sander Striker <striker@apache.org>]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic UpdaterChanges with Apache 2.0.21
601c1908d06375f5dea00ab98671a6c934d8a840Automatic Updater *) Resolve the Win32 htpasswd bug, where a file that existed would be
601c1908d06375f5dea00ab98671a6c934d8a840Automatic Updater overwritten, regardless of the -c flag.
601c1908d06375f5dea00ab98671a6c934d8a840Automatic Updater [William Rowe, Mladen Turk <mladen.turk@mail.inet.hr>]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Introduce connection sub-pools into ab. Truncating the lifetime
fd7c65dce9c2b1a3d12ca4df9074cd38019fdb5fAutomatic Updater of these allocations means that ab no longer perpetually grows
fd7c65dce9c2b1a3d12ca4df9074cd38019fdb5fAutomatic Updater its working set, running out of memory on large request attempts.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [William Rowe]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Make scoreboard creation a hook. This allows management
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User modules to have access to the scoreboard at the time that it is
4d813066e967a36c407ee641155ada0c614d4dc6Automatic Updater created, and at every restart request.
6de27e27ad6056d7c049feb912df5a6b9a56d1b8Automatic Updater [Cody Sherr <csherr@covalent.net>]
f42fc714eda962112e45b904d1f846c61a080114Automatic Updater *) Changed AP_MPMQ_MAX_DAEMONS to refer to MaxClients and
f42fc714eda962112e45b904d1f846c61a080114Automatic Updater added an AP_MPMQ_MAX_DAEMON_USED to refer to the highest
4d813066e967a36c407ee641155ada0c614d4dc6Automatic Updater daemon index actually used in the scoreboard. I also
a6e1f63f50af688610ebd2521ba7f028767b51f3Mark Andrews updated the pertinent calls. [Paul J. Reder]
4d813066e967a36c407ee641155ada0c614d4dc6Automatic Updater *) Win32: Prevent listening sockets from being inherited by
4d813066e967a36c407ee641155ada0c614d4dc6Automatic Updater the Apache child process, CGI scripts, rotatelog process
f42fc714eda962112e45b904d1f846c61a080114Automatic Updater etc. If the Apache child process segfaults, any processes
f42fc714eda962112e45b904d1f846c61a080114Automatic Updater that the child started are not reaped. Prior to this fix,
f42fc714eda962112e45b904d1f846c61a080114Automatic Updater these processes inherited the listening sockets which sometimes
2cdbfcdad94eba75f3f8e77343a0eefabf553b8eAutomatic Updater prevented the restarted Apache child process from accepting
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater connections (ie, the server would hang).
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [Bill Stoddard]
4d813066e967a36c407ee641155ada0c614d4dc6Automatic Updater *) Provide vhost and request strings when ExtendedStatus is on.
1d4f4d2db2d69e48fec2dde5c1535853677d22a7Automatic Updater *) Fix some issues with the pod and prefork: check the pod *after*
f42fc714eda962112e45b904d1f846c61a080114Automatic Updater processing a connection so that a server processing a time-
44e3b272904bfd85556771d30cf1bc6fa539dd03Automatic Updater consuming request bails out as soon as practical; when the
f42fc714eda962112e45b904d1f846c61a080114Automatic Updater parent process wakes up a server process via connect(), use an
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User APR timeout on the connect() so that we don't hang for a long
4d813066e967a36c407ee641155ada0c614d4dc6Automatic Updater time if there aren't server processes around to do accept().
4d813066e967a36c407ee641155ada0c614d4dc6Automatic Updater [Jeff Trawick, Greg Ames]
f9666f4b6e4410b5f1a5ccae730e233313b96d18Mark Andrews *) Performance improvement to mod_mime.c. find_ct() in mod_mime,
6686505e3ae3289eea38002a3269828893532489Evan Hunt spends a lot of time in apr_table_get calls. Using the default
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User httpd.conf, the tables for languages and charsets are somewhat
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User large, so the time spent scanning them on each request is
b6561016dc8a813bfd91cef5b876b3dfc3f08ffaTinderbox User significant. Replacing the tables with hash tables provides
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User a nice speedup. [Brian Pane <bpane@pacbell.net>]
3f616e6f846be57b1717c6beaba0f74de9d5a7c6Automatic Updater *) Add two functions to allow modules to access random parts of the
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater scoreboard. This allows modules compiled for one MPM to access the
afaa290bb6acc504e93a0adbf20b6dd6c64e6d63Vernon Schryver scoreboard, even if it the server was compiled for another MPM.
bde1625cbc0256920625797a2cd4f05312f02ffaMark Andrews [Harrie Hazewinkel <harrie@covalent.net>]
ed52536a1722606f22332ba4f92cbb74c3b256d9Tinderbox UserChanges with Apache 2.0.20
b86a75e3ade957c80316e03e148a6969fc3179b9Automatic Updater *) Fix problem in content-length filter where the filter would
ed52536a1722606f22332ba4f92cbb74c3b256d9Tinderbox User buffer all the output from a CGI before sending any bytes
bde1625cbc0256920625797a2cd4f05312f02ffaMark Andrews down the filter stack to the network. This problem would cause
ed52536a1722606f22332ba4f92cbb74c3b256d9Tinderbox User significant memory consumption if the CGIs generated
afaa290bb6acc504e93a0adbf20b6dd6c64e6d63Vernon Schryver lots of bytes. [Bill Stoddard]
ed52536a1722606f22332ba4f92cbb74c3b256d9Tinderbox User *) Get non-blocking CGI pipe reads working with the bucket brigades.
ed52536a1722606f22332ba4f92cbb74c3b256d9Tinderbox User [Bill Stoddard]
afaa290bb6acc504e93a0adbf20b6dd6c64e6d63Vernon Schryver *) Fix seg fault on Windows when serving files cached with mod_file_cache.
ed52536a1722606f22332ba4f92cbb74c3b256d9Tinderbox User [Bill Stoddard]
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater *) Fix a bug in the threaded MPM that would cause it to kill off all
ed52536a1722606f22332ba4f92cbb74c3b256d9Tinderbox User workers immediately after starting if the number of workers started
5645e0c82a55b05abb975bd91b9566823dc5efb0Evan Hunt was above a certain threshold. [Ryan Bloom, Bill Stoddard]
ed52536a1722606f22332ba4f92cbb74c3b256d9Tinderbox UserChanges with Apache 2.0.19
ec8755f605d7dcb2de1076040e77bc2d7ec33b4aTinderbox User *) Fix problem with threaded MPM. The problem was that if each child
7e1a8f402e3881388db37152f71c698cb1f1c426Mark Andrews process was busy serving a single long-lived request and the server
7e1a8f402e3881388db37152f71c698cb1f1c426Mark Andrews was sent a graceful restart signal, the server would stop serving
7e1a8f402e3881388db37152f71c698cb1f1c426Mark Andrews requests. This would happen because each child process would wait to
7e1a8f402e3881388db37152f71c698cb1f1c426Mark Andrews die until the last thread was done, and the parent wouldn't spawn any
7e1a8f402e3881388db37152f71c698cb1f1c426Mark Andrews new children until a process died. Now, the parent looks at the fact
7e1a8f402e3881388db37152f71c698cb1f1c426Mark Andrews that the children are dying gracefully, and starts new children.
7e1a8f402e3881388db37152f71c698cb1f1c426Mark Andrews Those new children only start enough threads to compliment the number
7e1a8f402e3881388db37152f71c698cb1f1c426Mark Andrews of threads in the other child process that shares the same spot in
7e1a8f402e3881388db37152f71c698cb1f1c426Mark Andrews the scoreboard. In this way, we make sure to never go over
7e1a8f402e3881388db37152f71c698cb1f1c426Mark Andrews MaxClients. [Ryan Bloom]
7e1a8f402e3881388db37152f71c698cb1f1c426Mark Andrews *) modified mod_negotiation and mod_autoindex to speed up by almost a
7e1a8f402e3881388db37152f71c698cb1f1c426Mark Andrews factor of two on apr_dir_read()-enhanced platforms, such as Win32
7e1a8f402e3881388db37152f71c698cb1f1c426Mark Andrews and OS2, by calling ap_sub_request_lookup_dirent() with the results
7e1a8f402e3881388db37152f71c698cb1f1c426Mark Andrews already provided by apr_dir_read(). [William Rowe]
7e1a8f402e3881388db37152f71c698cb1f1c426Mark Andrews *) mod_file_cache is now more robust to filtering and serves requests
7e1a8f402e3881388db37152f71c698cb1f1c426Mark Andrews slightly more efficiently. [Cliff Woolley]
7e1a8f402e3881388db37152f71c698cb1f1c426Mark Andrews *) Fix problem handling FLUSH bucket in the chunked encoding filter.
7e1a8f402e3881388db37152f71c698cb1f1c426Mark Andrews Module was calling ap_rwrite() followed by ap_rflush() but the
7e1a8f402e3881388db37152f71c698cb1f1c426Mark Andrews served content was not being displayed in the browser. Inspection
7e1a8f402e3881388db37152f71c698cb1f1c426Mark Andrews of the output stream revealed that the first data chunk was
7e1a8f402e3881388db37152f71c698cb1f1c426Mark Andrews missing the trailing CRLF required by the RFC. [Bill Stoddard]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) apxs no longer generates ap_send_http_header() in the example handler
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Fix an ab problem which could cause a divide-by-zero exception
fd7c65dce9c2b1a3d12ca4df9074cd38019fdb5fAutomatic Updater with certain invocations (e.g., ab -k -c 6 -n 100 localhost/).
7a2a1b8b14fc804ac80612d7b98064095e445be5Automatic Updater [Ian Holsman <ianh@cnet.com>]
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews *) Solve case-insensitive platforms' confusion about negotiated
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews filenames, allowing files of differnt case to match in choosing
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews the document to serve. [William Rowe]
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews *) Fix brokenness when ThreadsPerChild is higher than the built-in
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews limit. We left ap_threads_per_child at the higher value which
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews led to segfaults when doing certain scoreboard operations.
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews [Jeff Trawick]
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews *) Fix seg faults and/or missing output from mod_include. The
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews default_handler was using the subrequest pool for files and
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews MMAPs, even though the associated APR structures typically
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews live longer than the subrequest. [Greg Ames]
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews *) Extend mod_setenvif to support specifying regular expressions
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews on the SetEnvIf (and SetEnvIfNoCase) directive attribute field.
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews Example: SetEnvIf ^TS* [a-z].* HAVE_TS
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews will cause HAVE_TS to be set if any of the request headers begins
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews with "TS" and has a value that begins with any character in the
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews set [a-z]. [Bill Stoddard]
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews *) httpd children now re-bind themselves to a random CPU on
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews multiprocessor systems on AIX via bindprocessor() in 2.0.
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews [Victor J. Orlikowski]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Fix htdigest. It would go into a loop in getline when adding
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User a second user. [Bill Stoddard]
ff8ec39ce4afc2d774ce99f2386474d2c8539cd4Automatic Updater *) Win32 platforms now fully support mod_userdir options. [Will Rowe]
ff8ec39ce4afc2d774ce99f2386474d2c8539cd4Automatic Updater *) Automatically generate httpd.exp for AIX.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User DSOs now work again on AIX in 2.0
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [Victor J. Orlikowski]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Add a new request hook, error_log. This phase allows modules
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater to act on the error log string _after_ it has been written
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater to the error log. The goal for this hook is to allow monitoring
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater modules to send the error string to the monitoring agent.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Modify mod_echo to make it use filters for input and output.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [Ryan Morgan <rmorgan@covalent.net>]
8aa53dcb1d26277e8e805464bfff7bb7136f60cbAutomatic Updater *) Extend mod_headers to support conditional driven Header
8aa53dcb1d26277e8e805464bfff7bb7136f60cbAutomatic Updater add, append and set. Use SetEnvIf to set an envar and conditionally
8aa53dcb1d26277e8e805464bfff7bb7136f60cbAutomatic Updater add/append/set headers based on this envar thusly:
8aa53dcb1d26277e8e805464bfff7bb7136f60cbAutomatic Updater SetEnvIf TSMyHeader value HAVE_TSMyHeader
8aa53dcb1d26277e8e805464bfff7bb7136f60cbAutomatic Updater Header add MyHeader "%t %D" env=HAVE_TSMyHeader
8aa53dcb1d26277e8e805464bfff7bb7136f60cbAutomatic Updater If the request contains header "TSMyHeader: value" then header
8aa53dcb1d26277e8e805464bfff7bb7136f60cbAutomatic Updater MyHeader: "t=xxxxxxxxxx D=yyyy" will be sent on the response.
8aa53dcb1d26277e8e805464bfff7bb7136f60cbAutomatic Updater [Bill Stoddard]
8aa53dcb1d26277e8e805464bfff7bb7136f60cbAutomatic Updater *) Extend mod_headers to support using format specifiers on Header
8aa53dcb1d26277e8e805464bfff7bb7136f60cbAutomatic Updater add, append and set header values. Two format specifiers are supported:
8aa53dcb1d26277e8e805464bfff7bb7136f60cbAutomatic Updater %t - reports, in UTC microseconds since the epoch, when the
8aa53dcb1d26277e8e805464bfff7bb7136f60cbAutomatic Updater request was received.
8aa53dcb1d26277e8e805464bfff7bb7136f60cbAutomatic Updater %D - reports the time, in microseconds, between when the request was
8aa53dcb1d26277e8e805464bfff7bb7136f60cbAutomatic Updater received and the response sent.
8aa53dcb1d26277e8e805464bfff7bb7136f60cbAutomatic Updater Header add MyHeader "This request served in %D microseconds. %t"
8aa53dcb1d26277e8e805464bfff7bb7136f60cbAutomatic Updater results in a header being added to the response that looks like this:
8aa53dcb1d26277e8e805464bfff7bb7136f60cbAutomatic Updater MyHeader: This request served in D=5438 microseconds. t=991424704447256
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [Bill Stoddard]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Fix reset_filter(). We need to be careful how we remove filters.
29b33908adf234dbe677e2c0e152e74e2b1be13dTinderbox User If we set r->output_filters to NULL, we also have to reset the
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User connection's filters. [John Sterling]
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User *) Optimise reset_filter() in http_protocol.c. [Greg Stein]
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User *) Add a check to ap_die() to make sure the filter stack is sane and
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User contains the correct basic filters when an error occurs. This fixes
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User a problem where headers are not being sent on error. [John Sterling]
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User *) New Header directive 'echo' option. "Header echo regex" will
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User cause any headers received on the request that match regex to be
059cd1994d4ac5c1b967ce777d2c7409dc829a42Tinderbox User echoed to (included in) the response headers.
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User [Bill Stoddard]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) include/ap_compat.h tested and set APR_COMPAT_H instead of AP_COMPAT_H.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User This prevented the inclusion of apr_compat.h. PR #7773
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Oleg Broytmann <phd@phd.pp.ru>]
fd7c65dce9c2b1a3d12ca4df9074cd38019fdb5fAutomatic Updater *) Moved util_uri to the apr-util library. This required a bunch of
fd7c65dce9c2b1a3d12ca4df9074cd38019fdb5fAutomatic Updater apr_name changes for the uri utility functions. [Justin Erenkrantz]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Move the addition of default AP_HTTP_HTTP_HEADER filters to the
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User insert_filter phase so that other filters are not bypassed by default.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [Graham Leggett]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Reimplement mod_headers as an output filter. mod_headers can now
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington add custom headers to inbound requests using the RequestHeader directive
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater and to responses using the same old Header directive. [Graham Leggett]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic UpdaterChanges with Apache 2.0.18
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Fix command-line processing so that if a bad argument is specified
fd7c65dce9c2b1a3d12ca4df9074cd38019fdb5fAutomatic Updater Apache will exit. [Jeff Trawick]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Change the make targets and rules to be consistent in all of the
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User Apache-owned source trees. [Roy Fielding]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Fix processing of the TRACE method. Previously we passed bogus
3e5340279d8875d136a4dd815cccad0044aa2644Automatic Updater parms to form_header_field() and it overlaid some vhost structures,
3e5340279d8875d136a4dd815cccad0044aa2644Automatic Updater resulting in a segfault in check_hostalias().
94d0b4bd411a66a2c5a7ebc8722579a59cf9640bAutomatic Updater [Greg Ames, Jeff Trawick]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Win32: Add support for reliable piped logs. If the logging process
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User goes down, Apache will automatically restart it. This function has
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User been part of Apache on Unix/Linux/BSD since the early v1.3 releases.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [Bill Stoddard]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Do not start piped log processes during the config file
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User preflight. This change also circumvents a problem on
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User Windows where the rotatelog processes created during preflight
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User was not getting cleaned up properly.
ace530234c82bbfcd03bbfd4ba6c6a04293d497fMark Andrews [Bill Stoddard]
f7a71eef29bcbf892270460269c79664f600cffdAutomatic Updater *) add "Request Phase Participation" info to mod_info
f7a71eef29bcbf892270460269c79664f600cffdAutomatic Updater [Doug MacEachern]
099b86fb8136a7dff81df85cf395978c16eb254cAutomatic Updater *) Make first phase changes to the scoreboard data structures in
f7a71eef29bcbf892270460269c79664f600cffdAutomatic Updater preparation for the rewriting of the scoreboard per my posted
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User design notes. [Paul J. Reder]
ace530234c82bbfcd03bbfd4ba6c6a04293d497fMark Andrews *) Fix httpd's definition of LTFLAGS to be consistent with that of apr
3f68e9c0e5a6ce475d15eef04bfed9b08a22afa9Tinderbox User and apr-util, allow it to be overridden by the configure command-line
dcd42a39d311b44877161ffd1e27fa62700c0171Mark Andrews (default="--silent") and introduce LT_LDFLAGS to replace what we were
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater formerly abusing as LTFLAGS. [Roy Fielding]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Clean up the reporting of incorrect closing container tags.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Barrie Slaymaker <barries@slaysys.com>]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Simplify the configure process by moving all libtool stuff to APR
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater and moving hints.m4 inline. [Roy Fielding]
3f68e9c0e5a6ce475d15eef04bfed9b08a22afa9Tinderbox User *) Add the AP_DECLARE()/AP_CORE_DECLARE macros on the return types
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater of functions used by mod_proxy for export in the DLL
3f68e9c0e5a6ce475d15eef04bfed9b08a22afa9Tinderbox User [Ian Holsman <IanH@cnet.com>]
3f68e9c0e5a6ce475d15eef04bfed9b08a22afa9Tinderbox User *) Prevent a hang when a cgi handled by mod_cgid tries to read a
3f68e9c0e5a6ce475d15eef04bfed9b08a22afa9Tinderbox User request body from its stdin but no reqest body is being written to
3f68e9c0e5a6ce475d15eef04bfed9b08a22afa9Tinderbox User the cgi. [Jeff Trawick]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) mod_log_config: %c connection status incorrectly logged
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington as "-" (non-keepalive) when MaxKeepAliveRequests is set to 0.
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington [Bill Stoddard]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Get mod_cern_meta working under Windows
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Bill Stoddard]
fd7c65dce9c2b1a3d12ca4df9074cd38019fdb5fAutomatic Updater *) Create Files, and thus MMAPs, out of the request pool, not the
63654fea53d6a58a65112234bc8d0c322e0c81b5Automatic Updater connection pool. This solves a small resource leak that had us
63654fea53d6a58a65112234bc8d0c322e0c81b5Automatic Updater not closing files until a connection was closed. In order to do
27aa770222192dda4ba4ff4b76defd4b8c846226Automatic Updater this, at the end of the core_output_filter, we loop through the
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User brigade and convert any data we have into a single HEAP bucket
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User that we know will survive clearing the request_rec.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [Ryan Bloom, Justin Erenkrantz <jerenkrantz@ebuilt.com>,
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater Cliff Woolley]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Completely revamp configure so that it preserves the standard make
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater variables CPPFLAGS, CFLAGS, CXXFLAGS, LDFLAGS and LIBS by moving
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater the configure additions to EXTRA_* variables. Also, allow the user
fd7c65dce9c2b1a3d12ca4df9074cd38019fdb5fAutomatic Updater to specify NOTEST_* values for all of the above, which eliminates the
fd7c65dce9c2b1a3d12ca4df9074cd38019fdb5fAutomatic Updater need for THREAD_CPPFLAGS, THREAD_CFLAGS, and OPTIM. Fix the setting
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User of INCLUDES and EXTRA_INCLUDES. Check flags as they are added to
b871c7156eb037d41f53828c6fcb9cc876128962Mark Andrews avoid pointless duplications. Fix the order in which flags are given
b871c7156eb037d41f53828c6fcb9cc876128962Mark Andrews on the compile and link lines. Remove obsolete macros APR_DOEXTRA,
b871c7156eb037d41f53828c6fcb9cc876128962Mark Andrews AC_ADD_LIBRARY, AC_CHECK_DEFINE, APACHE_PASSTHRU, and APACHE_ONCE.
b871c7156eb037d41f53828c6fcb9cc876128962Mark Andrews Added APR_SAVE_THE_ENVIRONMENT and APR_RESTORE_THE_ENVIRONMENT macros.
b871c7156eb037d41f53828c6fcb9cc876128962Mark Andrews Renamed AC_TYPE_RLIM_T macro to APACHE_TYPE_RLIM_T. [Roy Fielding]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Get mod_tls to compile/work better on Windows. PR #7612
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Bernhard Schrenk <b.schrenk@improx.com>]
b6561016dc8a813bfd91cef5b876b3dfc3f08ffaTinderbox User *) Fix shutdown/restart hangs in the threaded MPM.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Jeff Trawick, Greg Ames, Ryan Bloom]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Removed the keptalive boolean from conn_rec because it is now only
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater used by a single routine and can be replaced by a local variable.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Greg Stein, Ryan Bloom, Roy Fielding]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Patch prefork to put enough of the signal processing back in so that
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater signals are all handled properly now. The previous patch fixed the
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater deadlock race condition, but broke the user directed signal handling.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User This fixes it to work the way it did before my previous prefork patch
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User (primarily, SIGTERM is now working).
82447d835d3ff5c658749b4e9b4f66166407b3eaAutomatic Updater *) Change how input filters decide how much data is returned to the
82447d835d3ff5c658749b4e9b4f66166407b3eaAutomatic Updater higher filter. We used to use a field in the conn_rec, with this
82447d835d3ff5c658749b4e9b4f66166407b3eaAutomatic Updater change, we use an argument to ap_get_brigade to determine how much
82447d835d3ff5c658749b4e9b4f66166407b3eaAutomatic Updater data is retrieved. [Ryan Bloom]
fe84edc17e0d582cf7b4270f8df9d4742a107b1cAutomatic Updater *) Fix seg fault at start-up introduced by Ryan's change to enable
7169f76a893666eb20fc7750782e7f411db742d6Tinderbox User modules to specify their own logging tags. mod_log_config
7169f76a893666eb20fc7750782e7f411db742d6Tinderbox User registers an optional function, ap_register_log_handler().
e130ab53e992670e2a2ecf043976ac09f21358d1Automatic Updater ap_register_log_handler() was being called by http_core before
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater the directive hash table was created. This patch creates the
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater directive hash table before ap_register_log_handler() is
e130ab53e992670e2a2ecf043976ac09f21358d1Automatic Updater registered as an optional function.
82447d835d3ff5c658749b4e9b4f66166407b3eaAutomatic Updater [jean-frederic clere <jfrederic.clere@fujitsu-siemens.com>]
e130ab53e992670e2a2ecf043976ac09f21358d1Automatic Updater *) Add ap_set_int_slot() function
e130ab53e992670e2a2ecf043976ac09f21358d1Automatic Updater [John K. Sterling <sterling@covalent.net>]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Under certain circumstances, Apache did not supply the
fe84edc17e0d582cf7b4270f8df9d4742a107b1cAutomatic Updater right response headers when requiring authentication.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [Gertjan van Wingerde <Gertjan.van.Wingerde@cmg.nl>] PR#7114
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater (This is a port of the change that went into Apache 1.3.19.)
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Allow modules to specify their own logging tags. This basically
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater allows a module to tell mod_log_config that when %x is encountered
601c1908d06375f5dea00ab98671a6c934d8a840Automatic Updater a specific function should be called. Currently, x can be any single
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater character. It may be more useful to make this a string at some point.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox UserChanges with Apache 2.0.17
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) If a higher-level filter handles the the byterange aspects of a
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic Updater request, then the byterange filter should not try to redo the
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater work. The most common case of this happening, is a byterange
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater request going through the proxy, and the origin server handles
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater the byterange request. The proxy should ignore it.
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic Updater [Graham Leggett <minfrin@sharp.fm>]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Changed the threaded mpm to have child_main join to each of the
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic Updater worker threads to make sure the kids are all gone before child_main
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic Updater exits after a signal (cleanup from perform_idle_server_maintenance).
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User This is an extension of Ryans recent commit to make the child_main
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater the signal thread.
e130ab53e992670e2a2ecf043976ac09f21358d1Automatic Updater *) Add more options to the ap_mpm_query function. This also allows MPMs to
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater report if their threads are dynamic or static. Finally, this also
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User implements a new API, ap_show_mpm, which returns the MPM that was
e130ab53e992670e2a2ecf043976ac09f21358d1Automatic Updater required into the core. [Harrie Hazewinkel <harrie@covalent.net>]
17198e77b87667f796e910d31a4f47a80e256d09Mark Andrews *) Do not install the binaries from the support directory twice.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [jun-ichiro hagino <itojun@iijlab.net>]
c07cdac6cf5bf3e9affc1aed25f8350087691f1eAutomatic Updater *) The ap_f* functions should flush data to the filter that is passed
c07cdac6cf5bf3e9affc1aed25f8350087691f1eAutomatic Updater in, not the the filter after the one passed in.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [Ryan Morgan <rmorgan@covalent.net>]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Make ab work again by changing its native types to apr types and formats.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [Justin Erenkrantz <jerenkrantz@ebuilt.com>]
c07cdac6cf5bf3e9affc1aed25f8350087691f1eAutomatic Updater *) Move the byterange filter and all of the supporting functions back
c07cdac6cf5bf3e9affc1aed25f8350087691f1eAutomatic Updater to the HTTP module. The byterange filter turned out to be very
c07cdac6cf5bf3e9affc1aed25f8350087691f1eAutomatic Updater HTTP specific, and it belongs in the HTTP module. [Greg Stein]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Make clean, distclean, and extraclean consistently according to the
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User Gnu makefile guidelines. [Justin Erenkrantz <jerenkrantz@ebuilt.com>]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Fix errors in the renaming of the apr_threadattr_detach_xxx functions.
de73ef7ecdb9e009155993a6fa8dee5cd1bde319Mark Andrews This may have been causing problems stopping processes in the threaded
7c899ff8af55a6855100e7fb4f5dd9a0a04b48a0Automatic Updater mpm's. [Greg Ames]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Fix content-length in mod_negotiation to a long int representation.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [William Rowe]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Remove BindAddress from the default config file.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [giles@nemeton.com.au]
7c899ff8af55a6855100e7fb4f5dd9a0a04b48a0Automatic Updater *) Allow module authors to add a module to their Apache build using
7c899ff8af55a6855100e7fb4f5dd9a0a04b48a0Automatic Updater --with-module, without re-running buildconf. The syntax is:
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User --with-module=module_type:/path/to/module.c
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User The configure script will copy the module.c file to
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User modules/module_type, and it will be added to the relevant Makefiles.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User currently, this only works for static modules. [Ryan Bloom]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Changes required to make prefork clean up idle children properly.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User There was a window during which a starting worker deadlocks when
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User an idle cleanup arrives before it completes init. Apache then keeps
7c899ff8af55a6855100e7fb4f5dd9a0a04b48a0Automatic Updater trying to cleanup the same deadlocked worker forever (until higher
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater pids come along, but it still will never reduce below the deadlocked
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington pid). Thus the number of children would not reduce to the correct
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington idle level. [Paul J. Reder]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian WellingtonChanges with Apache 2.0.16
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Change the default installation directory to /usr/local/apache2,
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User as now defined by the "Apache" layout in config.layout. [Marc Slemko]
0df8ead472f207020f8da22a185fe4b945248ab8Automatic Updater *) OS/2: Added support for building loadable modules as OS/2 DLLs.
0df8ead472f207020f8da22a185fe4b945248ab8Automatic Updater [Brian Havard]
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews *) Get MaxRequestsPerChild working with the Windows MPM.
4d95e549ed8f84373e5eb7346a0c7ab7f3b0e9a8Automatic Updater [Bill Stoddard]
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews *) Make generic hooks to work, with mod_generic_hook_import/export
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews experimental modules. [Ben Laurie, Will Rowe]
f9119ad8f6114b2255e7545bf5cd187f4db0a89bAutomatic Updater *) Fix segfaults for configuration file syntax errors such as
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews "<Directory>" followed by "</Directory" and
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews "<Directory>" followed by "</Directoryz>". [Jeff Trawick]
71ba75c604df3604673232828a68bb28c420e698Mark Andrews *) Cleanup the --enable-layout option of configure. This makes
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews us use a consistent location for the config.layout file, and it
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews makes configure more portable.
dfd613f037c1385db661f17e086d34ea57fea9b0Automatic Updater [jun-ichiro hagino <itojun@iijlab.net>]
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews *) Changes to 'ab'; fixed int overrun's, added statistics, output in
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater csv/gnuplot format, rudimentary ssl support and various other tweaks
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater to make results more true to what is measured. The upshot of this it
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater turns out that 'ab' has often underreported the true performance of
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater apache. Often by a order of magnitude :-) See talk/paper of Sander
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater Temme <sctemme@covalent.net> at April ApacheCon 2001 for details.
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater [Dirk-Willem van Gulik]
56334ccb2d4b5a04fc12b70b5852049db5d24088Evan Hunt *) Clean up mod_cgid's temporary request pool. Besides fixing a
56334ccb2d4b5a04fc12b70b5852049db5d24088Evan Hunt storage leak this ensures that some unnecessary pipes are closed.
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater [Jeff Trawick]
f9119ad8f6114b2255e7545bf5cd187f4db0a89bAutomatic Updater *) Performance: Add quick_handler hook. This hook is called at the
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater very beginning of the request processing before location_walk,
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater translate_name, etc. This hook is useful for URI keyed content
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater caches like Mike Abbott's Quick Shortcut Cache.
7f79131f9a8e804b93c57f3c679065cce878b726Automatic Updater [Bill Stoddard]
7f79131f9a8e804b93c57f3c679065cce878b726Automatic Updater *) top_module global variable renamed to ap_top_module [Perl]
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson *) Move ap_set_last_modified to the core. This is a potentially
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater controversial change, because this is kind of HTTP specific. However
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater many protocols should be able to take advantage of this kind of
3a9593055ead76cbbb417aee2d2e656c2c92cf46Automatic Updater information. I expect that headers will need one more layer of
f9119ad8f6114b2255e7545bf5cd187f4db0a89bAutomatic Updater indirection for multi-protocol work, but this is a small step in
3a9593055ead76cbbb417aee2d2e656c2c92cf46Automatic Updater the right direction. [Ryan Bloom]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Enable mod_status by default. This matches what Apache 1.3 does.
7932a7637170550bc53b38c35db9a0187dcb3d3bAutomatic Updater *) Add a ScriptSock directive to the default config file. This is
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson only enabled when mod_cgid is used.
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson [Taketo Kabe <kabe@sra-tohoku.co.jp>]
3a9593055ead76cbbb417aee2d2e656c2c92cf46Automatic UpdaterChanges with Apache 2.0.15
59528addd704f8d5757b54e540520f74e588a7c7Automatic Updater *) Untangled the buildconf script and eliminated the need for build's
f262aa9daa94e94de066f1720a90cc2898af38fbAutomatic Updater aclocal.m4, generated_lists, build.mk, build2.mk, and a host of other
c3fd32ed29e9e419bb56583f4272a506773b1ea0Automatic Updater libtool muck that is now under srclib/apr/build. [Roy Fielding]
f262aa9daa94e94de066f1720a90cc2898af38fbAutomatic Updater *) Win32: Don't accept more connections than we have worker threads
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User [Bill Stoddard]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Fix bug in the Unix threaded.c MPM that allowed child processes
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User to fork() new child processes.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Bill Stoddard]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Fix a major security problem with double-reverse lookup checking.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User Previously, a client connecting over IPv4 would not be matched
8fca573ba41a1669fff64f234275e956551eb6e5Mark Andrews properly when the server had an IPv6 listening socket. PR #7407
8fca573ba41a1669fff64f234275e956551eb6e5Mark Andrews [Taketo Kabe <kiabe@sra-tohoku.co.jp>]
0ca8fddd5b5e26d8a05f0936fc4b2666a025b9c0Mark Andrews *) Change the way the beos MPM handles polling to allow it to stop and
8fca573ba41a1669fff64f234275e956551eb6e5Mark Andrews restart. Problem was the sockets being polled were being reset by
8fca573ba41a1669fff64f234275e956551eb6e5Mark Andrews the select call, so once it had accepted a connection it was no
8fca573ba41a1669fff64f234275e956551eb6e5Mark Andrews longer listening on the UDP socket we use for shutdown instructions.
0ca8fddd5b5e26d8a05f0936fc4b2666a025b9c0Mark Andrews APR needs to be altered, patch on it's way. [David Reid]
8fca573ba41a1669fff64f234275e956551eb6e5Mark Andrews *) Empty out the brigade shared by ap_getline()/ap_get_client_block()
c6517a807173827b8f638d31303805ee4c1d8054Automatic Updater on error exit from ap_getline(). Some other code got upset because
c6517a807173827b8f638d31303805ee4c1d8054Automatic Updater the wrong data was in the brigade. [Greg Ames, Jeff Trawick]
8fca573ba41a1669fff64f234275e956551eb6e5Mark Andrews *) Handle ap_discard_request_body() being called more than once.
8711e5c73ca872d59810760af0332194cbdd619bAutomatic Updater [Greg Ames, Jeff Trawick]
8711e5c73ca872d59810760af0332194cbdd619bAutomatic Updater *) Get rid of an inadvertent close of file descriptor 2 in
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User mod_mime_magic. [Greg Ames, Jeff Trawick]
1d4f4d2db2d69e48fec2dde5c1535853677d22a7Automatic Updater *) Add a hook, create_request. This hook allows modules to modify
8711e5c73ca872d59810760af0332194cbdd619bAutomatic Updater a request while it is being created. This hook is called for all
8711e5c73ca872d59810760af0332194cbdd619bAutomatic Updater request_rec's, main request, sub request, and internal redirect.
1d4f4d2db2d69e48fec2dde5c1535853677d22a7Automatic Updater When this hook is called, the the r->main, r->prev, r->next
8e9f3b69914ee02a80b87c97b1f8093edb3e9ae0Automatic Updater pointers have been set, so modules can determine what kind of
1d4f4d2db2d69e48fec2dde5c1535853677d22a7Automatic Updater request this is. [Ryan Bloom]
1d4f4d2db2d69e48fec2dde5c1535853677d22a7Automatic Updater *) Cleanup the build process a bit more. The Apache configure
1d4f4d2db2d69e48fec2dde5c1535853677d22a7Automatic Updater script no longer creates its own helper scripts, it just
821d2613356f81e5bb5c107288d6d5cf35c2a1e8Mark Andrews [jean-frederic clere <jfrederic.clere@fujitsu-siemens.com>]
821d2613356f81e5bb5c107288d6d5cf35c2a1e8Mark Andrews *) Stop the forced downgrade of the connection to HTTP/1.0 for
821d2613356f81e5bb5c107288d6d5cf35c2a1e8Mark Andrews proxy requests. [Graham Leggett]
821d2613356f81e5bb5c107288d6d5cf35c2a1e8Mark Andrews *) Avoid using sscanf to determine the HTTP protocol number in
821d2613356f81e5bb5c107288d6d5cf35c2a1e8Mark Andrews the common case because sscanf is a performance hog. From
821d2613356f81e5bb5c107288d6d5cf35c2a1e8Mark Andrews Mike Abbot's Accelerating Apache patch number 6.
821d2613356f81e5bb5c107288d6d5cf35c2a1e8Mark Andrews [Mike Abbot <mja@trudge.engr.sgi.com>, Bill Stoddard]
f7a71eef29bcbf892270460269c79664f600cffdAutomatic Updater *) Fix a security exposure in mod_access. Previously when IPv6
2fd1e3918971180155c10d09454a277f015daecaAutomatic Updater listening sockets were used, allow/deny-from-IPv4-address rules
f7a71eef29bcbf892270460269c79664f600cffdAutomatic Updater were not evaluated properly (PR #7407). Also, add the ability to
24bf1e02f03577db0feb50b80238c4150c96d05dAutomatic Updater specify IPv6 address strings with optional prefix length on Allow
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User and Deny. [Jeff Trawick]
24bf1e02f03577db0feb50b80238c4150c96d05dAutomatic Updater *) Enhance rotatelogs so that a UTC offset can be specified, and
8711e5c73ca872d59810760af0332194cbdd619bAutomatic Updater the logfile name can be formatted using strftime(3). (Brought
8711e5c73ca872d59810760af0332194cbdd619bAutomatic Updater forward from 1.3.) [Ken Coar]
8711e5c73ca872d59810760af0332194cbdd619bAutomatic Updater *) Reimplement the Windows MPM (mpm_winnt.c) to eliminate calling
8711e5c73ca872d59810760af0332194cbdd619bAutomatic Updater DuplicateHandle on an IOCompletionPort (a practice which
2ec4ab21838e218863d052ebfa3e106e04f50820Evan Hunt MS "discourages"). The new model does not rely on associating
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews the completion port with the listening sockets, thus the
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews completion port can be completely managed within the child
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews process. A dedicated thread accepts connections off the network,
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews then calls PostQueuedCompletionStatus() to wake up worker
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews threads blocked on the completion port.
aa1d397c4736cd86540555193d71e55fa3b37b2aMark Andrews [Bill Stoddard]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Bring forward the --suexec-umask option which allows the
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews builder to preset the umask for suexec processes. [Ken Coar]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Add a -V flag to suexec, which causes it to display the
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews compile-time settings with which it was built. (Only
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews usable by root or the AP_HTTPD_USER username.) [Ken Coar]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Mod_include should always unset the content-length if the file is
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews going to be passed through send_parsed_content. There is no to
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews determine if the content will change before actually scanning the
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews entire content. It is far safer to just remove the C-L as long
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews as we are scanning it. [Ryan Bloom]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Make sure Apache sends WWW-Authenticate during a reverse proxy
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews request and not Proxy-Authenticate.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews [Graham Leggett <minfrin@sharp.fm>]
4f087942583014b241adca1bc78c6db89ed96e94Mark AndrewsChanges with Apache 2.0.14
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Fix content-length computation. We ONLY compute a content-length if
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews We are not in a 1.1 request and we cannot chunk, and this is a keepalive
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews or we already have all the data. [Ryan Bloom]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Report unbounded containers in the config file. Previously, a typo
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews in the </container> directive could result in the rest of the config
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews file being silently ignored, with undesired defaults used.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews [Jeff Trawick]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Make the old_write filter use the ap_f* functions for the buffering.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews [Ryan Bloom]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Move more code from the http module into the core server. This
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews is core code, basically the default handler, the default input
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews and output filters, and all of the core configuration directives.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews All of this code is required in order for the server to work, with or
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews without HTTP. The server is closer to working without the HTTP
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews module, although there is still more to do. [Ryan Bloom]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Fix a number of SGI compile warnings throughout the server. Fix some
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews bad parameters to apr_bucket_read(). Fix a bad statement in
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews ap_method_in_list(). For the mod_rewrite cache use apr_time_t
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews consistently; we were mixing apr_time_t and time_t in invalid ways
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews before. In load_file(), call apr_dso_error() instead of
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews apr_strerror() so that we get a more specific string on some platforms.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews PR #6980 [Jeff Trawick]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Allow modules to query the MPM about it's execution profile. This
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews query API can and should be extended in the future, but for now,
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews max_daemons, and threading or forking is a very good start.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews [Jon Travis <jtravis@covalent.net>]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Modify mod_include to send blocks of data no larger than 9k.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews Without this, mod_include will wait until the whole file is parsed,
aa1d397c4736cd86540555193d71e55fa3b37b2aMark Andrews or the first tag is found to send any data to the client.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews [Paul J. Reder <rederpj@raleigh.ibm.com>]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Fix mod_info, so that <Directory> and <Location> directives are
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews not displayed twice when displaying the current configuration.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews [Ryan Morgan <rmorgan@covalent.net>]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Add config directives to override DEFAULT_ERROR_MSG and
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews DEFAULT_TIME_FORMAT. This was sent in as PR 6193.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews [Dan Rench <drench@xnet.com>]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Get mod_info building and loading on Win32. [William Rowe]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Begin to move protocol independant functions out of mod_http. The goal
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews is to have only functions that are HTTP specific in the http directory.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews [Ryan Bloom]
4f087942583014b241adca1bc78c6db89ed96e94Mark AndrewsChanges with Apache 2.0.13
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Don't assume that there will always be multiple calls to the byterange
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews filter. It is possible that we will need to do byteranges with only
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews one call to the filter. [Ryan Morgan <rmorgan@covalent.net>]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Move the error_bucket definition from the http module to the
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews core server. Every protocol will need this ability, not just
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews HTTP. [Ryan Bloom]
4f087942583014b241adca1bc78c6db89ed96e94Mark AndrewsChanges with Apache 2.0.12
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Modify mod_file_cache to save pre-formatted strings for
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews content-length and last-modified headers for performance.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews [Mike Abbot <mja@trudge.engr.sgi.com>]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Namespace protect IOBUFSIZ since it is exposed in the API.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews [Jon Travis <jtravis@covalent.net>]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Use "Basic" authentication instead of "basic" in ab, as the spec
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews says we should. [Andre Breiler <andre.breiler@rd.bbc.co.uk>]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Fix a seg fault in mod_userdir.c. We used to use the pw structure
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews without ever filling it out. This fixes PR 7271.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews [Taketo Kabe <kabe@sra-tohoku.co.jp> and
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews Cliff Woolley <cliffwoolley@yahoo.com>]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Add a couple of GCC attribute tags to printf style functions.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews [Jon Travis <jtravis@covalent.net>]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Add the correct language tag for interoperation with the Taiwanese
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews versions of MSIE and Netscape. [Clive Lin <clive@CirX.ORG>] PR#7142
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Migrate the perchild MPM to use the new apr signal child, and
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews APR thread functions. [Ryan Bloom]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Close one copy of the CGI's stdout before creating the new process.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews The CGI will still have stdout, because we have already dup'ed it.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews This keeps Apache from waiting forever to send the results of a CGI
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews process that has forked a long-lived child process.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews [Taketo Kabe <kabe@sra-tohoku.co.jp>]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Remove the rest of the pthreads functions from the threaded MPM.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews This requires the APR support for a signal thread that was just
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews added. [Ryan Bloom]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Make mod_dir use a fixup for sending a redirect to the browser.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews Before this, we were using a handler, which doesn't make much
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews sense, because the handler wasn't generating any data, it would
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews either return a redirect error code, or DECLINED. This fits the
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews current hooks better. [Ryan Morgan <rmorgan@covalent.net>]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Make the threaded MPM use APR threads instead of pthreads.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews [Ryan Bloom]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Get mod_tls to the point where it actually appears to work in all cases.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews [Ben Laurie]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) implement --enable-modules and --enable-mods-shared for "all" and
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews "most". [Greg Stein]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Move the threaded MPM to use APR locks instead of pthread locks.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews [Ryan Bloom]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Rename mpmt_pthread to threaded. This is more in line with the
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews fact that mpmt_pthread shouldn't be using pthreads directly, and
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews it is a smaller name that doesn't tie into anything.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews [Ryan Bloom]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Rename the module structures so that the exported symbol matches
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews the file name, and it is easier to automate the installation
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews process (generating LoadModule directives from the module filenames).
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews [Martin Kraemer]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Remove the coalesce filter. With the ap_f* functions, this filter
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews is no longer needed. [Ryan Bloom]
4f087942583014b241adca1bc78c6db89ed96e94Mark AndrewsChanges with Apache 2.0.11
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Remove the dexter MPM. Perchild is the same basic idea, but it has the
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews added feature of allowing a uid/gid per child process. If no
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews uid/gid is specified, then Perchild behaves exactly like dexter.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews [Ryan Bloom]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Get perchild building again. [Ryan Bloom]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Don't disable threads just because we are using the prefork MPM.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews If somebody wants to compile without threads, they must now add
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews --disable-threads to the configure command line. [Ryan Bloom]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Begin to move the calls to update_child_status into common code, so
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews that each individual MPM does not need to update the scoreboard itself.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews [Ryan Bloom]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Allow mod_tls to compile under Unix boxes where openssl has been
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews installed to the system include files.
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews [Gomez Henri <new-httpd@slib.fr>]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Cleanup the mod_tls configure process. This should remove any need
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews to hand-edit any files. We require OpenSSL 0.9.6 or later, but
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews configure doesn't check that yet. [Ryan Bloom]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Add a very early prototype of SSL support (in mod_tls.c). It is
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews vital that you read modules/tls/README before attempting to build
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews it. [Ben Laurie]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Fix a potential seg fault on all platforms. David Reid fixed this
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews on BEOS, but the problem could happen anywhere, so we don't want
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews to #ifdef it. [Cliff Woolley <cliffwoolley@yahoo.com>]
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews *) Add new LogFormat directive, %D, to log time it takes to serve a
4f087942583014b241adca1bc78c6db89ed96e94Mark Andrews request in microseconds. [Bill Stoddard]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Change AddInputFilter and AddOutputFilter to SetInputFilter and
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User SetOutputFilter. This corresponds nicely with the other Set
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User directives, which operate on containers while the Add* directives
a7038d1a0513c8e804937ebc95fc9cb3a46c04f5Mark Andrews tend to work directly on extensions. [Ryan Bloom]
a7038d1a0513c8e804937ebc95fc9cb3a46c04f5Mark Andrews *) Cleanup the header handling a bit. This uses the apr_brigade_*
aa1d397c4736cd86540555193d71e55fa3b37b2aMark Andrews functions for the buffering so that we don't need to compute
a7038d1a0513c8e804937ebc95fc9cb3a46c04f5Mark Andrews the length of the headers before we actually create the header
a7038d1a0513c8e804937ebc95fc9cb3a46c04f5Mark Andrews buffer. [Ryan Bloom]
a7038d1a0513c8e804937ebc95fc9cb3a46c04f5Mark Andrews *) Allow filters to buffer data using the ap_f* functions. These have
a7038d1a0513c8e804937ebc95fc9cb3a46c04f5Mark Andrews become macros that resolve directly to apr_brigade_*.
a7038d1a0513c8e804937ebc95fc9cb3a46c04f5Mark Andrews [Ryan Bloom]
a7038d1a0513c8e804937ebc95fc9cb3a46c04f5Mark Andrews *) Get the Unix MPM's to do a graceful restart again. If we are going
a7038d1a0513c8e804937ebc95fc9cb3a46c04f5Mark Andrews to register a cleanup with ap_cleanup_scoreboard, then we have to
a7038d1a0513c8e804937ebc95fc9cb3a46c04f5Mark Andrews kill the cleanup with the same function, and that function can't be
a7038d1a0513c8e804937ebc95fc9cb3a46c04f5Mark Andrews static. [Ryan Bloom]
a7038d1a0513c8e804937ebc95fc9cb3a46c04f5Mark Andrews *) Install all required header files. Without these, it was not
a7038d1a0513c8e804937ebc95fc9cb3a46c04f5Mark Andrews possible to compile some modules outside of the server.
a7038d1a0513c8e804937ebc95fc9cb3a46c04f5Mark Andrews [Ryan Bloom]
35bc7055d1b9b816e68a4180d46a49963e45c233Automatic Updater *) Fix the AliasMatch directive in Apache 2.0. When we brought a patch
a7038d1a0513c8e804937ebc95fc9cb3a46c04f5Mark Andrews forward from 1.3 to 2.0, we missed a single line, which broke regex
a7038d1a0513c8e804937ebc95fc9cb3a46c04f5Mark Andrews aliases. [Ryan Bloom]
78cb74fab4665da2e2641ba909c6f59f74cc4193Automatic Updater *) We have a poor abstraction in the protocol. This is a temporary
97669cab1f7e6f953dbf39ef1b2c4206ecb50d9eAutomatic Updater hack to fix the bug, but it will need to be fixed for real. If
97669cab1f7e6f953dbf39ef1b2c4206ecb50d9eAutomatic Updater we find an error while sending out a custom error response, we back
97669cab1f7e6f953dbf39ef1b2c4206ecb50d9eAutomatic Updater up to the first non-OK request and send the data. Then, when we send
97669cab1f7e6f953dbf39ef1b2c4206ecb50d9eAutomatic Updater the EOS from finalize_request_protocol, we go to the last request,
97669cab1f7e6f953dbf39ef1b2c4206ecb50d9eAutomatic Updater to ensure that we aren't sending an EOS to a request that has already
97669cab1f7e6f953dbf39ef1b2c4206ecb50d9eAutomatic Updater received one. Because the data is sent on a different request than
97669cab1f7e6f953dbf39ef1b2c4206ecb50d9eAutomatic Updater the EOS, the error text never gets sent down the filter stack. This
97669cab1f7e6f953dbf39ef1b2c4206ecb50d9eAutomatic Updater fixes the problem by finding the last request, and sending the data
97669cab1f7e6f953dbf39ef1b2c4206ecb50d9eAutomatic Updater with that request. [Ryan Bloom]
97669cab1f7e6f953dbf39ef1b2c4206ecb50d9eAutomatic Updater *) Make the server status page show the correct restart time, and
97669cab1f7e6f953dbf39ef1b2c4206ecb50d9eAutomatic Updater thus the proper uptime. [Ryan Bloom]
97669cab1f7e6f953dbf39ef1b2c4206ecb50d9eAutomatic Updater *) Move the CGI creation logic from mod_include to mod_cgi(d). This
97669cab1f7e6f953dbf39ef1b2c4206ecb50d9eAutomatic Updater should reduce the amount of duplicate code that is required to
97669cab1f7e6f953dbf39ef1b2c4206ecb50d9eAutomatic Updater create CGI processes.
aa1d397c4736cd86540555193d71e55fa3b37b2aMark Andrews [Paul J. Reder <rederpj@raleigh.ibm.com>]
309b912841e8b97bf0b0df0d96c3eaf16990c080Automatic Updater *) ap_new_connection() closes the socket and returns NULL if a socket
66d24a46538c7c2d29fdb5611ab1173e83685b1dTinderbox User call fails. Usually this is due to a connection which has been
66d24a46538c7c2d29fdb5611ab1173e83685b1dTinderbox User reset. [Jeff Trawick]
e4757e3dafe50ae59f693eec828f68c42c197a70Andreas Gustafsson *) Move the Apache version information out of httpd.h and into release.h.
754ebd37e782356aedbb2987e3c1a8ab4f29574eMark Andrews This is in preparation for the first tag with the new tag and release
754ebd37e782356aedbb2987e3c1a8ab4f29574eMark Andrews system. [Ryan Bloom]
66d24a46538c7c2d29fdb5611ab1173e83685b1dTinderbox User *) Begin restructuring scoreboard code to enable adding back in
94df856897945fe58f130ba78765c57308bc5400Automatic Updater the ability to use IPC other than shared memory.
5c679dbb66df92766f6a7e7bb93c18d61275d1feMark Andrews Get mod_status working on Windows again. [Bill Stoddard]
5c679dbb66df92766f6a7e7bb93c18d61275d1feMark Andrews *) Make mod_status work with 2.0. This will work for prefork,
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater mpmt_pthread, and dexter. [Ryan Bloom]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Correct a typo in httpd.conf.
aa1d397c4736cd86540555193d71e55fa3b37b2aMark Andrews [Kunihiro Tanaka <tanaka@apache.or.jp>] PR#7154
a7038d1a0513c8e804937ebc95fc9cb3a46c04f5Mark Andrews *) Really fix mod_rewrite map lookups this time. [Tony Finch]
da93950363b307b718d156514b95b9df93a63776Mark Andrews *) Get the correct IP address if ServerName isn't set and we can't
da93950363b307b718d156514b95b9df93a63776Mark Andrews find a fully-qualified domain name at startup.
35bc7055d1b9b816e68a4180d46a49963e45c233Automatic Updater PR#7170 [Danek Duvall <dduvall@eng.sun.com>]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Make mod_cgid work with SuExec. [Ryan Bloom]
f6056ad06781c95198505ae3a361e6dd98df4b91Automatic Updater *) Adopt apr user/group name features for mod_rewrite. Eliminates some
1d4f4d2db2d69e48fec2dde5c1535853677d22a7Automatic Updater 'extra' stat's for user/group since they should never occur, and now
f6056ad06781c95198505ae3a361e6dd98df4b91Automatic Updater resolves the SCRIPT_USER and SCRIPT_GROUP, including on WinNT NTFS
e23256e740b238bddb4ba41ffac5f81a01c92245Automatic Updater volumes. [William Rowe]
1d4f4d2db2d69e48fec2dde5c1535853677d22a7Automatic Updater *) Adopt apr features to simplify mod_includes. This changes the
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater behavior of the USER_NAME variable, unknown uid's are now reported
1d4f4d2db2d69e48fec2dde5c1535853677d22a7Automatic Updater as USER_NAME="<unknown>" rather than the old user#000 result.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater WinNT now resolves USER_NAME on NTFS volumes. [William Rowe]
f8e61212a1b83e60f521577cc522e8bc1509c8cfAutomatic Updater *) Adopt apr features for simplifing mod_userdir, and accept the new
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater Win32/OS2 exceptions without hiccuping. [William Rowe]
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater *) Replace configure --with-optim option by using and saving the
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater environment variable OPTIM instead. This is needed because configure
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater options do not support multiple flags separated by spaces.
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater [Roy Fielding]
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater *) Fix some byterange handling. If we get a byte range that looks like
f8e61212a1b83e60f521577cc522e8bc1509c8cfAutomatic Updater "-999999" where that is past the end of the file, we should return
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater a PARTIAL CONTENT status code, and return the whole file as one big
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater byterange. This matches the 1.3 handling now. [Ryan Bloom]
78d7186253dfed549ec0ce2d7c2b08a7978ede9cAutomatic Updater *) Make the error bucket a real meta-data bucket. This means that the
78d7186253dfed549ec0ce2d7c2b08a7978ede9cAutomatic Updater bucket length is 0, and a read returns NULL data. If one of these
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater buckets is passed down after the headers are sent, this data will
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater just be ignored. [Greg Stein]
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater *) The prefork MPM wasn't killing child processes correctly if a restart
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater signal was received while the process was serving a request. The child
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater process would become the equivalent of a second parent process. If
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater we break out of the accept loop, then we need to do die after cleaning
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater up after ourselves. [Ryan Bloom]
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater *) Change the Prefork MPM to use SIGWINCH instead of SIGUSR1 for graceful
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater restarts. [Ryan Bloom]
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater *) Modify the apr_stat/lstat/getfileinfo calls within apache to use
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater the most optimal APR_FINFO_wanted bits. This spares Win32 from
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater performing very expensive owner, group and permission lookups
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater and allows the server to function until these apr_finfo_t fields
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater are implemented under Win32. [William Rowe]
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater *) Support for typedsafe optional functions - that is functions exported by
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater optional modules, which, therefore, may or may not be present, depending
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater on configuration. See the experimental modules mod_optional_fn_{ex,im}port
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater for sample code. [Ben Laurie]
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater *) filters can now report an HTTP error to the server. This is done
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater by sending a brigade where the first bucket is an error_bucket.
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater This bucket is a simple bucket that stores an HTTP error and
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater a string. Currently the string is not used, but it may be needed
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater to output an error log. The http_header_filter will find this
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater bucket, and output the error text, and then return
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater AP_FILTER_ERROR, which informs the server that the error web page
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater has already been sent. [Ryan Bloom]
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater *) If we get an error, then we should remove all filters except for
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater those critical to serving a web page. This fixes a bug, where
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater error pages were going through the byterange filter, even though
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater that made no sense. [Ryan Bloom]
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater *) Relax the syntax checking of Host: headers in order to support
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater iDNS. PR#6635 [Tony Finch]
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater *) Cleanup the byterange filter to use the apr_brigade_partition
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater and apr_bucket_copy functions. This removes a lot of very messy
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater code, and hopefully makes this filter more stable.
78d7186253dfed549ec0ce2d7c2b08a7978ede9cAutomatic Updater *) Remove AddModule and ClearModuleList directives. Both of these
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater directives were used to ensure that modules could be enabled
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater in the correct order. That requirement is now gone, because
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater we use hooks to ensure that modules are in the correct order.
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater *) When SuExec is specified, we need to add it to the list of
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater targets to be built. If we don't, then any changes to the
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater configuration won't affect SuExec, unless 'make suexec' is
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater specifically run. [Ryan Bloom]
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater *) Cleaned out open_file from mod_file_cache, as apr now accepts
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater the APR_XTHREAD argument to open a file for consumption by
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater parallel threads on win32. [William Rowe]
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater *) Correct a bug in determining when we follow symlinks. The code
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater expected a stat -1 result, not an apr_status_t positive error.
78d7186253dfed549ec0ce2d7c2b08a7978ede9cAutomatic Updater Also check if the APR_FINFO_USER fields are valid before we
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater follow the link. [William Rowe]
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater *) Move initgroupgs, ap_uname2id and ap_gname2id from util.c to
0b580e05aec89f501a9c20cc00ceb42d043d3928Automatic Updater mpm_common.c. These functions are only valid on some platforms,
78d7186253dfed549ec0ce2d7c2b08a7978ede9cAutomatic Updater so they should not be in the main-line code. [Ryan Bloom]
0b580e05aec89f501a9c20cc00ceb42d043d3928Automatic Updater *) Remove ap_chdir_file(). This function is not thread-safe,
f8e61212a1b83e60f521577cc522e8bc1509c8cfAutomatic Updater and nobody is currently using it. [Ryan Bloom]
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater *) Do not try to run make depend if there are no .c files in the
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater current directory, doing so makes `make depend` fail.
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater *) Update highperformance.conf to work with either prefork or
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater pthreads mpms. [Greg Ames]
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater *) Stop checking to see if this is a pipelined request if we know
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater for a fact that it isn't. Basically, if r->connection->keepalive == 0.
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater This keeps us from making an extra read call when serving a 1.0
f8e61212a1b83e60f521577cc522e8bc1509c8cfAutomatic Updater request. [Ryan Bloom and Greg Stein]
f8e61212a1b83e60f521577cc522e8bc1509c8cfAutomatic Updater *) Fix the handling of variable expansion look-ahead in mod_rewrite,
782b50b4ebbd48d570831f66d8ffc550e0db340cAutomatic Updater i.e. syntax like %{LA-U:REMOTE_USER}, and also fix the parsing of
f8e61212a1b83e60f521577cc522e8bc1509c8cfAutomatic Updater more complicated nested RewriteMap lookups. PR#7087 [Tony Finch]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Fix the RFC number mentioned when complaining about a missing
c6a0f4ae1d7183a16ffb196b86b647f870694796Automatic Updater Host: header. PR#7079 [Alexey Toptygin <alexeyt@wam.umd.edu>]
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater *) Fix an endless loop in ab which occurred when ab was posting
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater and the server dropped the connection unexpectedly.
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater [Jeff Trawick]
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater *) Fix a segfault while handling request bodies in ap_http_filter().
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater This problem has been seen with mod_dav usage as well as with
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater requests where the body was just being discarded. [Jeff Trawick]
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater *) Some adjustment on the handling and automatic setting (via
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater hints.m4) of various compilation flags (eg: CFLAGS). Also,
09091b4f0f69cca36f74a291fa3eb496686aeb1eAutomatic Updater add the capability to specify flags (NOTEST_CFLAGS and
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User NOTEST_LDFLAGS) which are used to compile Apache, but
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews not used during the configuration process. Useful for
4ea3649f028ea6a1e42377082a7ccf8f789fb950Automatic Updater flags like "-Werror". [Jim Jagielski]
644973f327e9db74779e7c0426db90909173b284Automatic Updater *) Stop using environment variables to force debug mode or
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User no detach. We now use the -D command line argument to
418cc932318b1d67f88a36904d88d8a5a0a2ba09Automatic Updater specify the correct mode. -DONE_PROCESS and -DNO_DETACH.
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater [Greg Stein, Ryan Bloom]
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater *) Change handlers to use hooks. [Ben Laurie]
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater *) Stop returning copies of filenames from both apr_file_t and
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater apr_dir_t. We pstrdup the filenames that we store in the
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater actual structures, so we don't need to pstrdup the strings again.
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater *) mod_cgi: Fix some problems where the wrong error value was being
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater traced. [Jeff Trawick]
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater *) EBCDIC: Fix some missing ASCII conversion on some protocol data.
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater [Jeff Trawick]
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater *) Add generic hooks. [Ben Laurie]
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater *) Use a real pool to dup the error log descriptor. [Ryan Bloom]
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater *) Fix a segfault caused by mod_ext_filter when the external filter
7349698120e3f6f51162a2fdb5613f9aecbc78c3Automatic Updater program does not exist. [Jeff Trawick]
dc11390a658e02e1a03accd4dbe14c94fa9de556Automatic Updater *) Fix an output truncation error when on an HTTP >= 1.0 request an
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews object of size between DEFAULT_BUCKET_SIZE and AP_MIN_BYTES_TO_WRITE
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews was served through mod_charset_lite (or anything else that would
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews create a transient bucket in this size range). ap_bucket_make_heap()
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews silently failed (fixed), transient_setaside() discovered it, but
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews ap_save_brigade() ignored it (fixed). [Jeff Trawick]
90863a6f9bfb06062c7fdf269bb675e7b674fc31Mark Andrews *) Ignore \r\n or \n when using PEEK mode for input filters. The problem
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews is that some browsers send extra lines at the end of POST requests, and
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews we don't want to delay sending data back to the user just because the
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews browser isn't well behaved. [Ryan Bloom]
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews *) Get SuEXEC working again. We can't send absolute paths to suExec
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews because it refuses to execute those programs. SuEXEC also wasn't
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews always recognizing configuration changes made using the autoconf
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews setup. [Ryan Bloom]
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews *) Allow the buildconf process to find the config.m4 files in the correct
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews order. Basically, we can now name config.m4 files as config\d\d.m4,
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews and we will sort them correctly when inserting them into the build
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews process. [Ryan Bloom]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Get mod_cgid to use apr calls for creating the actual CGI process.
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews This also allows mod_cgid to use ap_os_create_priviledged_process,
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews thus allowing for SuExec execution from mod_cgid. Currently, we do
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater not support everything that standard SuExec supports, but at least
68e1b398b5b1b417723e90b5e52b9148f8f93294Automatic Updater it works minimally now. [Ryan Bloom]
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews *) Allow SuExec to be configured from the ./configure command line.
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews [Ryan Bloom]
45eca3a5d46ed15aee14d81f6cb6c9fb6f365344Mark Andrews *) Update some of the docs in README and INSTALL to reflect some of
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User the changes in Apache 2.0 [Cliff Woolley <cliffwoolley@yahoo.com>]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) If we get EAGAIN returned from the call to apr_sendfile, then we
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater need to call sendfile again. This gets us serving large files
45eca3a5d46ed15aee14d81f6cb6c9fb6f365344Mark Andrews such as apache_2.0a9.tar.gz on FreeBSD again. [Ryan Bloom]
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews *) Get the support programs building cleanly again.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [Cliff Woolley <cliffwoolley@yahoo.com>]
872a5b83f68b8058945298715b0fa53442aad52fAutomatic Updater *) The Apache/Win32 Apache.exe and dll's now live in bin. The
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews current directory logic now backs up over bin/ to determine the
bdcada7d31335e05ebca757eb789e57166fb2a02Tinderbox User server root from the Apache.exe path.
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews *) Apache/Win32 now follows the standard conventions of mod_foo.so
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews loadable modules, dynamic libs are all named libfoo.dll, and the
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User makefile.win populates the include, lib and libexec directories.
7a2a1b8b14fc804ac80612d7b98064095e445be5Automatic Updater *) Apache is now IPv6-capable. On systems where APR supports IPv6,
7a42357217528037bdfedcb17eeebfe96ae4266aAutomatic Updater Apache gets IPv6 listening sockets by default. Additionally, the
a7038d1a0513c8e804937ebc95fc9cb3a46c04f5Mark Andrews Listen, NameVirtualHost, and <VirtualHost> directives support IPv6
e007e3e5b0316c6c05698a71101885743aca22bdAutomatic Updater numeric address strings (e.g., "Listen [fe80::1]:8080").
068a66979695c77359e7a9181bb3f831c965b21cMark Andrews [Jeff Trawick]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Modify the install directory layout. Modules are now installed in
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington modules/. Shared libraries should be installed in libraries/, but
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington we don't have any of those on Unix yet. All install directories
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington are modifyable at configure time. [Ryan Bloom]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Install all header files in the same directory on Unix. [Ryan Bloom]
9e3a7b0faf417a10f5f689edf288807b2d5eedc5Brian Wellington *) Get the functions in server/linked into the server, regardless of
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User which modules linked into the server. This uses the same hack
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User for Apache that we use for APR and apr-util to ensure all of the
cff0e0b52cf0928123bad6f3bccf56e22bbc07f5Automatic Updater necessary functions are linked. As a part of thise, the CHARSET_EBCDIC
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater was renamed to AP_CHARSET_EBCDIC for namespace protection, and to make
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater the scripts a bit easier.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Rework the RFC1413 handling to make it thread-safe, use a timeout
c28a1243429dfaf8dc5f6c1db0dccdc6ce386baeMark Andrews on the query, and remove IPv4 dependencies. [Jeff Trawick]
aa1d397c4736cd86540555193d71e55fa3b37b2aMark Andrews *) Get all of the auth modules to the point that they will install and
aa1d397c4736cd86540555193d71e55fa3b37b2aMark Andrews be loadable into the server. Our new build/install mechanism expects
5f7e0eb1cb917b788906d3e2aa01bfc4885dcae4Mark Andrews that all modules will have a common name format. The auth modules
bf1263835e8e35421960f65088c043f42aacef13Mark Andrews didn't use that format, so we didn't install them properly.
15ae68f3db8261770fc33b8e0f83f5d8c7021e84Mark Andrews [Ryan Bloom]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) API routines ap_pgethostbyname() and ap_pduphostent() are no longer
2bb3422dc683c013db7042f5736240de6b86f182Automatic Updater available. Use apr_getaddrinfo() instead. [Jeff Trawick]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Get "NameVirtualHost *" working in 2.0. [Ryan Bloom]
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) Return HTTP_RANGE_NOT_SATISFIABLE if the every range requested starts
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User after the end of the response. [Ryan Bloom]
f262aa9daa94e94de066f1720a90cc2898af38fbAutomatic Updater *) Get byterange requests working with responses that do not have a
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User content-length. Because of the way byterange requests work, we have to
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater have all of the data before we can actually do the byterange, so we
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User can compute the content-length in the byterange filter.
59528addd704f8d5757b54e540520f74e588a7c7Automatic Updater *) Get exe CGI's working again on Windows.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Allan Edwards]
2f60dbd3787caa91e8ab1d7ae39ea312ad5ba31fAutomatic Updater *) Get mod_cgid and mod_rewrite to work as DSOs by changing the way
10640b2e3efc7bc8034108136d7487f7407fbf37Andreas Gustafsson they keep track of whether or not their post config hook has been
02973ab41430678c285ef7ae6d1183003469a3bcAutomatic Updater called before. Instead of a static variable (which is replaced when
10640b2e3efc7bc8034108136d7487f7407fbf37Andreas Gustafsson the DSO is loaded a second time), use userdata in the process pool.
02973ab41430678c285ef7ae6d1183003469a3bcAutomatic Updater [Jeff Trawick]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox UserChanges with Apache 2.0a9
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User *) Win32 now requires perl to complete the final install step for users
bf46736ab182c4663beb5a08cb2ebf7c364e0aa9Automatic Updater to build + install on Win32. Makefile.win now rewrites @@ServerRoot@
9c446b72069d0ab9f710502f4d7048e50875fccbAutomatic Updater and installs the conf, htdocs and htdocs/manual directories.
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User [William Rowe]
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater *) Make mod_include use a hash table to associate directive tags with
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User functions. This allows modules to implement their own SSI tags easily.
a01aa536188bb3535dfc1107a623e6355a8e6b7cMark Andrews The idea is simple enough, a module can insert it's own tag and function
f7369b2881b5e63d69600adcedc8ba938303d30cTinderbox User combination into a hash table provided by mod_include. While mod_include
1d4f4d2db2d69e48fec2dde5c1535853677d22a7Automatic Updater parses an SSI file, when it encounters a tag in the file, it does a
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater hash lookup to find the function that implements that tag, and passes
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User all of the relevant data to the function. That function is then
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater responsible for processing the tag and handing the remaining data back
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater to mod_include for further processing.
e130ab53e992670e2a2ecf043976ac09f21358d1Automatic Updater [Paul J. Reder <rederpj@raleigh.ibm.com>]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Get rid of ap_new_apr_connection(). ap_new_connection() now has
e130ab53e992670e2a2ecf043976ac09f21358d1Automatic Updater fewer parameters: the local and remote socket addresses were removed
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User from the parameter list because all required information is available
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User via the APR socket. [Jeff Trawick]
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User *) Distribution directory structure reorganized to reflect a
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater normal source distribution with external install targets.
e130ab53e992670e2a2ecf043976ac09f21358d1Automatic Updater [Roy Fielding]
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User *) The MPMs that need multiple segments of shared memory now create
bb93c8542756719b53096b9939e4041d0966026fAutomatic Updater two apr_shmem_t variables, one for each shared memory allocation.
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User the problem is that we can't determine how much memory will be required
a01aa536188bb3535dfc1107a623e6355a8e6b7cMark Andrews for shared memory allocations once we try to allocate more than one
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater variable. The MM code automatically aligns the shared memory allocations,
59528addd704f8d5757b54e540520f74e588a7c7Automatic Updater so we end up needing to pad the amount of shared memory we want based
59528addd704f8d5757b54e540520f74e588a7c7Automatic Updater on how many variables will be allocated out of the shared memory segment.
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater It is just easier to create a second apr_shmem_t variable, and two
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews shmem memory blocks.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Cleanup the export list a bit. This creates a single unified list of
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User functions exported by APR. The export list is generated at configure
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater time, and that list is then used to generate the exports.c file.
9c446b72069d0ab9f710502f4d7048e50875fccbAutomatic Updater Because of the way the export list is generated, we only export those
bea3208b417a0700bd524807082875b7d09585e4Automatic Updater functions that are valid on the platform we are building on.
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User *) Enable logging the cookie with mod_log_config
a01aa536188bb3535dfc1107a623e6355a8e6b7cMark Andrews [Sander van Zoest <sander@covalent.net>]
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater *) Fix a segfault in mod_info when it reaches the end of the configuration.
1d4f4d2db2d69e48fec2dde5c1535853677d22a7Automatic Updater [Jeff Trawick]
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User *) Added lib/aputil/ as a placeholder for utility functions which are not
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater specific to the Apache HTTP Server (but do not make sense with APR).
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater The first utility is "apu_dbm": a set of functions to work with DBM
478d64f58f5ce7a5e3ea08426d72faca8427c96dAutomatic Updater files. This first version can be compiled for SDBM or GDBM databases.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Complete re-write of mod_include. This makes mod_include a filter that
ead8aa3182c5805fccb6c7c1636cede6a24a5fc1Automatic Updater uses buckets directly. This has now served the FAQ correctly.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User [Paul Reder <rederpj@raleigh.ibm.com>]
02b3e44a996e9753d86306b6a1b6b579a73787fcTinderbox User *) Allow modules to specify the first filter in a sub_request when
5ecad47f69b3fd945472ab2900a9ff826a7ce2f6Automatic Updater making the sub_request. This keeps modules from having to change the
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater output_filter immediately after creating the sub-request, and therefore
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater skip the sub_req_output_filter. [Ryan Bloom]
5ecad47f69b3fd945472ab2900a9ff826a7ce2f6Automatic Updater *) Update ab to accept URLs with IPv6 literal address strings (in the
dd65eb1efb40b1c47d57963192bfc54873b219beAutomatic Updater format described in RFC 2732), and to build Host header fields in
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater the same format. This allows IPv6 literal address strings to be
8c6328ab5890aa79d84b86ed672e185dc111bb68Automatic Updater used with ab. This support has been tested against Apache 1.3 with
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User the KAME patch, but Apache 2.0 does not yet work with this format
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater of the Host header field. [Jeff Trawick]
59528addd704f8d5757b54e540520f74e588a7c7Automatic Updater *) Accomodate an out-of-space condition in the piped logs and the
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic Updater rotatelogs.c code, and no longer churn log processes for this
8e9f3b69914ee02a80b87c97b1f8093edb3e9ae0Automatic Updater condition. [Victor J. Orlikowski]
3f616e6f846be57b1717c6beaba0f74de9d5a7c6Automatic Updater *) Add support for partial writes with apr_sendfile() to core_output_filter.
9d9d2b1450380caab764a1254c1687f0613fc94aAutomatic UpdaterChanges with Apache 2.0a8
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Add a directive to mod_mime so that filters can be associated with
59528addd704f8d5757b54e540520f74e588a7c7Automatic Updater a given mime-type.
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User *) Get multi-views working again. We were setting the path_info
7af91d15b2ce1ce32f7320f6d5cc3b83621c241aAutomatic Updater field incorrectly if we couldn't find the specified file.
ca904804e43f663f08eb1ac9d6d617930b9a3cd3Automatic Updater *) Fix 304 processing. The core should never try to send the headers
7f814b8b164ae04916a8487cdc5e88ee3ff51a58Automatic Updater down the filter stack. Always, just setup the table in the request
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater record, and let the header filter convert it to data that is ready
713a5e3080f112b3efde9235e9c92035056ff966Automatic Updater for the network.
f7369b2881b5e63d69600adcedc8ba938303d30cTinderbox User *) More fixes for the proxy. There are still bugs in the proxy code,
3e5340279d8875d136a4dd815cccad0044aa2644Automatic Updater but this has now proxied www.yahoo.com and www.ntrnet.net (my ISP)
be46cb4bee9253ee4832340c719920642e00c41aTinderbox User *) Fix params for apr_getaddrinfo() call in connect proxy handler.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User [Chuck Murcko]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) APR: Add new apr_getopt_long function to handle long options.
dd65eb1efb40b1c47d57963192bfc54873b219beAutomatic Updater [B. W. Fitzpatrick <fitz@red-bean.com>]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) APR: Change apr_connect() to take apr_sockaddr_t instead of hostname.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater Add generic apr_create_socket(). Add apr_getaddrinfo() for doing
66cf4a406525db9c42977d8034a60e0a8e2a9290Automatic Updater hostname resolution/address string parsing and building
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater apr_sockaddr_t. Add apr_get_sockaddr() for getting the address
572cb2c1c931f6bc6a4a019c103ae88239b0eb96Automatic Updater of one of the apr_sockaddr_t structures for a socket. Change
02b3e44a996e9753d86306b6a1b6b579a73787fcTinderbox User apr_bind() to take apr_sockaddr_t. [David Reid and Jeff Trawick]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Remove the BUFF from the HTTP proxy. This is still a bit ugly, but
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User I have proxied pages with it, cleanup will commence soon.
a01aa536188bb3535dfc1107a623e6355a8e6b7cMark Andrews *) Make the proxy work with filters. This isn't perfect, because we
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User aren't dealing with the headers properly. [Ryan Bloom]
0c4a369f10d0bdfe63caa42bb1913859dd349f21Automatic Updater *) Do not send a content-length iff the C-L is 0 and this is a head
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater request. [Ryan Bloom]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Make cgi-bin work as a regular directory when using mod_vhost_alias
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User with no VirtualScriptAlias directives. PR#6829 [Tony Finch]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Remove BUFF from the PROXY connect handling. [Ryan Bloom]
2bb3422dc683c013db7042f5736240de6b86f182Automatic Updater *) Get the default_handler to stop trying to deal with HEAD requests.
e130ab53e992670e2a2ecf043976ac09f21358d1Automatic Updater The idea is to let the content-length filter compute the C-L before
a308b69ac66fadf66863484f301314d6e6a3f1d2Automatic Updater we try to send the data. If we can get the C-L correctly, then we
dd65eb1efb40b1c47d57963192bfc54873b219beAutomatic Updater should send it in the HEAD response.
e007e3e5b0316c6c05698a71101885743aca22bdAutomatic Updater *) The Header filter can now determine if a body should be sent based
3e79333aa37d3b88959372431a02af8a3eb7cfd9Automatic Updater on r->header_only. The general idea of this is that if we delay
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic Updater deciding to send the body, then we might be able to compute the
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User content-length correctly, which will help caching proxies to cache
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User our data better. Any handler that doesn't want to try to compute
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User the content-length can just send an EOS bucket without data and
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User everything will just work.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Add the referer to the error log if one is available.
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews [Markus Gyger <mgyger@itr.ch>]
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User *) Mod_info.c has now been ported to Apache 2.0. As a part of this
351eca011cf38fd3272b325029afce144a9a1ebaMark Andrews change, the root of the configuration tree has been exposed to modules
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User as ap_conftree.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Ryan Morgan <rmorgan@covalent.net>]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Get the core_output_filter to use the bucket interface directly.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User This keeps us from calling the content-length filter multiple times
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User for a simple static request.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) We are sending the content-type correctly now.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Ryan Bloom and Will Rowe]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) APR on FreeBSD: Fix a bug in apr_sendfile() which caused us to report
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User a bogus bytes-sent value when the only thing being sent was trailers
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater and writev() returned an error (or EAGAIN). [Jeff Trawick]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Get SINGLE_LISTEN_UNSERIALIZED_ACCEPT working again. This uses the
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater hints file to determine which platforms define
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater SINGLE_LISTEN_UNSERIALIZED_ACCEPT.
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater *) APR: add apr_get_home_directory() [Jeff Trawick]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Initial import of 1.3-current mod_proxy. [Chuck Murcko]
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater *) Not all platforms have INADDR_NONE defined by default. Apache
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater used to make this check and define INADDR_NONE if appropriate,
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User but APR needs the check too, and I suspect other applications will
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater as well. APR now defines APR_INADDR_NONE, which is always a valid
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User value on all platforms.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Branko �ibej <brane@xbc.nu>]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Destroy the pthread mutex in lock_intra_cleanup() for PR#6824.
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater [Shuichi Kitaguchi <ki@hh.iij4u.or.jp>]
3f616e6f846be57b1717c6beaba0f74de9d5a7c6Automatic Updater *) Relax the syntax checking of Host: headers in order to support
59b277af9d9aac08d16be63aed5ae60ac9eef0d5Automatic Updater iDNS. PR#6635 [Tony Finch]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) When reading from file buckets we convert to an MMAP if it makes
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater sense. This also simplifies the default handler because the
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater default handler no longer needs to try to create MMAPs.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) BUFF has been removed from the main server. The BUFF code will remain
dd65eb1efb40b1c47d57963192bfc54873b219beAutomatic Updater in the code until it has been purged from the proxy module as well.
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater *) Byteranges have been completely re-written to be a filter. This
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater has been tested, and I believe it is working correctly, but it could
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater doesn't work for the Adobe Acrobat plug-in. The output almost matches
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater the output from 1.3, the only difference being that 1.3 includes
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater a content-length in the response, and this does not.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) APR read/write functions and bucket read functions now operate
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater on unsigned integers, instead of signed ones. It doesn't make
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater any sense to use signed ints, because we return the error codes,
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater so if we have an error we should report 0 bytes read or written.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Always compute the content length, whether it is sent or not.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User The reason for this, is that it allows us to correctly report
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User the bytes_sent when logging the request. This also simplifies
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater content-length filter a bit, and fixes the actual byte-reporing
59528addd704f8d5757b54e540520f74e588a7c7Automatic Updater *) Remove AP_END_OF_BRIGADE definition. This does not signify what
7af91d15b2ce1ce32f7320f6d5cc3b83621c241aAutomatic Updater it says, because it was only used by EOS and FLUSH buckets. Since
3f616e6f846be57b1717c6beaba0f74de9d5a7c6Automatic Updater neither of those are required at the end of a brigade, this was
1b670d35282f1b9352692ad212be3c0aa97b0689Automatic Updater really signifying FLUSH_THE_DATA, but that can be determined better
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User by checking AP_BUCKET_IS_EOS() or AP_BUCKET_IS_FLUSH. EOS and FLUSH
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater buckets now return a length of 0, which is actually the amount of data
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater read, so they make more sense.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Allow the core_output_filter to save some data past the end of a
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater request. If we get an EOS bucket, we only send the data if it
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater makes sense to send it. This allows us to pipeline request
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater responses. As a part of this, we also need to allocate mmap
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater buckets out of the connection pool, not the request pool. This
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater allows the mmap to outlive the request.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Make blocking and non-blocking bucket reads work correctly for
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater sockets and pipes. These are the only bucket types that should
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater have non-blocking reads, because the other bucket types should
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User ALWAYS be able to return something immediately.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) In the Apache/Win32 console window, accept Ctrl+C to stop the
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater server, but use Ctrl+Break to initiate a graceful restart
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater instead of duplicating behavior. [John Sterling]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Patch mod_autoindex to set the Last-Modified header based on
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User the directory's mtime, and add the ETag header. [William Rowe]
7169f76a893666eb20fc7750782e7f411db742d6Tinderbox User *) Merge the 1.3 patch to add support for logging query string in
7169f76a893666eb20fc7750782e7f411db742d6Tinderbox User such a way that "%m %U%q %H" is the same as "%r".
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater [Bill Stoddard]
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater *) Port three log methods from mod_log_config 1.3 to 2.0:
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater CLF compliant '-' byte count, method and protocol.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User [Bill Stoddard]
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater *) Add a new LogFormat directive, %c, that will log connection
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater status at the end of the response as follows:
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater 'X' - connection aborted before the response completed.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater '+' - connection may be kept-alive by the server.
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater '-' - connection will be closed by the server.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Bill Stoddard]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Expand APR for WinNT to fully accept and return utf-8 encoded
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater Unicode file names and paths for Win32, and tag the Content-Type
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater from mod_autoindex to reflect that charset if the the feature
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater macro APR_HAS_UNICODE_FS is true. [William Rowe]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Compute the content length (and add appropriate header field) for
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater the response when no content length is available and we can't use
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater chunked encoding. [Jeff Trawick]
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater *) Changed ap_discard_request_body() to use REQUEST_CHUNKED_DECHUNK,
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater so that content input filters get dechunked data when using
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater the default handler. Also removed REQUEST_CHUNKED_PASS.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Sascha Schumann]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Add mod_ext_filter as an experimental module. This module allows
979e02d122cddf1624cca8a4dab8d084c900fa48Automatic Updater the administrator to use external programs as filters. Currently,
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater only filtering of output is supported. [Jeff Trawick]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Most Apache functions work on EBCDIC machines again, as protocol
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater data is now translated (again). [Jeff Trawick]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Introduce ap_xlate_proto_{to|from}_ascii() to clean up some of
7af91d15b2ce1ce32f7320f6d5cc3b83621c241aAutomatic Updater the EBCDIC support. They are noops on ASCII machines, so this
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User type of translation doesn't have to be surrounded by #ifdef
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater CHARSET_EBCDIC. [Jeff Trawick]
e2e3f655d133f08056c9035412d4c013aab234e7Automatic Updater *) Fix mod_include. tag commands work again, and the server will
52cfbde0bd391cfb37e3c1a1b460c16ba6bf1a73Automatic Updater send the FAQ again. This also allows mod_include to set aside
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User buckets that include partial buckets.
a01aa536188bb3535dfc1107a623e6355a8e6b7cMark Andrews [Ryan Bloom and David Reid]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Add suexec support back. [Manoj Kasichainula]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Lingering close now uses the socket directly instead of using
dd65eb1efb40b1c47d57963192bfc54873b219beAutomatic Updater BUFF. This has been tested, but since all we can tell is that it
0d3490f93bb980fde704055e74c1b508987a5fe4Mark Andrews doesn't fail, this needs to be really hacked on.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Allow filters to modify headers and have those headers be sent to
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User the client. The idea is that we have an http_header filter that
099b86fb8136a7dff81df85cf395978c16eb254cAutomatic Updater actually sends the headers to the network. This removes the need
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User for the BUFF to send headers.
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) Charset translation: mod_charset_lite handles translation of
66cf4a406525db9c42977d8034a60e0a8e2a9290Automatic Updater request bodies. Get rid of the xlate version of ap_md5_digest()
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User since we don't compute digests of filtered (e.g., translated)
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User response bodies this way anymore. (Note that we don't do it at
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User all at the present; somebody needs to write a filter to do so.)
f7369b2881b5e63d69600adcedc8ba938303d30cTinderbox User [Jeff Trawick]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Input filters and ap_get_brigade() now have a input mode parameter
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic Updater (blocking, non-blocking, peek) instead of a length parameter.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Update the mime.types file to the registered media types as
a01aa536188bb3535dfc1107a623e6355a8e6b7cMark Andrews of 2000-10-19. PR#6613 [Carsten Klapp <carsten.klapp@home.net>,
42c81cf2de732ec6d00e73fc755a399ca037e543Mark Andrews *) Namespace protect some macros declared in ap_config.h
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Support HTTP header line folding with input filtering.
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) Mod_include works again. This should still be re-written, but at
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater least now we can serve an SHTML page again.
71fc4775d04aea66809e3eb5b5159c55413bdc5cMark Andrews [Ryan Bloom]
71fc4775d04aea66809e3eb5b5159c55413bdc5cMark Andrews *) Begin to remove BUFF from the core. Currently, we keep a pointer
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater to both the BUFF and the socket in the conn_rec. Functions that
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater want to use the BUFF can, functions that want to use the socket,
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater can. They point to the same place.
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) apr_psprintf doesn't understand %lld as a format. Make it %ld.
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater [Tomas "�gren" <stric@ing.umu.se>]
66cf4a406525db9c42977d8034a60e0a8e2a9290Automatic Updater *) APR pipes on Unix and Win32 are now cleaned up automatically when the
66cf4a406525db9c42977d8034a60e0a8e2a9290Automatic Updater associated pool goes away. (APR pipes on OS/2 were already had this
66cf4a406525db9c42977d8034a60e0a8e2a9290Automatic Updater logic.) This resolvs a fatal file descriptor leak with CGIs.
66cf4a406525db9c42977d8034a60e0a8e2a9290Automatic Updater [Jeff Trawick]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) The final line of the config file was not being read if there was
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User no \n at the end of it. This was caused by apr_fgets returning
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User APR_EOF even though we had read valid data. This is solved by
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User making cfg_getline check the buff that was returned from apr_fgets.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User If apr_fgets return APR_EOF, but there was data in the buf, then we
66cf4a406525db9c42977d8034a60e0a8e2a9290Automatic Updater return the buf, otherwise we return NULL.
da24e725ff982595d74da7e75e9fbd6a696367ccAutomatic Updater *) Piped logs work again in the 2.0 series.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Restore functionality broken by the mod_rewrite security fix:
5b10b473e94d11cddac29340317ec3ad2a856598Automatic Updater rewrite map lookup keys and default values are now expanded
a01aa536188bb3535dfc1107a623e6355a8e6b7cMark Andrews so that the lookup can depend on the requested URI etc.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User PR #6671 [Tony Finch]
e4757e3dafe50ae59f693eec828f68c42c197a70Andreas Gustafsson *) Tighten up the syntax checking of Host: headers to fix a
e4757e3dafe50ae59f693eec828f68c42c197a70Andreas Gustafsson security bug in some mass virtual hosting configurations
992616aaf75643a0c9f84826f0a1ed5a27e84328Mark Andrews that can allow a remote attacker to retrieve some files
66cf4a406525db9c42977d8034a60e0a8e2a9290Automatic Updater on the system that should be inaccessible. [Tony Finch]
e4757e3dafe50ae59f693eec828f68c42c197a70Andreas Gustafsson *) Add a pool bucket type. This bucket is used for data allocated out
765c97d56ccddc9d7904c7d9ff2e2d825d9687e4Automatic Updater of a pool. If the pool is cleaned before the bucket is destroyed, then
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater the data is converted to a heap bucket, allowing it to survive the
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User death of the pool.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Add a flush bucket. This allows modules to signal that the filters
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User should all flush whatever data they currently have. There is no way
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User to actually force them to do this, so if a filter ignores this bucket,
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User that's life, but at least we can try with this.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Add an output filter for sub-requests. This filter just strips the
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User EOS bucket so that we don't confuse the main request's core output
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User filter by sending multiple EOS buckets. This change also makes sub
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User requests start to send EOS buckets when they are finished.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Make ap_bucket_(read|destroy|split|setaside) into macros. Also
47ff70af9e842bf0f69d209433995216f560fe4aAutomatic Updater makes ap_bucket_destroy a return void, which is okay because it
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User used to always return APR_SUCCESS, and nobody ever checked its
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User return value anyway.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User [Cliff Woolley <cliffwoolley@yahoo.com>]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Remove the index into the bucket-type table from the buckets
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User structure. This has now been replaced with a pointer to the
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User bucket_type. Also add some macros to test the bucket-type.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Renamed all MODULE_EXPORT symbols to AP_MODULE_DECLARE and all symbols
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User for CORE_EXPORT to AP_CORE_DECLARE (namespace protecting the wrapper)
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User and retitled API_EXPORT as AP_DECLARE and APR_EXPORT as APR_DECLARE.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User All _VAR_ flavors changes to _DATA to be absolutely clear.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User [William Rowe]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Add support for /, //, //servername and //server/sharename
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User parsing of <Directory> blocks under Win32 and OS2.
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater [Tim Costello, William Rowe, Brian Harvard]
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater *) Remove the function pointers from the ap_bucket type. They have been
da24e725ff982595d74da7e75e9fbd6a696367ccAutomatic Updater replaced with a global table. Modules are allowed to register bucket
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater types and use then use those buckets.
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater *) mod_cgid: In the handler, shut down the Unix socket (only for write)
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater once we finish writing the request body to the cgi child process;
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater otherwise, the client doesn't hit EOF on stdin. Small request bodies
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater worked without this change (for reasons I don't understand), but large
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User ones didn't. [Jeff Trawick]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Remove file bucket specific information from the ap_bucket type.
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater This has been moved to a file_bucket specific type that hangs off
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater the data pointer in the ap_bucket type.
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater *) Input filtering now has a third argument. This is the amount of data
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater to read from lower filters. This argument can be -1, 0, or a positive
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater number. -1 means give me all the data you have, I'll deal with it and
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User let you know if I need more. 0 means give me one line and one line
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater only. A positive number means I want no more than this much data.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User Currently, only 0 and a positive number are implemented. This allows
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User us to remove the remaining field from the conn_rec structure, which
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User has also been done.
09091b4f0f69cca36f74a291fa3eb496686aeb1eAutomatic Updater *) Big cleanup of the input filtering. The goal is that http_filter
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater understands two conditions, headers and body. It knows where it is
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater based on c->remaining. If c->remaining is 0, then we are in headers,
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater and http_filter returns a line at a time. If it is not 0, then we are
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater in body, and http_filter returns raw data, but only up to c->remaining
faa406d25d1d73b04a1351d1e62ab55557ed61ebAutomatic Updater bytes. It can return less, but never more.
55aec75784a22e9d06d52b2b8a7d5aa42d31dc00Automatic Updater [Greg Ames, Ryan Bloom, Jeff Trawick]
7af91d15b2ce1ce32f7320f6d5cc3b83621c241aAutomatic Updater *) mod_cgi: Write all of the request body to the child, not just what
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater the kernel would accept on the first write. [Jeff Trawick]
93bd88e172a36b549938bce1731df7c10a8f3fb5Automatic Updater *) Back out the change that moved the brigade from the core_output_filters
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater ctx to the conn_rec. Since all requests over a given connection
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater go through the same core_output_filter, the ctx pointer has the
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater correct lifetime.
7af91d15b2ce1ce32f7320f6d5cc3b83621c241aAutomatic Updater *) Fix another bug in the send_the_file() read/write loop. A partial
b4cebdb6ccde66a8f3e397a1b90b0cf788519d69Automatic Updater send by apr_send would cause unsent data in the read buffer to
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User get clobbered. Complete making send_the_file handle partial
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User writes to the network.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [Bill Stoddard]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Fix a couple of type fixes to allow compilation on AIX again
67f4b01f01bc7fd1ddf938be8367f6b0ce29a520Automatic Updater [Victor J. Orlikowski <v.j.orlikowski@gte.net>]
3c02671513da2af836b985c5e70c8e44583359afAutomatic Updater *) Fix bug in send_the_file() which causes offset to be ignored
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater if there are no headers to send.
7f79131f9a8e804b93c57f3c679065cce878b726Automatic Updater [Bill Stoddard]
7af91d15b2ce1ce32f7320f6d5cc3b83621c241aAutomatic Updater *) Handle APR_ENOTIMPL returned from apr_sendfile in the core
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater filter. Useful for supporting Windows 9* with a binary
47ff70af9e842bf0f69d209433995216f560fe4aAutomatic Updater compiled on Windows NT.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Bill Stoddard]
f7a71eef29bcbf892270460269c79664f600cffdAutomatic UpdaterChanges with Apache 2.0a7
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Reimplement core_output_filter to buffer/save bucket brigades
59528addd704f8d5757b54e540520f74e588a7c7Automatic Updater across multiple calls to the core_filter. The brigade will be
7f79131f9a8e804b93c57f3c679065cce878b726Automatic Updater sent when either MIN_BYTES_TO_SEND or MAX_IOVEC_TO_WRITE
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater thresholds are hit or the EOS bucket is received.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Bill Stoddard]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Create experimental filter (buffer_filter) that coalesces bytes
59528addd704f8d5757b54e540520f74e588a7c7Automatic Updater into one large buffer before invoking the next filter in the
59528addd704f8d5757b54e540520f74e588a7c7Automatic Updater chain. This filter is particularly useful with the current
b871c7156eb037d41f53828c6fcb9cc876128962Mark Andrews implementation of mod_autoindex when it inserted above the
7af91d15b2ce1ce32f7320f6d5cc3b83621c241aAutomatic Updater chunk_filter. mod_autoindex generates a lot of brigades that
b4cebdb6ccde66a8f3e397a1b90b0cf788519d69Automatic Updater containing buckets holding just a few bytes each. The
b4cebdb6ccde66a8f3e397a1b90b0cf788519d69Automatic Updater buffer_filter coalesces these buckets into a single large bucket.
19b3dc94bce93fa76bd7e066f9298630dbc9dcb4Automatic Updater [Bill Stoddard]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Add apr_sendfile() support into the core_output_filter.
7af91d15b2ce1ce32f7320f6d5cc3b83621c241aAutomatic Updater [Bill Stoddard]
83d29eff2912ef967596eb5ed148de7668b35564Automatic Updater *) Add apr_sendv() support into the core_output_filter.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Bill Stoddard]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Fix mod_log_config so that it compiles cleanly with BUFFERED_LOGS
71bd43eebd9d6e42dbcae62b730f5b6508d5acd8Automatic Updater [Mike Abbott <mja@sgi.com>]
f9119ad8f6114b2255e7545bf5cd187f4db0a89bAutomatic Updater *) Remove ap_send_fb. This is no longer used in Apache, and it doesn't
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User make much sense, because Apache uses buckets instead of BUFFs now.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) send_the_file now falls back to a read/write loop on platforms that
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User do not have sendfile.
59528addd704f8d5757b54e540520f74e588a7c7Automatic Updater [Ryan Bloom and Brian Havard]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Install apachectl correctly, and substitute the proper values so
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater that it works again. [Ryan Bloom]
9d80d23172c30fd63e5046a7e69b8445e564ff31Automatic Updater *) Better(??) handle platforms that lack sendfile().
59528addd704f8d5757b54e540520f74e588a7c7Automatic Updater [Jim Jagielski]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) APR now has UUID generation/formatting/parsing support.
59528addd704f8d5757b54e540520f74e588a7c7Automatic Updater *) Begin the http_filter. This is an input filter that understands
faa406d25d1d73b04a1351d1e62ab55557ed61ebAutomatic Updater the absolute basic amount required to parse an HTTP Request. The
7f79131f9a8e804b93c57f3c679065cce878b726Automatic Updater goal is to be able to split headers from request body before passing
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater the data back to the other filters.
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater *) Bring forward from 1.3.13 the config directory implementation
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Jim Jagielski]
b4cebdb6ccde66a8f3e397a1b90b0cf788519d69Automatic Updater *) install apxs if it is created
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Added APR_IS_STATUS_condition test macros to eliminate canonical error
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User conversions. [William Rowe]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Now that we have ap_add_input_filter(), rename ap_add_filter() to
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater ap_add_output_filter(). [Jeff Trawick]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Multiple build and configuration fixes
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User Build process:
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User -add datadir and localstatedir substitutions
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User -fix layout name
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater -fix logfilename misspelling
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater -fix evaluation of installation dir variables and
90ff38a0d8deaf5f9c2aa5916d99b2e572d28738Automatic Updater -replace $foobar by $(foobar) to be usefull in the makefile
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater Cross compile:
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater -add rules for cross-compiling in rules.mk. Okay, rule to check for
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater $CC_FOR_BUILD is still missing
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater -use CHECK_TOOL instead of CHECK_PROG for ranlib
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User -add missing "AR=@AR@" to severaly Makefile.in's
b4cebdb6ccde66a8f3e397a1b90b0cf788519d69Automatic Updater -cache result for "struct rlimit"
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User -compile all helper programs with native and cross compiler
1368e4b34cef64604c874fcc40201c78e548714cTinderbox User and use the native version to generate header file
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User ["R�diger" Kuhlmann <Tadu@gmx.de>]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Prepare our autoconf setup for autoconf 2.14a and for cross-
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User ["R�diger" Kuhlmann <Tadu@gmx.de>]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Fix a bug where a client which only sends \n to delimit header
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User lines (netcat) gets a strange looking HTTP_NOT_IMPLEMENTED
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater message. Start working on ebcdic co-existance with input
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [William Rowe, Greg Ames]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) If mod_so is enabled in the server always create libexec, even
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User if there are no modules installed in this directory. This is a
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater requirement for APXS to work correctly.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Connection oriented output filters are now stored in the
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater conn_rec instead of the request_rec. This allows us to add the
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater output filter in the pre-connection phase instead of the
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater post_read_request phase, which keeps us from trying to write an
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater error page before we have a filter to write to the network.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Ryan Bloom, Jeff Trawick, and Greg Ames]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Cleaning up an mmap bucket no longer deletes the mmap. An
681beefc668253b3e469a1de282fbc33a3752422Automatic Updater mmap can be used across multiple buckets (default_handler with
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User byte ranges, mod_file_cache, mod_mmap_static), so cleanup of
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User the mmap itself can't be associated with the bucket.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [Jeff Trawick]
b16e2045ac28229c31f1ea3ebad15cbcb13e1d24Automatic Updater *) Add .dll caching directive ISAPICacheFile to mod_isapi.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [William Rowe]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Radical surgery to improve mod_isapi support under Win32.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User Includes a number of newer ServerSupportFunction calls, support
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater for ReadClient (in order to retrieve POSTs greater than 48KB),
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater and general bug fixes to more reliably load ISAPI .dll's and
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater prevent leaking handle resources. Note: There are still
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater discrepancies between IIS's and Apache's ServerVariables, and
71bfd0968456cc0c69fd400d2dafd02977c649d2Tinderbox User async calls are still not supported. Additional warnings are
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater logged to facilitate debugging of unsupported ISAPI calls.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [William Rowe]
dd65eb1efb40b1c47d57963192bfc54873b219beAutomatic Updater *) Add input filtering to Apache. The basic idea for the input
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater filters is the same as the ideas for output filters. The biggest
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater difference is that instead of calling ap_pass_brigade, ap_get_brigade
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater should be called, and the order of execution for the filter itself is
66cf4a406525db9c42977d8034a60e0a8e2a9290Automatic Updater different. When writing an output filter, a brigade is passed in,
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User and filters operate directly on that brigade, when done, they call
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater ap_pass_brigade. Input filters are the exact opposite. Because input
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User is not a push operation, filters first call ap_get_brigade. When this
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User function returns, the input filter will be left with a valid brigade.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User The input filter should then operate on the brigade, and return.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Fix building on BSD/OS using its native make. The build system
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User falls back to the BSD .include directive on that host platform.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Sascha Schumann]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Expand dbmmanage to allow -d -m -s -p options for Crypt, MD5,
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater SHA1 and plaintext password encodings. Make feature tests a
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User bit more flexible. [William Rowe]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Charset translation: mod_charset_lite handles output content
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User translation in a filter. mod_charset_lite no longer ignores
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User subrequests. A bunch of cruft related to BUFF's support for
1fdd58445074579ee3b65c871137a7a1740eb542Mark Andrews translating request and response bodies was removed.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User [Jeff Trawick]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Move the addition of the CORE filter to the post_read_request
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User hook in http_core.c. This removes the need to add the filter in
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User multiple places and allows for an SSL module to be added much
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User simpler. [Ryan Bloom]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Fix a security problem that affects certain configurations of
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User mod_rewrite. If the result of a RewriteRule is a filename that
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User contains expansion specifiers, especially regexp backreferences
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater $0..$9 and %0..%9, then it may be possible for an attacker to
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater access any file on the web server. [Tony Finch]
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater *) Fix a bug where errors that are detected during early request parsing
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User don't produce visible HTTP error messages at the browser, because
90ff38a0d8deaf5f9c2aa5916d99b2e572d28738Automatic Updater the core_filter wasn't present. [Greg Ames]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Provide apr_socklen_t as a portability aid.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User [Victor J. Orlikowski]
78d7186253dfed549ec0ce2d7c2b08a7978ede9cAutomatic Updater *) Overhaul of dbmmanage to allow a groups arg (as in Apache 1.2)
faa406d25d1d73b04a1351d1e62ab55557ed61ebAutomatic Updater as well as a comment arg to the add, adduser and update cmds.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater update allows the user to clear or preserve pw/groups/comment.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User Fixed a bug in dbmmanage that prevented the check option from
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User parsing a password followed by :group... text. Corrected the
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater seed calcualation for Win32 systems, and added -lsdbm support.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [William Rowe]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Configured mod_auth_dbm to compile with sdbmlib under Win32.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [William Rowe]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Avoid a segfault when parsing .htaccess files. An
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User uninitialized tree pointer was passed to ap_build_config().
90ff38a0d8deaf5f9c2aa5916d99b2e572d28738Automatic Updater [Jeff Trawick]
71bd43eebd9d6e42dbcae62b730f5b6508d5acd8Automatic Updater *) Change the way that inet_addr & inet_network are checked for
c01dec514a81ecf8c17ca3ef8c3ba95e437295ebAutomatic Updater in APR's configure process to allow BeOS BONE to correctly
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater find them. With this change BeOS BONE now builds from source
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater with no problems. [David Reid]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Fix a bug in apr_create_process() for Unix. The NULL signifying
ce0fd07045292942bfa3e755d9ce596941528a63Automatic Updater the end of the parameters to execve() was stored in the wrong
66cf4a406525db9c42977d8034a60e0a8e2a9290Automatic Updater location, overlaying the storage beyond the newargs[] array and
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater also passing uninitialized storage to execve(), which would
523b258f0045155255bc61cd75f5cc605013fa7dAutomatic Updater sometimes fail with EFAULT. [Jeff Trawick]
96713299d08c0735c18ebe8772dd2cc1ecd4356aAutomatic Updater *) Fix a bug parsing configuration file containers. With a sequence
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater like this in the config file
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater the second container would be terminated at the blank line due to
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User sediment in the buffer from reading the prior </IfModule> and an
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater error message would be generated for the real </IfModule> for the
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User second container. Also due to this problem, any two characters
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User could be used for "</" in the close of a container.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Jeff Trawick]
c6517a807173827b8f638d31303805ee4c1d8054Automatic Updater *) ap_add_filter prototype changed to remove the ctx pointer. The
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater pointer still remains in the filter structure, but it can not be
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater a part of the ap_add_filter prototype. The reason is that when
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User the core uses AddFilter to add a filter to the stack it doesn't
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater know how to allocate the ctx pointer, or even how much memory should
faa406d25d1d73b04a1351d1e62ab55557ed61ebAutomatic Updater be allocated. The filters will have to be responsible for allocating
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User the ctx memory when they need it.
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater *) Add an AddFilter directive. This directive takes a list of filters
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater that should be activated for the requested resource.
0ead2ac0a4b59c3e4a731027f0f66fbe602b1289Tinderbox User *) apr_snprintf(): Get quad format strings working on OS/390 (and perhaps
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User some other platforms). [Jeff Trawick]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Modify mod_include to be a filter. Currently, it has only been tested
98215f712033f868cc65cc2e54894bf770517883Automatic Updater on actual files, but it should work for CGI scripts too.
faa406d25d1d73b04a1351d1e62ab55557ed61ebAutomatic Updater *) apr_putc(), apr_puts() for Unix: handle buffered files and interrupted
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater writes. apr_flush() for Unix: handle interrupted writes.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Jeff Trawick]
a01aa536188bb3535dfc1107a623e6355a8e6b7cMark Andrews *) NameVirtualHost can now take "*" as an argument instead of
0429fc942ef48b8ab07a01648b22f98174a2ae6fAutomatic Updater an IP address. This allows you to create a purely name-based
e4757e3dafe50ae59f693eec828f68c42c197a70Andreas Gustafsson virtual hosting server that does not have any IP addresses in
0429fc942ef48b8ab07a01648b22f98174a2ae6fAutomatic Updater the configuration file and which ignores the local address
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User of any connections. PR #5595, PR #4455 [Tony Finch]
7f79131f9a8e804b93c57f3c679065cce878b726Automatic Updater *) Fix some compile warnings in mod_mmap_static.c
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater [Mike Abbott <mja@sgi.com>]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Fix chunking problem with CGI scripts. The general problem was that
e705db6d5d886dc14f4a75a2046a075c0750e7eeAutomatic Updater the CGI modules were adding an EOS bucket and then the core added an
a382ca49c874d38ad3ac8995b49f9f27128e4ca9Automatic Updater EOS bucket. The chunking filter finalizes the chunked response when it
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater encounters an EOS bucket. Because two EOS buckets were sent, we
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater finalized the response twice. The fix is to make sure we only send one
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater EOS, by utilizing a flag in the request_rec.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) apr_put_os_file() now sets up the unget byte appropriately on Unix
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater and Win32. Previously, the first read from an apr_file_t set up via
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater apr_put_os_file() would return a '\0'. [Jeff Trawick]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Mod_cgid now creates a single element bucket brigade, with a pipe
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User bucket, instead of using BUFF's and ap_r*.
40696c4c389a780082fb77840c173b201ce696d6Automatic Updater *) APRVARS.in no longer overwrites the EXTRA_LIBS variable.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User [Mike Abbott <mja@sgi.com>]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Remove ap_bopenf from buff code. This required modifying the file_cache
40696c4c389a780082fb77840c173b201ce696d6Automatic Updater code to use APR file's directly instead of going through BUFFs.
f262aa9daa94e94de066f1720a90cc2898af38fbAutomatic Updater *) Fix compile break on some platforms for mod_mime_magic.c
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [John K. Sterling <sterling@covalent.net>]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Fix merging of AddDefaultCharset directive.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User PR #5872 (1.3) [Jun Kuriyama <kuriyama@imgsrc.co.jp>]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Minor revamp of the rlimit sections of code. We now test
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater explicitly for setrlimit and getrlimit. Also, unixd_set_rlimit()
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater is now "available" even if the platform doesn't support
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater the rlimit family (it's just a noop though). [Jim Jagielski]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Migrate the pre-selection of which MPM to use for specific
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater platforms to hints.m4, which contains (or should contain)
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater all platform specific "hints". [Jim Jagielski]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Remove IOLs from Apache. With filtering, IOLs are no longer necessary
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Add tables with non-string/binary values to APR.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Fix some bad calls to ap_log_rerror() in mod_rewrite.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Jeff Trawick]
2f60dbd3787caa91e8ab1d7ae39ea312ad5ba31fAutomatic Updater *) Update PCRE to version 3.2. [Ryan Bloom]
02973ab41430678c285ef7ae6d1183003469a3bcAutomatic Updater *) Change the way buckets' destroy functions are called so that
e4757e3dafe50ae59f693eec828f68c42c197a70Andreas Gustafsson they can be more directly used when changing the type of a
02973ab41430678c285ef7ae6d1183003469a3bcAutomatic Updater bucket in place. [Tony Finch]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Add generic support for reference-counting the resources used by
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User buckets, and alter the HEAP and MMAP buckets to use it. Change
f262aa9daa94e94de066f1720a90cc2898af38fbAutomatic Updater the way buckets are initialised to support changing the type of
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater buckets in place, and use it when setting aside TRANSIENT buckets.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User Change the implementation of TRANSIENT buckets so that it can be
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User mostly shared with IMMORTAL buckets, which are now implemented.
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic UpdaterChanges with Apache 2.0a6
faa406d25d1d73b04a1351d1e62ab55557ed61ebAutomatic Updater *) Add support to Apache and APR for dsos on OS/390. [Greg Ames]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Add a chunking filter to Apache. This brings us one step closer
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater to removing BUFF. [Ryan Bloom]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) ap_add_filter now adds filters in a LIFO fashion. The first filter
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater added to the stack is the last filter to be called. [Ryan Bloom]
9c446b72069d0ab9f710502f4d7048e50875fccbAutomatic Updater *) Apache 2.0 has been completely documented using Scandoc. The
02973ab41430678c285ef7ae6d1183003469a3bcAutomatic Updater docs can be generated by running 'make docs'. [Ryan Bloom]
02973ab41430678c285ef7ae6d1183003469a3bcAutomatic Updater *) Add filtered I/O to Apache. This is based on bucket brigades,
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater Currently the buckets still use BUFF under the covers, but that
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User should change quickly. The only currently written filter is the
f262aa9daa94e94de066f1720a90cc2898af38fbAutomatic Updater core filter which just calls ap_bwrite. [The Apache Group]
9cd5eb6fe0f26d65724b99216cb31dcdd12e4afdAutomatic Updater *) APR locks on Unix: Let APR_LOCKALL locks work when APR isn't
a900e4f99ff134b567b6df5ac2c841c7d0c551d3Automatic Updater built with thread support. [Jeff Trawick]
b871c7156eb037d41f53828c6fcb9cc876128962Mark Andrews *) Abort configuration if --with-layout was specified and there's
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater no layout definition file. [Ken Coar]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Add support for '--with-port=n' option to configure. [Ken Coar]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Add support for extension methods for the Allow response header
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User field, and an API routine for accessing r->allowed and the
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User list of extension methods in a unified manner. [Ken Coar]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) mod_cern_meta: fix broken file reading loop in scan_meta_file().
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Rob Simonson <simo@us.ibm.com>]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Get xlate builds working again. The apr renaming in 2.0a5 broke
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater APACHE_XLATE builds. [Jeff Trawick]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) A configuration file parsing problem was fixed. When the
faa406d25d1d73b04a1351d1e62ab55557ed61ebAutomatic Updater configuration file started with an IfModule/IfDefine container,
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater only the last statement in the container would be retained.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater [Jeff Trawick]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic UpdaterChanges with Apache 2.0a5
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Perchild is serving pages after passing them to different child
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater processes. There are still a lot of bugs, but this does work. I
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater have made requests against the same installation of Apache, and had
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User different servers use different user IDs to serve the responses.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater This change moves to using socketpair instead of an AF_UNIX socket.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Perchild MPM still doesn't work perfectly, but it is serving pages.
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater It can't seem to pass between child processes yet, but I think we
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater are closer now than before. This moves us back to using Unix
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User Domain Sockets. [Ryan Bloom]
4b2cb1422c7c600fbc13b1cb06a8b4693bc11af8Mark Andrews *) libapr functions and types renamed with apr_ prefix.
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews #include "apr_compat.h" for 1.3.x backwards compat
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews *) Fix problems with APR sockaddr handling on Win32. It didn't always
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews return the right information on the local socket address.
4b2cb1422c7c600fbc13b1cb06a8b4693bc11af8Mark Andrews [Gregory Nicholls <gnicholls@level8.com>]
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews *) ap_recv() on Win32: Set bytes-read to 0 on error.
4b2cb1422c7c600fbc13b1cb06a8b4693bc11af8Mark Andrews [Gregory Nicholls <gnicholls@level8.com>]
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews *) Add an option to not detach from the controlling terminal without
4b2cb1422c7c600fbc13b1cb06a8b4693bc11af8Mark Andrews going into single process mode. This allows for much easier
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews debugging of the process startup code. [Ryan Bloom]
4b2cb1422c7c600fbc13b1cb06a8b4693bc11af8Mark Andrews *) ab: don't use perror() to report the failure of an APR function.
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews [Jeff Trawick]
4b2cb1422c7c600fbc13b1cb06a8b4693bc11af8Mark Andrews *) Make dexter, mpmt_pthread, and perchild MPMs not destroy the
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews scoreboard on graceful restarts.
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews [Ryan Bloom]
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews *) Fix segfault/SIGSEGV when running gzip from mod_mime_magic.c.
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews An invalid ap_proc_t was passed to ap_create_process().
4b2cb1422c7c600fbc13b1cb06a8b4693bc11af8Mark Andrews [Jeff Trawick]
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews *) Allow modules to register filters. Those filters are still
4b2cb1422c7c600fbc13b1cb06a8b4693bc11af8Mark Andrews never called, but this is a step in the right direction.
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews [Ryan Bloom and Greg Stein]
4b2cb1422c7c600fbc13b1cb06a8b4693bc11af8Mark Andrews *) Register the mod_cgid daemon process for cleanup so that it is
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews killed at termination if it does not die when the parent gets
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews SIGTERM. This change is to fix occasional problems where the
4b2cb1422c7c600fbc13b1cb06a8b4693bc11af8Mark Andrews process stays around. Bugs in similar logic in mod_rewrite and
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews mod_include were also fixed. [Jeff Trawick]
4b2cb1422c7c600fbc13b1cb06a8b4693bc11af8Mark Andrews *) Fix a bug in the time handling. Basically, we were imploding a time
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews in ap_parseHTTPdate, but it had bogus data in the exploded time format.
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews Namely, tm_usec and tm_gmtoff were not filled out. ap_implode_time
4b2cb1422c7c600fbc13b1cb06a8b4693bc11af8Mark Andrews uses those two fields to adjust the time value. Because of the HTTP
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews spec, both of those values can be zero'ed out safely. This fixes
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews the bug correctly. [Ryan Bloom]
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews *) Fix a couple of place in the Windows code where the wrong error
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews code was being returned. [Gregory Nicholls <gnicholls@level8.com>]
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews *) Fix POOL_DEBUG (at least for prefork mpm). [Dean Gaudet]
4b2cb1422c7c600fbc13b1cb06a8b4693bc11af8Mark Andrews *) Added the APR_EOL_STR macro for platform dependent differences in
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews logfiles and other raw text (such as all APR files). Fixes logfiles
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater not terminated with cr/lf sequences in Win32. [William Rowe]
e23256e740b238bddb4ba41ffac5f81a01c92245Automatic Updater *) Move all strings functions in APR to src/lib/apr/strings and create
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater apr_strings.h for the prototypes. [Ryan Bloom]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) APR lock fixes: when using SysV sems, flock(), or fcntl(), be sure
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User to repeat the syscall until we stop getting EINTR. I noticed a
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater related problem at termination (SIGTERM) on FreeBSD when using
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater fcntl(). Apache 1.3 had these new loops too. Also, make the flock()
2f60dbd3787caa91e8ab1d7ae39ea312ad5ba31fAutomatic Updater implementation work properly with child init. Previously, ap_lock()
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User was essentially a no-op because all children were using different
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User locks and thus nobody ever blocked. [Jeff Trawick]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) The htdocs/ tree has been moved out of the CVS source tree into
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater a separate area for easier development. This has NO EFFECT on
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater end-users or Apache installations. [Ken Coar]
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson *) Integrate the mod_dav module for WebDAV protocol handling. This
02973ab41430678c285ef7ae6d1183003469a3bcAutomatic Updater adds the dav and dav_fs modules, the SDBM library, and additional
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson XML handling utilities. [Greg Stein]
2f60dbd3787caa91e8ab1d7ae39ea312ad5ba31fAutomatic Updater *) Clean out obsolete names (from httpd.h) for the HTTP Status Codes
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) Update the lib/expat-lite/ library (bring forward changes from
713c3d5b18463f2479973e4d14f73248e60a5df7Mark Andrews the Apache 1.3 repository). [Greg Stein]
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User *) If sizeof(long long) == sizeof(long), then prefer long in APR
45c349c278fd83acd4dcb91eec3482401a623e47Automatic Updater configure.in. [Dave Hill <ddhill@zk3.dec.com>]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Add ap_sendfile for Tru64 Unix. Also, add an error message for
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson machines where sendfile is detected, but nobody has written ap_sendfile.
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson [Dave Hill <ddhill@zk3.dec.com>]
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updater *) Compile fixes in mod_mmap_static. [Victor J. Orlikowski]
2fd97723b2ec7fc1975672780ab0c1c9a8c369d6Automatic Updater *) ab would start up more connections than needed, then quit when the
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User desired number were finished. Also fixed a logic error involving
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User ab keepalives. [Victor J. Orlikowski]
9fa6e3bdb4ec36d8734c63c4366375a681aa3a4dAutomatic Updater *) WinNT: Implement non-blocking pipes with timeouts to communicate
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic Updater with CGIs. Apache 2.0a4 had non-blocking pipes but without
922e6a3c2ac4ef900dd9dc99f0cc137f18372583Andreas Gustafsson timeouts (i.e, if a timeout was specified, the pipe reverted to
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User a full blocking pipe). Now the behaviour is more in line with
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User Unix non-blocking pipes.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Bill Stoddard]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) WinNT: Implement accept socket reuse. Using mod_file_cache to
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews cache open file handles along with accept socket reuse enables
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews Apache 2.0 to serve non-keepalive requests for static files at
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews 3x the rate of Apache 1.3.(e.g, Apache 1.3 will serve 400 rps
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews and Apache 2.0 will serve almost 1200 rps on my system).
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Bill Stoddard]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Merge mod_mmap_static function into mod_file_cache. mod_file_cache
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews supports two config directives, mmapfile (same behavious as
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews mod_mmap_static) and cachefile. Use the cachefile directive
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews to cache open file handles. This directive only works on systems
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater that have implemented the ap_sendfile API. cachefile works today
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater on Windows NT, but has not been tested on any flavors of Unix.
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater [Bill Stoddard]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Cleanup the configuration. With the last few changes the
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews configuration process automatically:
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews inherits information about how to build from APR. Allowing
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews APR to inform Apache that it should or should not use -ldl
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews Detects which mod_cgi should be used mod_cgi or mod_cgid,
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews based on the threading model
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews Apache calls APR's configure process before finishing it's
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews configuration processing, allowing for more information flow
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews between the two.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Ryan Bloom]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Change Unix and Win32 ap_setsockopt() so that APR_SO_NONBLOCK
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews with non-zero argument makes the socket non-blocking. BeOS and
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews OS/2 already worked this way. [Jeff Trawick]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) ap_close() now calls ap_flush() for buffered files, so write
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews operations work a whole lot better on buffered files.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Jeff Trawick]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Fix error messages issued from MPMs which explain where to change
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews compiled-in limits (e.g., ThreadsPerChild, MaxClients, StartTreads).
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) ap_create_pipe() now leaves pipes in blocking state. (This helps
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater reduce the number of syscalls on Unix.) ap_set_pipe_timeout() is
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews now the way that the blocking state of a pipe is manipulated.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews ap_block_pipe() is gone. [Jeff Trawick]
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) Correct the problem where the only local host name that the IP stack
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater can discover are 'undotted' private names. If no fully qualified
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater domain name can be identified, the default ServerName will be set to
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater the machine's IP address string. A warning is always provided if the
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater ServerName not specified, but assumed. Solves PR6215 [William Rowe]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Repair problems with config file processing which caused segfault
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews at init when virtual hosts were defined and which caused ServerName to
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater be ignored when there was no valid DNS setup. [Jeff Trawick]
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) Removed pointless ap_is_aborted macro function. [Roy Fielding]
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) Add ap_sendfile implementation for AIX
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater [Victor J. Orlikowski]
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) Repair C++ compatibility in ap_config.h, apr_file_io.h,
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater [Tyler J. Brooks <tylerjbrooks@home.com>, Jeff Trawick]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Bring the allocation and pool debugging code back into a working
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews state. This will need to be tested as so far it's only been used on
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater BeOS. [David Reid]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Change configuration command setup to be properly typesafe when in
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater maintainer mode. Note that this requires a compiler that can initialise
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews unions. [Ben Laurie]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Turn on buffering for config file reads. Part of this was to
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater repair buffered I/O support in Unix and implement buffered
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews ap_fgets() for all platforms. [Brian Havard, Jeff Trawick]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Win32: Fix problem where UTC offset was not being set correctly
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews in the access log. Problem reported on news group by Jerry Baker.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Bill Stoddard]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Fix segfault when reporting this type of syntax error:
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews "</container> without matching <container> section", where
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews container is VirtualHost or Directory or whatever.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Jeff Trawick]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Prevent the source code for CGIs from being revealed when using
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews mod_vhost_alias and the CGI directory is under the document root
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews and a user makes a request like http://www.example.com//cgi-bin/cgi
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews as reported in <news:960999105.344321@ernani.logica.co.uk>
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Tony Finch]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Add support for the new Beos NetwOrking Environment (BONE)
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [David Reid]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) xlate: ap_xlate_conv_buffer() now tells the caller when the
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews final input char is incomplete; ap_bwrite_xlate() now handles
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater incomplete final input chars. [Jeff Trawick]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Yet another update to saferead/halfduplex stuff -- need to ensure
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater that a bhalfduplex call occurs before logging or else DNS and
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews such can delay the last packet of the response. [Dean Gaudet]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Some syscall reduction in APR on unix -- don't seek when setting
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews up an mmap; and don't fcntl() more than once per socket.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Dean Gaudet]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) When mod_cgid is started as root, the cgi daemon now switches
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews to the configured User/Group (like other httpd processes)
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews instead of continuing as root. [Jeff Trawick]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) The prefork MPM now uses an APR lock for the accept() mutex.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews It has not been getting a lock at all recently. httpd -V now
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews displays APR's selection of the lock mechanism instead of the
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews symbols previously respected by prefork. [Jeff Trawick]
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) Change the mmap() feature test to check only for existence.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews The previous check required features not used by Apache.
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) Fix a couple of bugs in mod_cgid: The cgi arguments were
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater sometimes mangled. The len parm to accept() was not
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater initialized, leading sometimes to an endless loop of failed
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews accept() calls on OS/390 and anywhere else that failed the call
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews if the len was negative. Use <sys/un.h> for struct sockaddr_un
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews instead of declaring it ourselves to fix a compilation problem
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews on Solaris. [Jeff Trawick]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Add Resource limiting code back into Apache 2.0. [Ryan Bloom]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Fix zombie process problem with mod_cgi. [Jeff Trawick]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Port mod_mmap_static to 2.0. Make it go faster. [Greg Ames]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Fix storage overlay when loading dsos. Symptom: Apache dies at
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews initialization if ALLOC_DEBUG is defined; no known symptom
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews otherwise. [Jeff Trawick]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Fix typo in configure script when checking for mod_so. bash
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews doesn't seem to have a problem but /bin/sh on Solaris does.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews Symptom: "./configure: test: unknown operator =="
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Jeff Trawick]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Rebind the Win32 NT and 9x services control into the MPM.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews All console, WinNT SCM and Win9x pseudo-service control code is
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews now wrapped within the WinNT MPM.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [William Rowe]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Make a copy of getenv("PATH") before storing for later use. Some
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater getenv() implementations use the same storage for successive calls.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews CGIs on OS/390 had a bad PATH due to this. [Jeff Trawick]
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) Server Tokens work in 2.0 again. This also propogates the change
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews to allow just the product name in the server string using
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Ryan Bloom]
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic UpdaterChanges with Apache 2.0a4
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) EBCDIC: Rearrange calls to ap_checkconv() so that most handlers
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater won't need to call it. [Greg Ames, Jeff Trawick]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Move pre_config hook call to between configuration read and config
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater tree walk. This allows all modules to implement pre_config hooks
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater and know that they will be called at an appropriate time.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) mod_cgi, mod_cgid: Make ScriptLog directive work again.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Jeff Trawick]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Add pre-config hooks back to all modules.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Ryan Bloom]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Fix a SIGSEGV in ap_md5digest(), which is used when you have
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater ContentDigest enabled and we can't/don't mmap the file.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Jeff Trawick]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) We now report the correct line number for syntax errors in config
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews files. [Ryan Bloom, Greg Stein, Jeff Trawick]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Brought mod_auth_digest up to synch with 1.3, fixed ap_time_t-
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews related bugs, and changed shmem/locking to use apr API. Shared-mem
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater is currently disabled, however, because of problems with graceful
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews restarts. [Ronald Tschal�r]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Fix corruption of IFS variable in --with-module= handling.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews Depending on the user's shell or customization thereof, there
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews would be errors generating ap_config_auto.h later in the configure
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews procedure. [Jeff Trawick]
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) mod_cgi: Restore logging of stderr from child process when ScriptLog
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater isn't used (as in 1.3), except that on Unix it is now logged via
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater ap_log_rerror() instead of by the child having STDERR_FILENO refer
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater to the error log. [Greg Ames, Jeff Trawick]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Add '-D' argument processing for run time configuration defines.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [William Rowe]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Organize http_main.c as independent code, such that no code or
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews global data is exported from it. WIN32 will dynamically link it
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater to the server core, so this will prevent mutual dependency.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [William Rowe]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Add separate dynamic linkage tags APR_EXPORT(), APR_EXPORT_NONSTD()
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews and APR_VAR_EXPORT to correctly resolve apr functions and globals.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [William Rowe]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Add Win9x service execution and Ctrl+C/Ctrl+Break/Shutdown handlers.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [William Rowe, Jan Just Keijser <KEIJSERJJ@logica.com>]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Add mod_charset_lite for configuring character set translation.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Jeff Trawick]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Add '-n' option to htpasswd to make it print its user:pw record
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews on stdout rather than having to frob a text file. [Ken Coar]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Fix saferead. Basically, we flush the output buffer if a read on the
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater input will block.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Ryan Bloom]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) APR: Add ap_xlate_get_sb() so that an app can find out whether or not
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews a conversion is single-byte only. [Jeff Trawick]
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) BEOS: ap_shutdown should return APR_SUCCESS or errno. Note that
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater the BeOS 5.0 documentation says that shutdown doesn't work yet.
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater [Roy Fielding]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Fix some minor errors where pid was being manipulated as an int
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater instead of the portable pid_t. [Roy Fielding]
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) Fix some error log prints that were printing the pointer to a
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater structure rather than the pid within the structure.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Jeff Trawick, Roy Fielding]
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) ab: Fix a command-line processing bug; track bad headers in
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews err_response; support reading headers up to 2K.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Ask Bjoern Hansen <ask@valueclick.com>]
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) Fix ap_resolve_env() so that it handles new function added in a prior
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater alpha (see "Added the capability to do ${ENVVAR} constructs in the
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater config file.") as well as the constructs used by mod_rewrite.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Paul Reder <rederpj@raleigh.ibm.com>]
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) Apache 2.0 builds and runs on OS/390. [Jeff Trawick, Greg Ames]
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) Change the EBCDIC support in functions for MD5, SHA1, and base 64 to use
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater APR to perform translation, instead of accessing the hard-coded tables
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews in 1.3's ebcdic.c. [Jeff Trawick]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Fix some bugs (mostly lost 1.3 code) in ab's command-line processing.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Jeff Trawick]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Add the ability to hook into the config file reading phase. Basically
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews if a directive is specified EXEC_ON_READ, then when that directive is
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews read from the config file, the assocaited function is executed. This
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews should only be used for those directives that must muck with HOW the
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews server INTERPRETS the config. This should not be used for directives
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews that re-order or replace items in the config tree. Those changes should
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews be made in the pre-config step.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Ryan Bloom]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Add mod_example to the build system.
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Tony Finch]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) APR: Add ap_xlate_conv_byte() to convert one char between single-
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews byte character sets. [Jeff Trawick]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Pick up various EBCDIC fixes from 1.3 (from Martin
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews Kraemer and Oliver Reh originally according to the change log).
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews [Jeff Trawick]
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews *) Fix a couple of problems in RFC1413 support (controlled by the
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater IdentityCheck directive). Apache did not build the request string
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater properly and more importantly Apache would loop forever if the
e9ab17d95e4288ab5ddedb7c89a9588c13c74bddMark Andrews would-be ident server dropped the connection before sending a
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater properly terminated response. [Jeff Trawick]
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) apxs works in 2.0.
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater *) Reliable piped logs work in 2.0.
990743075cd7b0ee4bc0c8bf013bb1d9662a3167Mark Andrews *) Introduce a hash table implementation into APR to be used for
2f60dbd3787caa91e8ab1d7ae39ea312ad5ba31fAutomatic Updater replacing tables and other random data structures in Apache.
aa1d397c4736cd86540555193d71e55fa3b37b2aMark Andrews [Tony Finch]
2f60dbd3787caa91e8ab1d7ae39ea312ad5ba31fAutomatic Updater *) Add some more error reporting to htpasswd in the case of problems
2f60dbd3787caa91e8ab1d7ae39ea312ad5ba31fAutomatic Updater generating or accessing the temporary file. Also, pass in a
2f60dbd3787caa91e8ab1d7ae39ea312ad5ba31fAutomatic Updater buffer if the implementation knows how to use it (i.e., if L_tmpnam
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User is defined). [Ken Coar]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Configure creates config.nice now containing your configure
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User options. Syntax: ./config.nice [--more-options]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User [Sascha Schumann]
200a9e7da827b67d99193bf793aea9f3e3fa1b43Tinderbox User *) Fix various return code problems in APR on Win32. For most of
7a2a1b8b14fc804ac80612d7b98064095e445be5Automatic Updater these, APR was returning APR_EEXIST instead of GetLastError()/
af9dbf1ccdd53933aaae9300d13ce0965d39b067Evan Hunt WSAGetLastError(). [Jeff Trawick]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Make piped logs work again in version 2.0
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Add VPATH support to UNIX build system of Apache and APR.
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic Updater [Sascha Schumann]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Fix ap_tokenize_to_argv to respect the const arguments that are
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User passed to it.
af9dbf1ccdd53933aaae9300d13ce0965d39b067Evan Hunt [Ryan Bloom]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Fix mm's memcpy/memset macros, pointer arithmetic was broken.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User Patch submitted to author.
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User [Sascha Schumann]
09091b4f0f69cca36f74a291fa3eb496686aeb1eAutomatic Updater *) Fix mm configuration on Solaris 8 x86 and OS/390. Don't require
f9119ad8f6114b2255e7545bf5cd187f4db0a89bAutomatic Updater /sbin in PATH on FreeBSD (all submitted to rse previously)
f9119ad8f6114b2255e7545bf5cd187f4db0a89bAutomatic Updater [Jeff Trawick]
46da3117812814a29432a8d9a9ccf8acdbfdadceAutomatic Updater *) Fix building Pthread-based MPMs on OpenBSD
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater [Sascha Schumann] PR#26
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Fix ap_readdir() problem on systems where d_name[] field in
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User struct dirent is declared with only one byte. (This problem only
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User affected multithreaded builds.) This caused a segfault during
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User pool cleanup with mod_autoindex on Solaris (Solaris 8 x86, at
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User least). [Jeff Trawick]
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User *) Fix some make-portability problems on at least Tru64, Irix
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User and UnixWare.
*) 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]