STATUS revision ad7ca6367fa53c34a7897546210958f2c0f22a26
5cd4555ad444fd391002ae32450572054369fd42Rob AusteinAPACHE 2.0 STATUS: -*-text-*-
5cd4555ad444fd391002ae32450572054369fd42Rob AusteinLast modified at [$Date: 2002/04/08 13:59:37 $]
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley 2.0.34 : tagged March 26, 2002.
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley 2.0.33 : tagged March 6, 2002. not released.
dd750c560ae48cf6caeb9a9fe81d33fc4746106dBrian Wellington 2.0.32 : released Feburary 16, 2002 as beta.
dd750c560ae48cf6caeb9a9fe81d33fc4746106dBrian Wellington 2.0.31 : rolled Feburary 1, 2002. not released.
dd750c560ae48cf6caeb9a9fe81d33fc4746106dBrian Wellington 2.0.30 : tagged January 8, 2002. not rolled.
dd750c560ae48cf6caeb9a9fe81d33fc4746106dBrian Wellington 2.0.29 : tagged November 27, 2001. not rolled.
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews 2.0.28 : released November 13, 2001 as beta.
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews 2.0.27 : rolled November 6, 2001
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews 2.0.26 : tagged October 16, 2001. not rolled.
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews 2.0.25 : rolled August 29, 2001
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews 2.0.24 : rolled August 18, 2001
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews 2.0.23 : rolled August 9, 2001
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews 2.0.22 : rolled July 29, 2001
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley 2.0.21 : rolled July 20, 2001
f5d30e2864e048a42c4dc1134993ae7efdb5d6c3Mark Andrews 2.0.20 : rolled July 8, 2001
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews 2.0.19 : rolled June 27, 2001
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley 2.0.18 : rolled May 18, 2001
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley 2.0.17 : rolled April 17, 2001
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley 2.0.16 : rolled April 4, 2001
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley 2.0.15 : rolled March 21, 2001
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley 2.0.14 : rolled March 7, 2001
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley 2.0a9 : released December 12, 2000
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley 2.0a8 : released November 20, 2000
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley 2.0a7 : released October 8, 2000
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley 2.0a6 : released August 18, 2000
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley 2.0a5 : released August 4, 2000
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley 2.0a4 : released June 7, 2000
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley 2.0a3 : released April 28, 2000
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley 2.0a2 : released March 31, 2000
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley 2.0a1 : released March 10, 2000
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob HalleyPlease consult the following STATUS files for information
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austeinon related projects:
268a4475065fe6a8cd7cc707820982cf5e98f430Rob AusteinCURRENT RELEASE NOTES:
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein * 34 status: Let's get all API changes and showstoppers in this one.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob AusteinFINAL RELEASE SHOWSTOPPERS:
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley * We do not properly substitute the prefix-variables in the configuration
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley scripts or generated-configs. (i.e. if sysconfdir is etc,
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley httpd-std.conf points to conf.)
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews Aaron says: This is not a showstopper, these problems have existed
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley for as long as I can remember. It would be nice to fix
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley them but they are not new.
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley Not a showstopper: Jeff, Aaron, BillS, gregames, Jim
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob HalleyCURRENT VOTES:
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley * Should we always build [support*] binaries statically unless otherwise
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley Message-ID: <20020129210006.B23512@Lithium.MeepZor.Com>
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley +1: Ken, *wrowe [they are PITAs on OSX]
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley -1: Justin, Ian
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews * If the parent process dies, should the remaining child processes
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews "gracefully" self-terminate. Or maybe we should make it a runtime
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley option, or have a concept of 2 parent processes (one being a
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley "hot spare").
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley See: Message-ID: <3C58232C.FE91F19F@Golux.Com>
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley Self-destruct: Ken, Martin
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein Not self-destruct: BrianP, Ian, Cliff, BillS
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein Make it runtime configurable: Aaron, Jim, Justin
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein Have 2 parents: +1: Jim
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein -1: Justin, wrowe [for 2.0]
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein +0: Martin (while standing by, could it do
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein something useful?)
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley * Make the worker MPM the default MPM for threaded Unix boxes.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein +1: Justin, Ian, Cliff
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein -0: Aaron (premature decision, needs more discussion), Lars
268a4475065fe6a8cd7cc707820982cf5e98f430Rob AusteinRELEASE NON-SHOWSTOPPERS BUT WOULD BE REAL NICE TO WRAP THESE UP:
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein * ap_cache_hex2msec() and ap_cache_msec2hex() are completely
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein hosed. They do not handle apr_time_t (64 bit ints) properly.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein * If any request gets through ap_process_request_internal() and is
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley scheduled to be served by the core handler, without a flag that this
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley r->filename was tested by dir/file_walk, we need to 500 at the very
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein end of the ap_process_request_internal() processing so sub_req-esters
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein know this request cannot be run. This provides authors of older
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein modules better compatibility, while still improving the security and
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein robustness of 2.0.
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley Status: still need to decide where this goes, OtherBill comments...
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley Message-ID: <065701c14526$495203b0$96c0b0d0@roweclan.net>
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein [Deleted comments regarding the ap_run_handler phase, as irrelevant
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein as BillS points out that "common case will be caught in
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein default_handler already (with the r->finfo.filetype == 0 check)"
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein and the issue is detecting this -before- we try to run the req.]
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein gregames says: can this happen somehow without a broken module
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein being involved? If not, why waste cycles trying to defend against
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein potential broken modules? It seems futile.
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley wrowe counters: no, it shouldn't happen unless the module is broken.
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley But the right answer is to fail the request up-front in dir/file
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley walk if the path was entirely invalid; and we can't do that either
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley or we break modules that are unwilling to hook map_to_storage.
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley * Rewrite core_output_filter. It is nearly impossible to support
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley it with predictable results as it is implemented now.
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews * Convert all instances of the old apr_lock_t type to the new
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews Status: Aaron has converted all but the perchild MPM to
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews use the new lock API. Since perchild has been put
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews on the back burner, this is no longer a showstopper.
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews Aaron will patch perchild as soon as it becomes
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews buildable again.
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews * With AP_MODE_EXHAUSTIVE in the core, it is finally clear to me
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews how the Perchild MPM should be re-written. It hasn't worked
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews correctly since filters were added because it wasn't possible to
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews get the content that had already been written and the socket at
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews the same time. This mode lets us do that, so the MPM can be
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews * htpasswd blindly processes the file you give it, and does no
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews sanity checking before totally corrupting whatever file it was
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews you thought you had. It should check the input file and bail
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews if it finds non-comment lines that do not contain exactly 1
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews ':' character.
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews Message-ID: <20020217150457.A31632@clove.org>
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews * Can a static httpd be built reliably?
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews Message-ID: <20020207142751.T31582@clove.org>
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews * [Ken] Test suite failures:
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews o worker is also failing some of the 'cgi' subtests
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews (see <URL:http://Source-Zone.Org/Apache/regression/>):
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews Justin says: "Worker should be fine and passes httpd-test here.
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews If you can provide evidence that it can be reproduced
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews outside of httpd-test, then it's a showstopper. I
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews think it's a perl or a httpd-test problem."
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews Not a showstopper: Justin
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews * Usage of APR_BRIGADE_NORMALIZE in core_input_filter should be
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews removed if possible.
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley Message-ID: <Pine.LNX.4.33.0201202232430.318-100000@deepthought.cs.virginia.edu>
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein * There is a bug in how we sort some hooks, at least the pre-config
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein hook. The first time we call the hooks, they are in the correct
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein order, but the second time, we don't sort them correctly. Currently,
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein the modules/http/config.m4 file has been renamed to
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein modules/http/config2.m4 to work around this problem, it should moved
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews back when this is fixed. rbb
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley Justin says: "Is this really a showstopper? This has been here
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein forever. What's wrong? Does this have to do with
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley autoconf or m4?"
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley Not a showstopper: Justin, BrianP, trawick, gregames
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein * The Add...Filter and Set...Filter directives do not allow the
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein administrator to order filters, beyond the order of filename (mime)
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein extensions. It isn't clear if Set...Filter(s) should be inserted
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein before or after the Add...Filter(s) which are ordered by sequence of
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein filename extensions. At minimum, some sort of +-[0-10] syntax seems
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein like the quickest fix for a 2.0 gold release.
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley Justin says: "Could we delay this for a point release or 2.1?"
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein Not a showstopper: justin, wrowe, trawick, stoddard, Jim, Ian, Aaron,
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley * Get perchild to work on platforms other than Linux. This
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein will require a portable mechanism to pass data and file/socket
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein descriptors between vhost child groups. An API was proposed
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein Message-ID: <20020111115006.K1529@clove.org>
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein * Try to get libtool inter-library dependency code working on AIX.
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley Message-ID: <cm3n10lx555.fsf@rdu163-40-092.nc.rr.com>
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley Justin says: If we get it working on AIX, we can enable this
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein on all platforms and clean up our build system
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein Jeff says: I thought I tested a patch for you sometime in
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein January that you were going to commit within a few
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein * Handling of %2f in URIs. Currently both 1.3 and 2.0
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley completely disallow %2f in the request URI path (see
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley ap_unescape_url() in util.c). It's permitted and passed
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews through in the query string, however. Roy says the
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews original reason for disallowing it, from five years ago,
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews was to protect CGI scripts that applied PATH_INFO to
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews a filesystem location and which might be tricked by
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews ..%2f..%2f(...). We *should* allow path-info of the
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews form 'http://foo.com/index.cgi/path/to/path%2finfo'.
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews Since we've revamped a lot of our processing of path
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews segments, it would be nice to allow this, or at least
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews allow it conditionally with a directive.
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews * FreeBSD, threads, and worker MPM. All seems to work fine
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews if you only have one worker process with many threads. Add
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews a second worker process and the accept lock seems to be
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews lost. This might be an APR issue with how it deals with
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews the child_init hook (i.e. the fcntl lock needs to be resynced).
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews More examination and analysis is required.
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews Status: This has also been reported on Cygwin.
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews Message-ID: <3C2CC514.8EF3BED1@wapme-systems.de> (cygnus)
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews Justin says: So, FreeBSD-CURRENT and Cywin have the same
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews problem. Yum. If another platform has this
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews with worker, this becomes a showstopper.
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews Aaron says: I spent some time disecting this and have come to
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews the conclusion that it is not a problem in the worker MPM
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews (or at least, it is not isolated to a problem in worker).
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews I'll list some of the problems I'm seeing in case someone
0f78f780648806bcb3e374b7dafac73e6c558ea8Mark Andrews else wants to pick up where I've left off:
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley - Delivery of just about any signal to one of the child
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein processes will send it into an infinite loop as well.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Even though the parent is spinning out of control,
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein at first the child or children will appear to work
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein properly. At times it is possible to get it into a state,
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein however, where a request will hang until another concurrent
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein request "kicks" the first, at which point the second will
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein hang. My theory is that this has to do with the
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein pthread_cond_*() implementation in FreeBSD, but it's still
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein possible that it is in APR.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein Justin adds: Oh, FreeBSD threads are implemented entirely with
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley select()/poll()/longjmp(). Welcome to the nightmare.
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley So, that means a ktrace output also has the thread
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley scheduling internals in it (since it is all the same to
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein the kernel). Which makes it hard to distinguish between
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein our select() calls and their select() calls.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein *bangs head on wall repeatedly* But, some of the libc_r
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein files have a DBG_MSG #define. This is moderately helpful
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein when used with -DNO_DETACH. The kernel scheduler isn't
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein waking up the threads on a select(). Yum. And, I bet
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley those decrementing select calls have to do with the
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein scheduler. Time to brush up on our OS fundamentals.
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley * There is increasing demand from module writers for an API
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley that will allow them to control the server � la apachectl.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein Reasons include sole-function servers that need to die if
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein an external dependency (e.g., a database) fails, et cetera.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein Perhaps something in the (ever more abused) scoreboard?
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein rbb: I don't believe the scoreboard is the correct mechanism
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein for this. We already have a pipe that goes between parent
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein and child for graceful shutdown events, along with an API that
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein can be used to send a message down that pipe. In threaded MPMs,
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein it is easy enough to make that one pipe be used for graceful
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley and graceless events, and it is also easy to open that pipe
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein to both parent and child for writing. Then we just need to
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley figure out how to do graceless on non-threaded MPMs.
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley * Allow the DocumentRoot directive within <Location > scopes? This
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein allows the beloved (crusty) Alias /foo/ /somepath/foo/ followed
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein by a <Directory /somepath/foo> to become simply
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein <Location /foo/> DocumentRoot /somefile/foo (IMHO a bit more legible
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein and in-your-face.) DocumentRoot unset would be accepted [and would
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein not permit content to be served, only virtual resources such as
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley server-info or server-status.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein This proposed change would _not_ depricate Alias.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein * Win32: Rotatelogs sometimes is not terminated when Apache
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein goes down hard. FirstBill was looking at possibly tracking the
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein child's-child processes in the parent process.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein OtherBill asks, wasn't this fixed?
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein stoddard: Not fixed. Shared scoreboard might offer a good
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley way for the parent to keep track of 'other child' processes
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley and whack them if the child goes down.
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley Other thoughts on walking the process chain using the NT kernel
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein have also been proposed on APR.
561a29af8c54a216e7d30b5b4f6e0d21661654ecMark Andrews * Win32: Add a simple hold console open patch (wait for close or
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein the ESC key, with a nice message) if the server died a bad
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein death (non-zero exit code) in console mode.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein Resolution: bring forward same ugly hacks from 1.3.13-.20
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein * Port of mod_ssl to Apache 2.0:
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein The current porting state is summarized in modules/ssl/README. The
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein remaining work includes:
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein (1) stablizing/optimizing the SSL filter logic
561a29af8c54a216e7d30b5b4f6e0d21661654ecMark Andrews (2) Enabling SSL extentions
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein (3) Trying to seperate the https filter logic from mod_ssl -
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein This is to facilitate other modules that wish to use the https
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein filter or the mod_ssl logic or both as required.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein * Eliminate unnecessary creation of pipes in mod_cgid
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley * Combine log_child and piped_log_spawn. Clean up http_log.c.
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley Common logging API.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein * Document mod_file_cache.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein * Platforms that do not support fork (primarily Win32 and AS/400)
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein Architect start-up code that avoids initializing all the modules
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein in the parent process on platforms that do not support fork.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein * Win32: Migrate the MPM over to use APR thread/process calls. This
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley would eliminate some code in the Win32 branch that essentially
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley duplicates what is in APR.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein * There are still a number of places in the code where we are
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein losing error status (i.e. throwing away the error returned by a
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein system call and replacing it with a generic error code)
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley * Mass vhosting version of suEXEC.
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley * All DBMs suffer from confusion in support/dbmmanage (perl script) since
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley the dbmmanage employs the first-matched dbm format. This is not
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley necessarily the library that Apache was built with. Aught to
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley rewrite dbmmanage upon installation to bin/ with the proper library
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley for predictable mod_auth_dbm administration.
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley Questions; htdbm exists, time to kill dbmmanage, or does it remain
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley useful as a perl dbm management example? If we keep it,
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley do we address the issue above?
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley * Integrate mod_dav.
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley Some additional items remaining:
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley - case_preserved_filename stuff
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein (use the new canonical name stuff?)
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - find a new home for ap_text(_header)
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - is it possible to remove the DAV: namespace stuff from util_xml?
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley * ap_core_translate() and its use by mod_mmap_static and mod_file_cache
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein are a bit wonky. The function should probably be exposed as a utility
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley function (such as ap_translate_url2fs() or ap_validate_fs_url() or
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley something). Another approach would be a new hook phase after
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley "translate" which would allow the module to munge what the
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein translation has decided to do.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein Status: Greg +1 (volunteers), Ryan +1
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein * Explore use of a post-config hook for the code in http_main.c which
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley calls ap_fixup_virutal_hosts(), ap_fini_vhost_config(), and
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein ap_sort_hooks() [to reduce the logic in main()]
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley * read the config tree just once, and process N times (as necessary)
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley * (possibly) use UUIDs in mod_unique_id and/or mod_usertrack
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley * (possibly) port the bug fix for PR 6942 (segv when LoadModule is put
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley into a VirtualHost container) to 2.0.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein * shift stuff to mod_core.h
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein * callers of ap_run_create_request() should check the return value
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein for failure (Doug volunteers)
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein * Win32: Get Apache working on Windows 95/98. The following work
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein (at least) needs to be done:
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein - Document warning that OSR2 is required (for Crypt functions, in
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein rand.c, at least.) This could be resolved with an SSL library, or
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley randomization in APR itself.
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley - Bring the Win9xConHook.dll from 1.3 into 2.0 (no sense till it
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley actually works) and add in a splash of Win9x service code.
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley * In order to use a DSO version of mod_ssl we have to link with
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein -lssl and -lcrypto. A workaround is in place right now where the
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley entire EXTRA_LIBS macro is being appended to the objects list, but
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley this is a hack. We should either revamp the APACHE_CHECK_SSL_TOOLKIT
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley autoconf function or come up with some other autoconf checks to
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein search for libssl and libcrypto and properly add them to mod_ssl's
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley * Fix the worker MPM to use POD to kill child processes instead
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley of ap_os_killpg, regardless of how they should die. (Ryan Bloom)
Message-ID: <Pine.LNX.4.44.0203011354090.16457-200000@deepthought
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
Solaris 8.x/sparc no Jim Jagielski
Solaris 8.x/i386 no Aaron Bannert