STATUS revision cc22a72861c58dda7f3768613aec864e4c4e0353
57944bee374767ef401f984a0136afb3822f22f7Matt SweeneyAPACHE 2.0 STATUS: -*-text-*-
57944bee374767ef401f984a0136afb3822f22f7Matt SweeneyLast modified at [$Date: 2002/07/24 09:43:59 $]
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney 2.0.40 : in development.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney 2.0.39 : rolled June 17, 2002.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney 2.0.38 : rolled June 16, 2002. not released.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney 2.0.37 : rolled June 11, 2002. not released.
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff 2.0.36 : released May 6, 2002 as GA.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney 2.0.35 : released April 5, 2002 as GA.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney 2.0.34 : tagged March 26, 2002.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney 2.0.33 : tagged March 6, 2002. not released.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney 2.0.32 : released Feburary 16, 2002 as beta.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney 2.0.31 : rolled Feburary 1, 2002. not released.
6797a96aa17cfbc2eb9b3f90f564a29c01519324Satyen Desai 2.0.30 : tagged January 8, 2002. not rolled.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney 2.0.29 : tagged November 27, 2001. not rolled.
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff 2.0.28 : released November 13, 2001 as beta.
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff 2.0.27 : rolled November 6, 2001
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney 2.0.26 : tagged October 16, 2001. not rolled.
d909360e6d2b72521cc26a0cd458a68cb4337b66Jeff Conniff 2.0.25 : rolled August 29, 2001
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney 2.0.24 : rolled August 18, 2001
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff 2.0.23 : rolled August 9, 2001
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff 2.0.22 : rolled July 29, 2001
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff 2.0.21 : rolled July 20, 2001
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff 2.0.20 : rolled July 8, 2001
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff 2.0.19 : rolled June 27, 2001
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff 2.0.18 : rolled May 18, 2001
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff 2.0.17 : rolled April 17, 2001
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff 2.0.16 : rolled April 4, 2001
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff 2.0.15 : rolled March 21, 2001
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff 2.0.14 : rolled March 7, 2001
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff 2.0a9 : released December 12, 2000
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff 2.0a8 : released November 20, 2000
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff 2.0a7 : released October 8, 2000
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff 2.0a6 : released August 18, 2000
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff 2.0a5 : released August 4, 2000
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff 2.0a4 : released June 7, 2000
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff 2.0a3 : released April 28, 2000
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff 2.0a2 : released March 31, 2000
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff 2.0a1 : released March 10, 2000
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff ConniffPlease consult the following STATUS files for information
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniffon related projects:
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff ConniffCURRENT RELEASE NOTES:
57944bee374767ef401f984a0136afb3822f22f7Matt SweeneyRELEASE SHOWSTOPPERS:
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * apr_poll() grows the pool (e.g., pchild or the thread's pool) on
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney each call... Apache MPMs don't have logic to work around this
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * On AIX and Tru64, Apache won't load due to an unresolved
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney reference to iconv.
57944bee374767ef401f984a0136afb3822f22f7Matt SweeneyCURRENT VOTES:
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney a) httpd-std.conf should be tailored by install (from src or
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney binbuild) even if user has existing httpd.conf
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney +1: trawick, slive, gregames, ianh
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff b) tailored httpd-std.conf should be copied by install to
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney c) tailored httpd-std.conf should be installed to
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney d) Installing a set of default config files when upgrading a server
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney doesn't make ANY sense at all.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney +1: rbb, striker
dba22eabcfca7e9fe626abbad1494c3a0200dde0Matt Sweeney ianh - medium/big sites don't use 'standard config' anyway, as it
dba22eabcfca7e9fe626abbad1494c3a0200dde0Matt Sweeney usually needs major customizations
dba22eabcfca7e9fe626abbad1494c3a0200dde0Matt Sweeney * apachectl should revert to just being an init script and
dba22eabcfca7e9fe626abbad1494c3a0200dde0Matt Sweeney httpd.sh should be the wrapper for httpd which sources envvars
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney and allows any options to be passed through
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney +1: trawick, gregames
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney -0.5: ianh - a wrapper which calls another wrapper which then sources
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney envvars ?? i'm not sure why calling apachectl -V is a bad
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * Should we always build [support*] binaries statically unless otherwise
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff Message-ID: <20020129210006.B23512@Lithium.MeepZor.Com>
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff +1: Ken, *wrowe [they are PITAs on OSX]
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff -1: Justin, Ian
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff * If the parent process dies, should the remaining child processes
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff "gracefully" self-terminate. Or maybe we should make it a runtime
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff option, or have a concept of 2 parent processes (one being a
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff "hot spare").
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff See: Message-ID: <3C58232C.FE91F19F@Golux.Com>
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff Self-destruct: Ken, Martin
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff Not self-destruct: BrianP, Ian, Cliff, BillS
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff Make it runtime configurable: Aaron, Jim, Justin
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff Have 2 parents: +1: Jim
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff -1: Justin, wrowe [for 2.0]
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff +0: Martin (while standing by, could it do
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff something useful?)
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff * Make the worker MPM the default MPM for threaded Unix boxes.
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff +1: Justin, Ian, Cliff, BillS, striker
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff +0: BrianP, Aaron (mutex contention is looking better with the
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff latest code, let's continue tuning and testing)
57944bee374767ef401f984a0136afb3822f22f7Matt SweeneyRELEASE NON-SHOWSTOPPERS BUT WOULD BE REAL NICE TO WRAP THESE UP:
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * All handlers should always send content down even if r->header_only
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney is set. If not, it means that the HEAD requests don't generate the
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney same headers as a GET which is wrong.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Is this a showstopper?
d40e32ef6c95cddf35e9cc056dfdd259ba314fa2Jeff Conniff * server pushed CGI's not working. (Is this a showstopper??)
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Message-ID: <3CE15B85.2FF45121@apache.org>
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * HP/UX 10.20: compile breakage in APR. Looks like it should be easy
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney to fix, probably just some extraneous #include's that are fouling
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff Jeff: See my reply and patch in the PR (and previous commit to
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff stop using "pipe" as a field name). If patch is committed, we
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff should be okay. I'll wait to see if the user tests the patch.
6340fd3eeb615e0720d218535598b6627a3d4c71Jeff Conniff Update by Jeff 20020722: I got an account on HP 10.20. It looks
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff like some of the APR thread detection is screwed up. If we find
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney pthread.h but we can't compile the pthread test program we still
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney think we can use threads. For that reason, the patch I posted
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney to the PR won't work as-is since a failed compile of the test
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney program means nothing.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * exec cmd and suexec arg-passing enhancements
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Status: Patches proposed
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Message-ID: <20020526041748.A29148@prodigy.Redbrick.DCU.IE>
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney (see the "proc.patch" and "suexec-shell.patch" links in this message)
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * Get mod_cache/mod_mem_cache out of experimental (still some
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney work items left to complete)
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * The 2.0.36 worker MPM graceless shutdown changes work but are
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney a bit clunky on some platforms; eg, on Linux, the loop to
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff join each worker thread seems to hang, and the parent ends up
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney killing off the child with SIGKILL. But at least it shuts down.
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff * --enable-mods-shared="foo1 foo2" is busted on Darwin. Pier
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney posted a patch (Message-ID: <B8DBBE8D.575A%pier@betaversion.org>).
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff * We do not properly substitute the prefix-variables in the configuration
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney scripts or generated-configs. (i.e. if sysconfdir is etc,
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney httpd-std.conf points to conf.)
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * If any request gets through ap_process_request_internal() and is
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney scheduled to be served by the core handler, without a flag that this
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney r->filename was tested by dir/file_walk, we need to 500 at the very
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney end of the ap_process_request_internal() processing so sub_req-esters
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney know this request cannot be run. This provides authors of older
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney modules better compatibility, while still improving the security and
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney robustness of 2.0.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Status: still need to decide where this goes, OtherBill comments...
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Message-ID: <065701c14526$495203b0$96c0b0d0@roweclan.net>
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney [Deleted comments regarding the ap_run_handler phase, as irrelevant
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney as BillS points out that "common case will be caught in
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney default_handler already (with the r->finfo.filetype == 0 check)"
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney and the issue is detecting this -before- we try to run the req.]
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney gregames says: can this happen somehow without a broken module
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney being involved? If not, why waste cycles trying to defend against
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney potential broken modules? It seems futile.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney wrowe counters: no, it shouldn't happen unless the module is broken.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney But the right answer is to fail the request up-front in dir/file
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff walk if the path was entirely invalid; and we can't do that either
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney or we break modules that are unwilling to hook map_to_storage.
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff * Rewrite core_output_filter. It is nearly impossible to support
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney it with predictable results as it is implemented now.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * With AP_MODE_EXHAUSTIVE in the core, it is finally clear to me
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney how the Perchild MPM should be re-written. It hasn't worked
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney correctly since filters were added because it wasn't possible to
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff get the content that had already been written and the socket at
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff the same time. This mode lets us do that, so the MPM can be
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * htpasswd blindly processes the file you give it, and does no
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney sanity checking before totally corrupting whatever file it was
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney you thought you had. It should check the input file and bail
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney if it finds non-comment lines that do not contain exactly 1
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney ':' character.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Message-ID: <20020217150457.A31632@clove.org>
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * Can a static httpd be built reliably?
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Message-ID: <20020207142751.T31582@clove.org>
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * [Ken] Test suite failures:
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney o worker is also failing some of the 'cgi' subtests
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney (see <URL:http://Source-Zone.Org/Apache/regression/>):
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Justin says: "Worker should be fine and passes httpd-test here.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney If you can provide evidence that it can be reproduced
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney outside of httpd-test, then it's a showstopper. I
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney think it's a perl or a httpd-test problem."
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Not a showstopper: Justin
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * Usage of APR_BRIGADE_NORMALIZE in core_input_filter should be
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney removed if possible.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Message-ID: <Pine.LNX.4.33.0201202232430.318-100000@deepthought.cs.virginia.edu>
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Jeff wonders if we still care about this. It is no longer an
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney API issue but simply an extra trip through the brigade.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * There is a bug in how we sort some hooks, at least the pre-config
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney hook. The first time we call the hooks, they are in the correct
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney order, but the second time, we don't sort them correctly. Currently,
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney the modules/http/config.m4 file has been renamed to
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney modules/http/config2.m4 to work around this problem, it should moved
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney back when this is fixed. rbb
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Justin says: "Is this really a showstopper? This has been here
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff forever. What's wrong? Does this have to do with
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney autoconf or m4?"
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Not a showstopper: Justin, BrianP, trawick, gregames
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * The Add...Filter and Set...Filter directives do not allow the
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney administrator to order filters, beyond the order of filename (mime)
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney extensions. It isn't clear if Set...Filter(s) should be inserted
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney before or after the Add...Filter(s) which are ordered by sequence of
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff filename extensions. At minimum, some sort of +-[0-10] syntax seems
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney like the quickest fix for a 2.0 gold release.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Justin says: "Could we delay this for a point release or 2.1?"
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Not a showstopper: justin, wrowe, trawick, stoddard, Jim, Ian, Aaron,
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff * Get perchild to work on platforms other than Linux. This
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney will require a portable mechanism to pass data and file/socket
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney descriptors between vhost child groups. An API was proposed
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Message-ID: <20020111115006.K1529@clove.org>
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * Try to get libtool inter-library dependency code working on AIX.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Message-ID: <cm3n10lx555.fsf@rdu163-40-092.nc.rr.com>
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Justin says: If we get it working on AIX, we can enable this
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney on all platforms and clean up our build system
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Jeff says: I thought I tested a patch for you sometime in
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney January that you were going to commit within a few
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff * Handling of %2f in URIs. Currently both 1.3 and 2.0
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney completely disallow %2f in the request URI path (see
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff ap_unescape_url() in util.c). It's permitted and passed
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff through in the query string, however. Roy says the
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff original reason for disallowing it, from five years ago,
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff was to protect CGI scripts that applied PATH_INFO to
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff a filesystem location and which might be tricked by
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney ..%2f..%2f(...). We *should* allow path-info of the
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney form 'http://foo.com/index.cgi/path/to/path%2finfo'.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Since we've revamped a lot of our processing of path
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney segments, it would be nice to allow this, or at least
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff allow it conditionally with a directive.
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff * FreeBSD, threads, and worker MPM. All seems to work fine
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff if you only have one worker process with many threads. Add
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff a second worker process and the accept lock seems to be
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff lost. This might be an APR issue with how it deals with
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff the child_init hook (i.e. the fcntl lock needs to be resynced).
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff More examination and analysis is required.
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff Status: This has also been reported on Cygwin.
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff Message-ID: <3C2CC514.8EF3BED1@wapme-systems.de> (cygnus)
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff Justin says: So, FreeBSD-CURRENT and Cywin have the same
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff problem. Yum. If another platform has this
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff with worker, this becomes a showstopper.
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff Aaron says: I spent some time disecting this and have come to
719d5bf86fc9cfc087ec8bf8cc7e1ad78bbf9ccfJeff Conniff the conclusion that it is not a problem in the worker MPM
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff (or at least, it is not isolated to a problem in worker).
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff I'll list some of the problems I'm seeing in case someone
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff else wants to pick up where I've left off:
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff - Delivery of just about any signal to one of the child
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff processes will send it into an infinite loop as well.
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff - Even though the parent is spinning out of control,
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff at first the child or children will appear to work
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff properly. At times it is possible to get it into a state,
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff however, where a request will hang until another concurrent
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff request "kicks" the first, at which point the second will
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff hang. My theory is that this has to do with the
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff pthread_cond_*() implementation in FreeBSD, but it's still
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff possible that it is in APR.
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff Justin adds: Oh, FreeBSD threads are implemented entirely with
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff select()/poll()/longjmp(). Welcome to the nightmare.
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff So, that means a ktrace output also has the thread
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff scheduling internals in it (since it is all the same to
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff the kernel). Which makes it hard to distinguish between
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff our select() calls and their select() calls.
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff *bangs head on wall repeatedly* But, some of the libc_r
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff files have a DBG_MSG #define. This is moderately helpful
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff when used with -DNO_DETACH. The kernel scheduler isn't
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff waking up the threads on a select(). Yum. And, I bet
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff those decrementing select calls have to do with the
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff scheduler. Time to brush up on our OS fundamentals.
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff * There is increasing demand from module writers for an API
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff that will allow them to control the server � la apachectl.
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff Reasons include sole-function servers that need to die if
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff an external dependency (e.g., a database) fails, et cetera.
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff Perhaps something in the (ever more abused) scoreboard?
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff rbb: I don't believe the scoreboard is the correct mechanism
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff for this. We already have a pipe that goes between parent
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff and child for graceful shutdown events, along with an API that
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff can be used to send a message down that pipe. In threaded MPMs,
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff it is easy enough to make that one pipe be used for graceful
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff and graceless events, and it is also easy to open that pipe
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff to both parent and child for writing. Then we just need to
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff figure out how to do graceless on non-threaded MPMs.
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff * Allow the DocumentRoot directive within <Location > scopes? This
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff allows the beloved (crusty) Alias /foo/ /somepath/foo/ followed
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff by a <Directory /somepath/foo> to become simply
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff <Location /foo/> DocumentRoot /somefile/foo (IMHO a bit more legible
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff and in-your-face.) DocumentRoot unset would be accepted [and would
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff not permit content to be served, only virtual resources such as
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff server-info or server-status.
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff This proposed change would _not_ depricate Alias.
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff striker: See the thread starting with Message-ID:
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff JLEGKKNELMHCJPNMOKHOGEEJFBAA.striker@apache.org.
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff * Win32: Rotatelogs sometimes is not terminated when Apache
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff goes down hard. FirstBill was looking at possibly tracking the
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff child's-child processes in the parent process.
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff OtherBill asks, wasn't this fixed?
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff stoddard: Not fixed. Shared scoreboard might offer a good
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff way for the parent to keep track of 'other child' processes
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff and whack them if the child goes down.
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff Other thoughts on walking the process chain using the NT kernel
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff have also been proposed on APR.
b4f14fb8425b05925652295a6e65a98b2448f70fJeff Conniff * Win32: Add a simple hold console open patch (wait for close or
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff the ESC key, with a nice message) if the server died a bad
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff death (non-zero exit code) in console mode.
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff Resolution: bring forward same ugly hacks from 1.3.13-.20
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff This is not so simple. Any exit() from APR or other libraries
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff can't be caught unless we add some sort of apr_exit(rv) with
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff registered apr_atexit() fn's that have the return code as an
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff argument to the registered fn.
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff * Eliminate unnecessary creation of pipes in mod_cgid
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff * Combine log_child and piped_log_spawn. Clean up http_log.c.
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff Common logging API.
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff * Document mod_file_cache.
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff * Platforms that do not support fork (primarily Win32 and AS/400)
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff Architect start-up code that avoids initializing all the modules
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff in the parent process on platforms that do not support fork.
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff * Win32: Migrate the MPM over to use APR thread/process calls. This
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff would eliminate some code in the Win32 branch that essentially
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff duplicates what is in APR.
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff * There are still a number of places in the code where we are
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff losing error status (i.e. throwing away the error returned by a
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff system call and replacing it with a generic error code)
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff * Mass vhosting version of suEXEC.
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff * All DBMs suffer from confusion in support/dbmmanage (perl script) since
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff the dbmmanage employs the first-matched dbm format. This is not
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff necessarily the library that Apache was built with. Aught to
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff rewrite dbmmanage upon installation to bin/ with the proper library
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff for predictable mod_auth_dbm administration.
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff Questions; htdbm exists, time to kill dbmmanage, or does it remain
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff useful as a perl dbm management example? If we keep it,
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff do we address the issue above?
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff * Integrate mod_dav.
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff Some additional items remaining:
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff - case_preserved_filename stuff
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff (use the new canonical name stuff?)
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff - find a new home for ap_text(_header)
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff - is it possible to remove the DAV: namespace stuff from util_xml?
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff * ap_core_translate() and its use by mod_mmap_static and mod_file_cache
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff are a bit wonky. The function should probably be exposed as a utility
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff function (such as ap_translate_url2fs() or ap_validate_fs_url() or
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff something). Another approach would be a new hook phase after
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff "translate" which would allow the module to munge what the
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff translation has decided to do.
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff Status: Greg +1 (volunteers), Ryan +1
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff * Explore use of a post-config hook for the code in http_main.c which
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff calls ap_fixup_virutal_hosts(), ap_fini_vhost_config(), and
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney ap_sort_hooks() [to reduce the logic in main()]
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * read the config tree just once, and process N times (as necessary)
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * (possibly) use UUIDs in mod_unique_id and/or mod_usertrack
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * (possibly) port the bug fix for PR 6942 (segv when LoadModule is put
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney into a VirtualHost container) to 2.0.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * shift stuff to mod_core.h
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * callers of ap_run_create_request() should check the return value
d40e32ef6c95cddf35e9cc056dfdd259ba314fa2Jeff Conniff for failure (Doug volunteers)
d40e32ef6c95cddf35e9cc056dfdd259ba314fa2Jeff Conniff * Win32: Get Apache working on Windows 95/98. The following work
d40e32ef6c95cddf35e9cc056dfdd259ba314fa2Jeff Conniff (at least) needs to be done:
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff - Document warning that OSR2 is required (for Crypt functions, in
d40e32ef6c95cddf35e9cc056dfdd259ba314fa2Jeff Conniff rand.c, at least.) This could be resolved with an SSL library, or
d40e32ef6c95cddf35e9cc056dfdd259ba314fa2Jeff Conniff randomization in APR itself.
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff - Bring the Win9xConHook.dll from 1.3 into 2.0 (no sense till it
d40e32ef6c95cddf35e9cc056dfdd259ba314fa2Jeff Conniff actually works) and add in a splash of Win9x service code.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * Fix the worker MPM to use POD to kill child processes instead
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney of ap_os_killpg, regardless of how they should die. (Ryan Bloom)
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * Scoreboard structures could be changed in the future such that
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney proper alignment is not maintained, leading to segfaults on
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney some systems. Cliff posted a patch to deal with this issue but
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney later recanted. See this message to dev@apr.apache.org:
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney Message-ID: <Pine.LNX.4.44.0203011354090.16457-200000@deepthought
57944bee374767ef401f984a0136afb3822f22f7Matt SweeneyTODO ISSUES REMAINING IN MOD_SSL:
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * In order to use a DSO version of mod_ssl we have to link with
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney -lssl and -lcrypto. A workaround is in place right now where the
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney entire EXTRA_LIBS macro is being appended to the objects list, but
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney this is a hack. We should either revamp the APACHE_CHECK_SSL_TOOLKIT
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney autoconf function or come up with some other autoconf checks to
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney search for libssl and libcrypto and properly add them to mod_ssl's
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * SSL renegotiations in combination with POST request
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff * Port or dispose all code inside #if 0...#endif blocks that remain
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff from the porting effort.
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff * Do we need SSL_set_read_ahead()?
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff * the ssl_expr api is NOT THREAD SAFE. race conditions exist:
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff -in ssl_expr_comp() if SSLRequire is used in .htaccess
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff (ssl_expr_info is global)
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff -is ssl_expr_eval() if there is an error
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff (ssl_expr_error is global)
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff * SSLRequire directive (parsing of) leaks memory
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff * Diffie-Hellman-Parameters for temporary keys are hardcoded in
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff ssl_engine_dh.c, while the comment in ssl_engine_kernel.c says:
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff "it is suggested that keys be changed daily or every 500
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff transactions, and more often if possible."
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff * ssl_var_lookup could be rewritten to be MUCH faster
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff * CRL callback should be pluggable
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff * session cache store should be pluggable
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff * init functions should return status code rather than ssl_die()
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff * ssl_engine_pphrase.c needs to be reworked so it is generic enough
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff to also decrypt proxy keys
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff * the shmcb code should just align its memory segment rather than
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff jumping through all the "safe" memcpy and memset hoops
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff ConniffEXPERIMENTAL MODULES:
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff Experimental modules should eventually be be promoted to fully supported
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff status or removed from the repository entirely (ie, the
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff 'experiment' failed). This section tracks what needs to happen to
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff get the modules promoted to fully supported status.
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff * mod_cache: handle cache_control: no_cache "field_name" to enable
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff cacheing the response w/o header "field_name"
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff See RFC2616 section 14.9.1
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff * mod_cache: CacheEnable/CacheDisable should accept regular expressions.
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff * mod_cache: Fix dependency on ATOMIC operators. Need
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff APR_HAS_ATOMIC_* feature macros.
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff * mod_disk_cache: Implement garbage collection
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff * mod_mem_cache/mod_disk_cache: Need to be able to query cache
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff status (num of entries, cache object properties, etc.).
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff mod_status could be extended to query optional hooks defined
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff by modules for the purpose of reporting module status.
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff mod_cache (et. al.) could define optional hooks that are called
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff to collect status. Status should be queryable by
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff HTTP or SNMP?
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff * mod_mem_cache: garbage collection. One strategy is to simply
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney remove stale entries as we attempt to serve them. Another
d6ac1282b7aebe50016ff2242315c34ac60422c8Jeff Conniff strategy is to kick off a GC thread that traverses the cache
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney and preemptively remove stale entries. How to manage a
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney cache that is full? Do LRU GC? Other? Bueller?
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * mod_mem_cache/mod_disk_cache: Complete implementing config
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * Sample config for mod_cache/mod_mem_cache/mod_disk_cache for
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney inclusion into httpd.conf.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * mod_cache/mod_mem_cache/mod_disk_cache: Documentation.
57944bee374767ef401f984a0136afb3822f22f7Matt SweeneyPRs that have been suspended forever waiting for someone to
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeneyput them into 'the next release':
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney * documentation and Q&A
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney PR#2221: Make online documentation search link back to my installation
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney PR#2906: Propose that Apache recommend $UNIQUE_ID for all "session id"
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney PR#2793: When will Apache support P3P? Any Plans?
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney PR#2113: HTTP Server Rebuild Line Needs Changing for the better
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney PR#2421: problem specifying ndbm library for build ?with autoconfigure
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney PR#76: missing call to "setlocale();"
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney PR#628: Request of "Options SymLinksIfGroupMatch"
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney PR#793: RLimitCPU and RLimitMEM don't apply to all children like they should
283a7ee219d2fefddeb34c0def9f6a3c8410e85bSatyen Desai PR#922: it is useful to allow specifiction that root-owned symlinks
07ad9ab2be0e01d9fe09926c37a65a867aa6f401Jeff Conniff should always be followed
283a7ee219d2fefddeb34c0def9f6a3c8410e85bSatyen Desai PR#1028: DoS attacks involving memory consumption
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney PR#1191: setlogin() is not called, causing problems with e.g. identd
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney PR#1204: regerror() exists, use it
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney PR#2284: Can not POST to ErrorDocument - Apache/1.3b6
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney PR#2396: Proposal for TimeZone directive
d3b7b73e5ca50ba0821b439d4f9a12cfaaf38870Jeff Conniff PR#2446: AllowOverride FileInfo is too coarse
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney PR#2760: [PATCH] User/Group for <Directory> and <Location> i.e. not only
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney in global and <Virtual>.
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney PR#2907: suggestion: power up your Include directive :)
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney PR#3018: cannot limit some HTTP methods
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney PR#3677: New ErrorDocumentMatch directive
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney PR#4244: "Files" and "FilesMatch" regexp does not recognize bang as
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney negation operator
57944bee374767ef401f984a0136afb3822f22f7Matt Sweeney PR#5993: AllowOverride should have a 'CheckNone' and 'AllowNone' argument
PR#1287: add allow,deny/deny,allow warning to mod_access
PR#1117: Using NIS passwd.byname dbm files with AuthDBMUserFile
PR#2873: Feedback/Comment on APACI
PR#2431: A small addition to rotatelogs.c to improve program functionality.
PR#2889: Inclusion of RPM spec file in CVS/distributions
* orig_ct in the byterange/multipart handling may not be