STATUS revision 7f4032179fad13f734f755824873f3b31c653933
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinAPACHE 2.0 STATUS: -*-text-*-
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinLast modified at [$Date: 2002/02/27 04:53:58 $]
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0.33 : in development
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin 2.0.32 : released Feburary 16, 2002.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0.31 : rolled Feburary 1, 2002. not released.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0.30 : tagged January 8, 2002. not rolled.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0.29 : tagged November 27, 2001. not rolled.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0.28 : released November 13, 2001
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0.27 : rolled November 6, 2001
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0.26 : tagged October 16, 2001. not rolled.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0.25 : rolled August 29, 2001
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0.24 : rolled August 18, 2001
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0.23 : rolled August 9, 2001
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0.22 : rolled July 29, 2001
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0.21 : rolled July 20, 2001
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0.20 : rolled July 8, 2001
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0.19 : rolled June 27, 2001
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0.18 : rolled May 18, 2001
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0.17 : rolled April 17, 2001
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0.16 : rolled April 4, 2001
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0.15 : rolled March 21, 2001
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0.14 : rolled March 7, 2001
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0a9 : released December 12, 2000
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0a8 : released November 20, 2000
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0a7 : released October 8, 2000
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0a6 : released August 18, 2000
7c2fbfb345896881c631598ee3852ce9ce33fb07April Chin 2.0a5 : released August 4, 2000
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0a4 : released June 7, 2000
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0a3 : released April 28, 2000
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0a2 : released March 31, 2000
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin 2.0a1 : released March 10, 2000
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinPlease consult the following STATUS files for information
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinon related projects:
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinCURRENT RELEASE NOTES:
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * 32 status: Released as beta. Enjoy.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinFINAL RELEASE SHOWSTOPPERS:
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * All ap_internal_fast_redirect()ed requests are losing their filters
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin and output headers. mod_negotiation derived Multiviewed documents
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin and mod_dir DirectoryIndex documents both demonstrate this behavior.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin cf reply: <007c01c1b3d1$46714650$94c0b0d0@v505>
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin to thread: <200202121332.IAA27467@web.turner.com>
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Solutions:
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Ditch fast_redirect, it was bogus in 1.3 and it's bogus now.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin In Agreement? : Justin, Aaron
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Fix [and *Maintain*] fast_redirect, it was useful to our redirects
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin in negotiation and dir, and it's useful to 3rd parties.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin In Agreement? :
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * If any request gets to the core handler, without a flag that this
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin r->filename was tested by dir/file_walk, we need to 500 at the very
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin end of the ap_process_request_internal() processing. This provides
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin authors of older modules better compatibility, while still improving
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin the security and robustness of 2.0.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Status: still need to decide where this goes, OtherBill comments...
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Message-ID: <065701c14526$495203b0$96c0b0d0@roweclan.net>
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin we need to look at halting this in the 'default handler' case,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin and that implies pushing the 'handler election' into the request
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin internal processing phase from the run request phase.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * We need to find out the right place to add the AddOutputFilterByType
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin directive. mod_mime? No. core with fixups? That's what it is now.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin ap_pass_brigade() hook? As a filter that runs at HTTP_HEADER stage?
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin This needs to be resolved before the next public release.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Message-ID: <018701c1b99c$f0f24310$0a01230a@KOJ>
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * API changes planned for 2.0 that should happen before the
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin GA release:
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * Free lists for bucket allocation
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * Graceful restart is broken in the worker MPM.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Message-ID: <m3g03tnrkv.fsf@rdu163-40-092.nc.rr.com>
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Justin asks: "Is this fixed? I can't reproduce now."
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinCURRENT VOTES:
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * Should we always build binaries statically unless otherwise
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin indicated?
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Message-ID: <20020129210006.B23512@Lithium.MeepZor.Com>
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin -1: Justin, Ian
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * If the parent process dies, should the remaining child processes
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "gracefully" self-terminate. Or maybe we should make it a runtime
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin option, or have a concept of 2 parent processes (one being a
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin "hot spare").
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin See: Message-ID: <3C58232C.FE91F19F@Golux.Com>
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Self-destruct: Ken, Martin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Not self-destruct: BrianP, Ian, Cliff, BillS
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Make it runtime configurable: Aaron, Jim, Justin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Have 2 parents: +1: Jim
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin -1: Justin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin +0: Martin (while standing by, could it do
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin something useful?)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * Make the worker MPM the default MPM for threaded Unix boxes.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin +1: Justin, Ian, Cliff
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin -0: Aaron (premature decision, needs more discussion), Lars
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chinRELEASE NON-SHOWSTOPPERS BUT WOULD BE REAL NICE TO WRAP THESE UP:
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * Convert all instances of the old apr_lock_t type to the new
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Status: Aaron has converted all but the perchild MPM to
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin use the new lock API. Since perchild has been put
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin on the back burner, this is no longer a showstopper.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Aaron will patch perchild as soon as it becomes
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin buildable again.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * With AP_MODE_EXHAUSTIVE in the core, it is finally clear to me
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin how the Perchild MPM should be re-written. It hasn't worked
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin correctly since filters were added because it wasn't possible to
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin get the content that had already been written and the socket at
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin the same time. This mode lets us do that, so the MPM can be
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * htpasswd blindly processes the file you give it, and does no
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin sanity checking before totally corrupting whatever file it was
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin you thought you had. It should check the input file and bail
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin if it finds non-comment lines that do not contain exactly 1
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin ':' character.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Message-ID: <20020217150457.A31632@clove.org>
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * Can a static httpd be built reliably?
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Message-ID: <20020207142751.T31582@clove.org>
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * [Ken] Test suite failures:
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin o worker is also failing some of the 'cgi' subtests
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Justin says: "Worker should be fine and passes httpd-test here.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin If you can provide evidence that it can be reproduced
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin outside of httpd-test, then it's a showstopper. I
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin think it's a perl or a httpd-test problem."
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Not a showstopper: Justin
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * Usage of APR_BRIGADE_NORMALIZE in core_input_filter should be
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin removed if possible.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Message-ID: <Pine.LNX.4.33.0201202232430.318-100000@deepthought.cs.virginia.edu>
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * There is a bug in how we sort some hooks, at least the pre-config
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin hook. The first time we call the hooks, they are in the correct
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin order, but the second time, we don't sort them correctly. Currently,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin the modules/http/config.m4 file has been renamed to
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin modules/http/config2.m4 to work around this problem, it should moved
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin back when this is fixed. rbb
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Justin says: "Is this really a showstopper? This has been here
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin forever. What's wrong? Does this have to do with
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin autoconf or m4?"
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Not a showstopper: Justin, BrianP, trawick, gregames
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * The Add...Filter and Set...Filter directives do not allow the
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin administrator to order filters, beyond the order of filename (mime)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin extensions. It isn't clear if Set...Filter(s) should be inserted
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin before or after the Add...Filter(s) which are ordered by sequence of
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin filename extensions. At minimum, some sort of +-[0-10] syntax seems
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin like the quickest fix for a 2.0 gold release.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Justin says: "Could we delay this for a point release or 2.1?"
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Not a showstopper: justin, wrowe, trawick, stoddard, Jim, Ian, Aaron,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * Get perchild to work on platforms other than Linux. This
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin will require a portable mechanism to pass data and file/socket
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin descriptors between vhost child groups. An API was proposed
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin on dev@apr:
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Message-ID: <20020111115006.K1529@clove.org>
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * Recent changes to ap_rgetline may have broken EBCDIC boxes.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Message-ID: <20020122072605.GF28051@ebuilt.com>
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Justin says: "I don't have an EBCDIC box to test on. A potential
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin solution is to split out ap_rgetline into two
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin functions as described in this message."
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin gregames says: I see the breakage now, and volunteer to fix it
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin when things calm down a little. It looks OK when
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin there are complete lines and no mime continuations.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * CGI single-byte reads
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin BrianP suggests that this is caused by the ap_scan_script_header_err()
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin routine, which will do single-byte reads until it finds the end
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin of the header, at which point it constructs a pipe-bucket (buffered)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin to read from.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Proposed solution in:
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Message-ID: <3C36ADAF.60601@cnet.com>
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * Try to get libtool inter-library dependency code working on AIX.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Message-ID: <cm3n10lx555.fsf@rdu163-40-092.nc.rr.com>
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Justin says: If we get it working on AIX, we can enable this
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin on all platforms and clean up our build system
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Jeff says: I thought I tested a patch for you sometime in
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin January that you were going to commit within a few
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * Handling of %2f in URIs. Currently both 1.3 and 2.0
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin completely disallow %2f in the request URI path (see
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin ap_unescape_url() in util.c). It's permitted and passed
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin through in the query string, however. Roy says the
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin original reason for disallowing it, from five years ago,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin was to protect CGI scripts that applied PATH_INFO to
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin a filesystem location and which might be tricked by
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin ..%2f..%2f(...). We *should* allow path-info of the
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Since we've revamped a lot of our processing of path
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin segments, it would be nice to allow this, or at least
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin allow it conditionally with a directive.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * FreeBSD, threads, and worker MPM. All seems to work fine
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin if you only have one worker process with many threads. Add
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin a second worker process and the accept lock seems to be
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin lost. This might be an APR issue with how it deals with
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin the child_init hook (i.e. the fcntl lock needs to be resynced).
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin More examination and analysis is required.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Status: This has also been reported on Cygwin.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Message-ID: <3C2CC514.8EF3BED1@wapme-systems.de> (cygnus)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Justin says: So, FreeBSD-CURRENT and Cywin have the same
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin problem. Yum. If another platform has this
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin with worker, this becomes a showstopper.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Aaron says: I spent some time disecting this and have come to
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin the conclusion that it is not a problem in the worker MPM
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin (or at least, it is not isolated to a problem in worker).
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin I'll list some of the problems I'm seeing in case someone
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin else wants to pick up where I've left off:
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin - Delivery of just about any signal to one of the child
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin processes will send it into an infinite loop as well.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin - Even though the parent is spinning out of control,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin at first the child or children will appear to work
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin properly. At times it is possible to get it into a state,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin however, where a request will hang until another concurrent
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin request "kicks" the first, at which point the second will
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin hang. My theory is that this has to do with the
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin pthread_cond_*() implementation in FreeBSD, but it's still
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin possible that it is in APR.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Justin adds: Oh, FreeBSD threads are implemented entirely with
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin select()/poll()/longjmp(). Welcome to the nightmare.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin So, that means a ktrace output also has the thread
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin scheduling internals in it (since it is all the same to
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin the kernel). Which makes it hard to distinguish between
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin our select() calls and their select() calls.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin *bangs head on wall repeatedly* But, some of the libc_r
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin files have a DBG_MSG #define. This is moderately helpful
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin when used with -DNO_DETACH. The kernel scheduler isn't
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin waking up the threads on a select(). Yum. And, I bet
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin those decrementing select calls have to do with the
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin scheduler. Time to brush up on our OS fundamentals.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * There is increasing demand from module writers for an API
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin that will allow them to control the server � la apachectl.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Reasons include sole-function servers that need to die if
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin an external dependency (e.g., a database) fails, et cetera.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Perhaps something in the (ever more abused) scoreboard?
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin rbb: I don't believe the scoreboard is the correct mechanism
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin for this. We already have a pipe that goes between parent
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin and child for graceful shutdown events, along with an API that
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin can be used to send a message down that pipe. In threaded MPMs,
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin it is easy enough to make that one pipe be used for graceful
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin and graceless events, and it is also easy to open that pipe
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin to both parent and child for writing. Then we just need to
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin figure out how to do graceless on non-threaded MPMs.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * Allow the DocumentRoot directive within <Location > scopes? This
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin allows the beloved (crusty) Alias /foo/ /somepath/foo/ followed
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin by a <Directory /somepath/foo> to become simply
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin <Location /foo/> DocumentRoot /somefile/foo (IMHO a bit more legible
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin and in-your-face.) DocumentRoot unset would be accepted [and would
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin not permit content to be served, only virtual resources such as
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin server-info or server-status.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin This proposed change would _not_ depricate Alias.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * Win32: Rotatelogs sometimes is not terminated when Apache
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin goes down hard. FirstBill was looking at possibly tracking the
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin child's-child processes in the parent process.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin OtherBill asks, wasn't this fixed?
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin stoddard: Not fixed. Shared scoreboard might offer a good
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin way for the parent to keep track of 'other child' processes
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin and whack them if the child goes down.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * Win32: Add a simple hold console open patch (wait for close or
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin the ESC key, with a nice message) if the server died a bad
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin death (non-zero exit code) in console mode.
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin Resolution: bring forward same ugly hacks from 1.3.13-.20
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin * Port of mod_ssl to Apache 2.0:
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin The current porting state is summarized in modules/ssl/README. The
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin remaining work includes:
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin (1) stablizing/optimizing the SSL filter logic
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin (2) Enabling the various SSL caching mechanisms (shmcb, shmht)
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin (3) Enabling SSL extentions
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin (4) Trying to seperate the https filter logic from mod_ssl -
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin This is to facilitate other modules that wish to use the https
da2e3ebdc1edfbc5028edf1354e7dd2fa69a7968chin filter or the mod_ssl logic or both as required.
shared memory another way that is much cleaner (i.e.
malloc/free calls in the bucket brigade code. Need some
have something to look at/compare with.
"Apache" layout from config.layout, and each variable settable
* Combine log_child and piped_log_spawn. Clean up http_log.c.
* Win32: Migrate the MPM over to use APR thread/process calls. This
losing error status (i.e. throwing away the error returned by a
* All DBMs suffer from confusion in support/dbmmanage (perl script) since
* Explore use of a post-config hook for the code in http_main.c which
* (possibly) use UUIDs in mod_unique_id and/or mod_usertrack
* shift stuff to mod_core.h
rand.c, at least.) This could be resolved with an SSL library, or
- Bring the Win9xConHook.dll from 1.3 into 2.0 (no sense till it
Using NIS passwd.byname dbm files with AuthDBMUserFile
setlogin() is not called, causing problems with e.g. identd
add allow,deny/deny,allow warning to mod_access
A small addition to rotatelogs.c to improve program functionality.
Feedback/Comment on APACI
Inclusion of RPM spec file in CVS/distributions
* orig_ct in the byterange/multipart handling may not be