STATUS revision 366616a5cc6212cbf7134ccf877f965d668c6b04
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob HalleyAPACHE 2.1 STATUS: -*-text-*-
d4ef65050feac78554addf6e16a06c6e2e0bd331Brian WellingtonLast modified at [$Date$]
d4ef65050feac78554addf6e16a06c6e2e0bd331Brian WellingtonThe current version of this file can be found at:
d4ef65050feac78554addf6e16a06c6e2e0bd331Brian Wellington * http://svn.apache.org/repos/asf/httpd/httpd/trunk/STATUS
d4ef65050feac78554addf6e16a06c6e2e0bd331Brian WellingtonDocumentation status is maintained seperately and can be found at:
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews * docs/STATUS in this source tree, or
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews * http://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/STATUS
dafcb997e390efa4423883dafd100c975c4095d6Mark AndrewsConsult the following STATUS files for information on related projects:
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews * http://svn.apache.org/repos/asf/apr/apr/trunk/STATUS
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews * http://svn.apache.org/repos/asf/apr/apr-util/trunk/STATUS
d4ef65050feac78554addf6e16a06c6e2e0bd331Brian WellingtonPatches considered for backport are noted in their branches' STATUS:
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley * http://svn.apache.org/repos/asf/httpd/httpd/branches/1.3.x/STATUS
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley * http://svn.apache.org/repos/asf/httpd/httpd/branches/2.0.x/STATUS
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob HalleyRelease history:
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley [NOTE that only Alpha/Beta releases occur in 2.1 development]
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley 2.1.7 : in development
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley 2.1.6 : Tagged on 6/24/2005.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley 2.1.5 : Tagged on 6/17/2005.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley 2.1.4 : not released.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley 2.1.3 : Released on 2/22/2005 as alpha.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley 2.1.2 : Released on 12/08/2004 as alpha.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley 2.1.1 : Released on 11/19/2004 as alpha.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley 2.1.0 : not released.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob HalleyContributors looking for a mission:
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley * Just do an egrep on "TODO" or "XXX" in the source.
a769eca4e3b223866b01dc8f7a4dde8d9e49bab0Mark Andrews * Review the bug database at: http://issues.apache.org/bugzilla/
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley * Review the "PatchAvailable" bugs in the bug database:
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley http://issues.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&product=Apache+httpd-2.0&keywords=PatchAvailable
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley After testing, you can append a comment saying "Reviewed and tested".
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley * Open bugs in the bug database.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob HalleyCURRENT RELEASE NOTES:
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob HalleyRELEASE SHOWSTOPPERS:
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley * Handling of non-trailing / config by non-default handler is broken
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley http://marc.theaimsgroup.com/?l=apache-httpd-dev&m=105451701628081&w=2
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley jerenkrantz asks: Why should this block a release?
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley wsanchez agrees: this may be a change in behavior, but isn't
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley clearly wrong, and even if so, it doesn't seem like a
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley showstopper.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley * the edge connection filter cannot be removed
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley http://marc.theaimsgroup.com/?l=apache-httpd-dev&m=105366252619530&w=2
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley jerenkrantz asks: Why should this block a release?
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley stas replies: because it requires a rewrite of the filters stack
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley implementation (you have suggested that) and once 2.2 is
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley released you can't do that anymore.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob HalleyCURRENT VOTES:
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley a) httpd-std.conf should be tailored by install (from src or
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley binbuild) even if user has existing httpd.conf
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley +1: trawick, slive, gregames, ianh, Ken, wrowe, jwoolley, jim, nd,
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley wrowe - prefer httpd.default.conf to avoid ambiguity with cvs
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley b) tailored httpd-std.conf should be copied by install to
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley c) tailored httpd-std.conf should be installed to
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley +1: slive, trawick, Ken, nd (prefer the latter), erikabele
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley +1: wsanchez (propose sysconfdir/examples/<version> for diffiness)
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley d) Installing a set of default config files when upgrading a server
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley doesn't make ANY sense at all.
a769eca4e3b223866b01dc8f7a4dde8d9e49bab0Mark Andrews +1: ianh - medium/big sites don't use 'standard config' anyway, as it
a769eca4e3b223866b01dc8f7a4dde8d9e49bab0Mark Andrews usually needs major customizations
a769eca4e3b223866b01dc8f7a4dde8d9e49bab0Mark Andrews -1: Ken, wrowe, jwoolley, jim, nd, erikabele
a769eca4e3b223866b01dc8f7a4dde8d9e49bab0Mark Andrews wrowe - diff is wonderful when comparing old/new default configs,
a769eca4e3b223866b01dc8f7a4dde8d9e49bab0Mark Andrews even for customized sites that ianh mentions
a769eca4e3b223866b01dc8f7a4dde8d9e49bab0Mark Andrews jim - ... assuming that the default configs have been updated
a769eca4e3b223866b01dc8f7a4dde8d9e49bab0Mark Andrews with the required inline docs to explain the
a769eca4e3b223866b01dc8f7a4dde8d9e49bab0Mark Andrews * If the parent process dies, should the remaining child processes
a769eca4e3b223866b01dc8f7a4dde8d9e49bab0Mark Andrews "gracefully" self-terminate. Or maybe we should make it a runtime
a769eca4e3b223866b01dc8f7a4dde8d9e49bab0Mark Andrews option, or have a concept of 2 parent processes (one being a
a769eca4e3b223866b01dc8f7a4dde8d9e49bab0Mark Andrews "hot spare").
a769eca4e3b223866b01dc8f7a4dde8d9e49bab0Mark Andrews See: Message-ID: <3C58232C.FE91F19F@Golux.Com>
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley Self-destruct: Ken, Martin, Lars
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley Not self-destruct: BrianP, Ian, Cliff, BillS
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley Make it runtime configurable: Aaron, jim, Justin, wrowe, rederpj, nd
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley /* The below was a concept on *how* to handle the problem */
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley Have 2 parents: +1: jim
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley -1: Justin, wrowe, rederpj, nd
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley +0: Lars, Martin (while standing by, could it do
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley something useful?)
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley * Make the worker MPM the default MPM for threaded Unix boxes.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley +1: Justin, Ian, Cliff, BillS, striker, wrowe, nd
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley +0: BrianP, Aaron (mutex contention is looking better with the
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley latest code, let's continue tuning and testing), rederpj, jim
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley pquerna: Do we want to change this for 2.2?
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob HalleyRELEASE NON-SHOWSTOPPERS BUT WOULD BE REAL NICE TO WRAP THESE UP:
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley * Patches submitted to the bug database:
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley http://issues.apache.org/bugzilla/buglist.cgi?bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&product=Apache+httpd-2.0&keywords=PatchAvailable
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley * The Event MPM does not work on Solaris 10. PR 34040.
b435b1ded3def3159f597953d21dffc1615cb250Brian Wellington * Filter stacks and subrequests, redirects and fast redirects.
b435b1ded3def3159f597953d21dffc1615cb250Brian Wellington There's at least one PR that suffers from the current unclean behaviour
b435b1ded3def3159f597953d21dffc1615cb250Brian Wellington (which lets the server send garbage): PR 17629
b435b1ded3def3159f597953d21dffc1615cb250Brian Wellington nd says: Every subrequest should get its own filter stack with the
b435b1ded3def3159f597953d21dffc1615cb250Brian Wellington subreq_core filter as bottom-most. That filter does two things:
b435b1ded3def3159f597953d21dffc1615cb250Brian Wellington - swallow EOS buckets
b435b1ded3def3159f597953d21dffc1615cb250Brian Wellington - redirect the data stream to the upper request's (rr->main)
b435b1ded3def3159f597953d21dffc1615cb250Brian Wellington filter chain directly after the subrequest's starting
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley Once we have a clean solution, we can try to optimize
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley it, so that the server won't be slow down too much.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley * RFC 2616 violations.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley Closed PRs: 15857.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley Open PRs: 15852, 15859, 15861, 15864, 15865, 15866, 15868, 15869,
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley 15870, 16120, 16125, 16126, 16133, 16135, 16136, 16137,
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley 16138, 16139, 16140, 16142, 16518, 16520, 16521,
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley jerenkrantz says: need to decide how many we need to backport and/or
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley if these rise to showstopper status.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley wrowe suggests: it would be nice to see "MUST" v.s. "SHOULD" v.s. "MAY"
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley out of this list, without reviewing them individually.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley * There is a bug in how we sort some hooks, at least the pre-config
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley hook. The first time we call the hooks, they are in the correct
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley order, but the second time, we don't sort them correctly. Currently,
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley the modules/http/config.m4 file has been renamed to
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley modules/http/config2.m4 to work around this problem, it should moved
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley back when this is fixed.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley OtherBill offers that this is a SERIOUS problem. We do not sort
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley correctly by the ordering arguments passed to the register hook
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley functions. This was proven when I reordered the open_logs hook
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley to attempt to open the error logs prior to the access logs. Possibly
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley the entire sorting code needs to be refactored.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley * pipes deadlock on all platforms with limited pipe buffers (e.g. both
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley Linux and Win32, as opposed to only Win32 on 1.3). The right solution
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley is either GStein's proposal for a "CGI Brigade", or OtherBill's proposal
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley for "Poll Buckets" for "Polling Filter Chains". Or maybe both :-)
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley * All handlers should always send content down even if r->header_only
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley is set. If not, it means that the HEAD requests don't generate the
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley same headers as a GET which is wrong.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley * exec cmd and suexec arg-passing enhancements
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley Status: Patches proposed
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley Message-ID: <20020526041748.A29148@prodigy.Redbrick.DCU.IE>
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley (see the "proc.patch" and "suexec-shell.patch" links in this message)
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley * The 2.0.36 worker MPM graceless shutdown changes work but are
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley a bit clunky on some platforms; eg, on Linux, the loop to
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley join each worker thread seems to hang, and the parent ends up
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley killing off the child with SIGKILL. But at least it shuts down.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley * --enable-mods-shared="foo1 foo2" is busted on Darwin. Pier
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley posted a patch (Message-ID: <B8DBBE8D.575A%pier@betaversion.org>).
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley * We do not properly substitute the prefix-variables in the configuration
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley scripts or generated-configs. (i.e. if sysconfdir is etc,
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley httpd-std.conf points to conf.)
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley * If any request gets through ap_process_request_internal() and is
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley scheduled to be served by the core handler, without a flag that this
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley r->filename was tested by dir/file_walk, we need to 500 at the very
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley end of the ap_process_request_internal() processing so sub_req-esters
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley know this request cannot be run. This provides authors of older
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley modules better compatibility, while still improving the security and
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley robustness of 2.0.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley Status: still need to decide where this goes, OtherBill comments...
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley Message-ID: <065701c14526$495203b0$96c0b0d0@roweclan.net>
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley [Deleted comments regarding the ap_run_handler phase, as irrelevant
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley as BillS points out that "common case will be caught in
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley default_handler already (with the r->finfo.filetype == 0 check)"
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley and the issue is detecting this -before- we try to run the req.]
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley gregames says: can this happen somehow without a broken module
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley being involved? If not, why waste cycles trying to defend against
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley potential broken modules? It seems futile.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley wrowe counters: no, it shouldn't happen unless the module is broken.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley But the right answer is to fail the request up-front in dir/file
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley walk if the path was entirely invalid; and we can't do that either
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley UNTIL 2.1 or we break modules that haven't hooked map_to_storage.
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley * With AP_MODE_EXHAUSTIVE in the core, it is finally clear to me
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley how the Perchild MPM should be re-written. It hasn't worked
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley correctly since filters were added because it wasn't possible to
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley get the content that had already been written and the socket at
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley the same time. This mode lets us do that, so the MPM can be
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley * Can a static httpd be built reliably?
4610465ed9408cbe434dbfb8be8ea53f48969c91Bob Halley Message-ID: <20020207142751.T31582@clove.org>
will require a portable mechanism to pass data and file/socket
ap_unescape_url() in util.c). It's permitted and passed
the child_init hook (i.e. the fcntl lock needs to be resynced).
an external dependency (e.g., a database) fails, et cetera.
allows the beloved (crusty) Alias /foo/ /somepath/foo/ followed
by a <Directory /somepath/foo> to become simply
<Location /foo/> DocumentRoot /somefile/foo (IMHO a bit more legible
* Combine log_child and piped_log_spawn. Clean up http_log.c.
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
Message-ID: <Pine.LNX.4.44.0203011354090.16457-200000@deepthought
tree apr/apr-util, but it's a good start. There's still the
* ssl_engine_pphrase.c needs to be reworked so it is generic enough
-if- we want to cache page fragements). Today, mod_cache/mod_mem_cache
* mod_cache: CacheEnable/CacheDisable should accept regular expressions.
* mod_mem_cache/mod_disk_cache: Need to be able to query cache
* orig_ct in the byterange/multipart handling may not be