]> granicus.if.org Git - apache/blob - STATUS
.32 has been rolled and placed in /dist/httpd
[apache] / STATUS
1 APACHE 2.0 STATUS:                                              -*-text-*-
2 Last modified at [$Date: 2002/02/14 08:22:32 $]
3
4 Release:
5
6     2.0.33  : in development
7     2.0.32  : rolled Feburary 14, 2002.
8     2.0.31  : rolled Feburary 1, 2002.  not released.
9     2.0.30  : tagged January 8, 2002.  not rolled.
10     2.0.29  : tagged November 27, 2001.  not rolled.
11     2.0.28  : released November 13, 2001
12     2.0.27  : rolled November 6, 2001
13     2.0.26  : tagged October 16, 2001.  not rolled.
14     2.0.25  : rolled August 29, 2001
15     2.0.24  : rolled August 18, 2001
16     2.0.23  : rolled August 9, 2001
17     2.0.22  : rolled July 29, 2001
18     2.0.21  : rolled July 20, 2001
19     2.0.20  : rolled July 8, 2001
20     2.0.19  : rolled June 27, 2001
21     2.0.18  : rolled May 18, 2001
22     2.0.17  : rolled April 17, 2001
23     2.0.16  : rolled April 4, 2001
24     2.0.15  : rolled March 21, 2001
25     2.0.14  : rolled March 7, 2001
26     2.0a9   : released December 12, 2000
27     2.0a8   : released November 20, 2000
28     2.0a7   : released October 8, 2000
29     2.0a6   : released August 18, 2000
30     2.0a5   : released August 4, 2000
31     2.0a4   : released June 7, 2000
32     2.0a3   : released April 28, 2000
33     2.0a2   : released March 31, 2000
34     2.0a1   : released March 10, 2000
35
36 Please consult the following STATUS files for information
37 on related projects:
38
39     * srclib/apr/STATUS
40     * srclib/apr-util/STATUS
41     * docs/STATUS
42
43
44 CURRENT RELEASE NOTES:
45
46     * 32 status:
47       Rolled.
48         http://www.apache.org/dist/httpd/httpd-2.0.32-alpha.tar.gz
49       Tested on: Linux 2.4, Win2K, FreeBSD 3.4, AIX 
50       Release .32 as beta:
51         +1: trawick, Justin
52
53 FINAL RELEASE SHOWSTOPPERS:
54
55     * ap_directory_walk skips some per-dir config merge functions
56       if there is no "<Directory />" block in the configuration
57         Message-ID: <m3itbdiijq.fsf@rdu163-40-092.nc.rr.com>
58         * That is very unlikely, merges are additive.  Much more likely,
59           the default SetOutputFilter default or merge is borked.
60           Unless it's the code that permits 'null' merges, per module.
61           Still, it's probably in SetOutputFilter's behavior.
62         * BrianP notes: directory_walk's handling of trailing slashes
63           appears to be the cause: <3C1CF721.1090300@pacbell.net>
64
65     * If any request gets to the core handler, without a flag that this 
66       r->filename was tested by dir/file_walk, we need to 500 at the very 
67       end of the ap_process_request_internal() processing.  This provides
68       authors of older modules better compatibility, while still improving
69       the security and robustness of 2.0. 
70         Status: still need to decide where this goes, OtherBill comments...
71         Message-ID: <065701c14526$495203b0$96c0b0d0@roweclan.net>
72         we need to look at halting this in the 'default handler' case,
73         and that implies pushing the 'handler election' into the request
74         internal processing phase from the run request phase.
75
76     * Convert all instances of the old apr_lock_t type to the new
77       types (once they are fully supported in APR).
78         Status: Aaron is working on converting INTRAPROCESS
79                 to apr_thread_mutex_t types. Full replacements for
80                 LOCKALL and CROSS_PROCESS are not yet complete on all
81                 platforms, and should only be used in MPMs like worker
82                 with limited OS exposure.
83         BrianP asks: "Is this really a showstopper?"
84         IanH says: "If we don't do it before we go live we will have 2
85                     different API's to support in APR"
86
87     * [Ken] Test suite failures:
88       o worker is also failing some of the 'cgi' subtests
89       (see <URL:http://Source-Zone.Org/Apache/regression/>):
90         Justin says: "Worker should be fine and passes httpd-test here.
91                       If you can provide evidence that it can be reproduced
92                       outside of httpd-test, then it's a showstopper.  I
93                       think it's a perl or a httpd-test problem."
94         Not a showstopper: Justin
95
96     * [Ken] A binbuild installation picks up the right libraries when
97       running apachectl because we set the appropriate environment
98       variable, but ab, htpasswd, etc. don't know how to pick up apr,
99       apr-util, etc.
100         Message-ID: <20020116000226.GA15991@ebuilt.com>
101         gregames says: what about httpd?  yeah, it works at the moment
102                        if you use apachectl.  But I've already heard
103                        complaints about not being able to execute 
104                        httpd directly.
105         Status: Aaron has committed this for all the support binaries,
106                 but is hesitant to do the same for the httpd binary.
107         Message-ID: <20020207142751.T31582@clove.org>
108
109 CURRENT VOTES:
110
111     * Should we always build binaries statically unless otherwise
112       indicated?
113         Message-ID: <20020129210006.B23512@Lithium.MeepZor.Com>
114
115       +1:  Ken
116       -1:  Justin, Ian
117         
118     * If the parent process dies, should the remaining child processes
119       "gracefully" self-terminate. Or maybe we should make it a runtime
120       option, or have a concept of 2 parent processes (one being a 
121       "hot spare").
122       See: Message-ID: <3C58232C.FE91F19F@Golux.Com>
123
124       Self-destruct: Ken, Martin
125       Not self-destruct: BrianP, Ian, Cliff, BillS
126       Make it runtime configurable: Aaron, Jim, Justin
127       Have 2 parents: +1: Jim
128                       -1: Justin
129                       +0: Martin (while standing by, could it do
130                                   something useful?)
131
132     * Make the worker MPM the default MPM for threaded Unix boxes.
133       +1:   Justin, Ian, Cliff
134       -0:   Aaron (premature decision, needs more discussion), Lars
135
136 RELEASE NON-SHOWSTOPPERS BUT WOULD BE REAL NICE TO WRAP THESE UP:
137
138     * When we start httpd with the -DNO_DETACH flag on Unix, we
139       should still create a new session (and possibly also still close
140       stdin/stdout/stderr and redirect from /dev/null), so that
141       process management tools like 'daemontools' or AIX's System
142       Resource Controller can manage apache.
143         Message-ID: <20011228014444.GA40283@lizzy.bugworks.com>
144         Status: Aaron volunteers.
145
146     * Usage of APR_BRIGADE_NORMALIZE in core_input_filter should be
147       removed if possible.
148         Message-ID: <Pine.LNX.4.33.0201202232430.318-100000@deepthought.cs.virginia.edu>
149         
150     * There is a bug in how we sort some hooks, at least the pre-config
151       hook.  The first time we call the hooks, they are in the correct 
152       order, but the second time, we don't sort them correctly.  Currently,
153       the modules/http/config.m4 file has been renamed to 
154       modules/http/config2.m4 to work around this problem, it should moved
155       back when this is fixed.    rbb
156         Justin says: "Is this really a showstopper?  This has been here
157                       forever.  What's wrong?  Does this have to do with
158                       autoconf or m4?"
159         Not a showstopper: Justin, BrianP, trawick, gregames
160
161     * The Add...Filter and Set...Filter directives do not allow the
162       administrator to order filters, beyond the order of filename (mime)
163       extensions.  It isn't clear if Set...Filter(s) should be inserted 
164       before or after the Add...Filter(s) which are ordered by sequence of
165       filename extensions.  At minimum, some sort of +-[0-10] syntax seems
166       like the quickest fix for a 2.0 gold release.
167         Justin says: "Could we delay this for a point release or 2.1?"
168         Not a showstopper: justin, wrowe, trawick, stoddard, Jim, Ian, Aaron,
169                            gregames
170
171     * Make some modifications to the scoreboard creation routines,
172       prefer anonymous shared memory, and allow a configuration
173       directive to override the defaults.
174         Message-ID: <20020130080804.C16977@clove.org>
175       Status: Aaron volunteers
176
177     * Get perchild to work on platforms other than Linux. This
178       will require a portable mechanism to pass data and file/socket
179       descriptors between vhost child groups. An API was proposed
180       on dev@apr:
181         Message-ID: <20020111115006.K1529@clove.org>
182
183     * Recent changes to ap_rgetline may have broken EBCDIC boxes.
184         Message-ID: <20020122072605.GF28051@ebuilt.com>
185         Justin says: "I don't have an EBCDIC box to test on.  A potential
186                       solution is to split out ap_rgetline into two
187                       functions as described in this message."
188         gregames says: I see the breakage now, and volunteer to fix it
189                        when things calm down a little.  It looks OK when 
190                        there are complete lines and no mime continuations.
191
192     * CGI single-byte reads
193       BrianP suggests that this is caused by the ap_scan_script_header_err()
194       routine, which will do single-byte reads until it finds the end
195       of the header, at which point it constructs a pipe-bucket (buffered)
196       to read from.
197       Proposed solution in:
198         Message-ID: <3C36ADAF.60601@cnet.com>
199
200     * Try to get libtool inter-library dependency code working on AIX.
201         Message-ID: <cm3n10lx555.fsf@rdu163-40-092.nc.rr.com>
202
203       Justin says: If we get it working on AIX, we can enable this
204                    on all platforms and clean up our build system
205                    somewhat.
206       Jeff says:   I thought I tested a patch for you sometime in
207                    January that you were going to commit within a few
208                    days.
209
210     * Handling of %2f in URIs.  Currently both 1.3 and 2.0
211       completely disallow %2f in the request URI path (see
212       ap_unescape_url() in util.c).  It's permitted and passed
213       through in the query string, however.  Roy says the
214       original reason for disallowing it, from five years ago,
215       was to protect CGI scripts that applied PATH_INFO to
216       a filesystem location and which might be tricked by
217       ..%2f..%2f(...).  We *should* allow path-info of the
218       form 'http://foo.com/index.cgi/path/to/path%2finfo'.
219       Since we've revamped a lot of our processing of path
220       segments, it would be nice to allow this, or at least
221       allow it conditionally with a directive.
222
223     * FreeBSD, threads, and worker MPM.  All seems to work fine 
224       if you only have one worker process with many threads.  Add 
225       a second worker process and the accept lock seems to be
226       lost.  This might be an APR issue with how it deals with
227       the child_init hook (i.e. the fcntl lock needs to be resynced).
228       More examination and analysis is required.
229         Status: This has also been reported on Cygwin.  
230         Message-ID: <3C2CC514.8EF3BED1@wapme-systems.de> (cygnus)
231
232       Justin says: So, FreeBSD-CURRENT and Cywin have the same 
233                    problem.  Yum.  If another platform has this
234                    with worker, this becomes a showstopper.
235       Aaron says: I spent some time disecting this and have come to
236               the conclusion that it is not a problem in the worker MPM
237               (or at least, it is not isolated to a problem in worker).
238               I'll list some of the problems I'm seeing in case someone
239               else wants to pick up where I've left off:
240                - Delivery of just about any signal to one of the child
241                  processes will send it into an infinite loop as well.
242                - Even though the parent is spinning out of control,
243                  at first the child or children will appear to work
244                  properly. At times it is possible to get it into a state,
245                  however, where a request will hang until another concurrent
246                  request "kicks" the first, at which point the second will
247                  hang. My theory is that this has to do with the
248                  pthread_cond_*() implementation in FreeBSD, but it's still
249                  possible that it is in APR.
250       
251       Justin adds: Oh, FreeBSD threads are implemented entirely with 
252                    select()/poll()/longjmp().  Welcome to the nightmare.
253                    So, that means a ktrace output also has the thread 
254                    scheduling internals in it (since it is all the same to 
255                    the kernel).  Which makes it hard to distinguish between 
256                    our select() calls and their select() calls.  
257                    *bangs head on wall repeatedly*  But, some of the libc_r 
258                    files have a DBG_MSG #define.  This is moderately helpful
259                    when used with -DNO_DETACH.  The kernel scheduler isn't 
260                    waking up the threads on a select().  Yum.  And, I bet 
261                    those decrementing select calls have to do with the 
262                    scheduler.  Time to brush up on our OS fundamentals.
263
264     * There is increasing demand from module writers for an API
265       that will allow them to control the server Ã  la apachectl.
266       Reasons include sole-function servers that need to die if
267       an external dependency (e.g., a database) fails, et cetera.
268       Perhaps something in the (ever more abused) scoreboard?
269         rbb: I don't believe the scoreboard is the correct mechanism
270              for this.  We already have a pipe that goes between parent
271              and child for graceful shutdown events, along with an API that
272              can be used to send a message down that pipe.  In threaded MPMs,
273              it is easy enough to make that one pipe be used for graceful
274              and graceless events, and it is also easy to open that pipe
275              to both parent and child for writing.  Then we just need to
276              figure out how to do graceless on non-threaded MPMs.
277
278     * Allow the DocumentRoot directive within <Location > scopes?  This
279       allows the beloved (crusty) Alias /foo/ /somepath/foo/ followed
280       by a <Directory /somepath/foo> to become simply 
281       <Location /foo/> DocumentRoot /somefile/foo (IMHO a bit more legible
282       and in-your-face.)  DocumentRoot unset would be accepted [and would
283       not permit content to be served, only virtual resources such as
284       server-info or server-status.
285         This proposed change would _not_ depricate Alias.
286
287     * Win32: Rotatelogs sometimes is not terminated when Apache
288       goes down hard.  FirstBill was looking at possibly tracking the 
289       child's-child processes in the parent process.
290         OtherBill asks, wasn't this fixed? 
291         stoddard: Not fixed. Shared scoreboard might offer a good
292         way for the parent to keep track of 'other child' processes
293         and whack them if the child goes down.
294
295     * Win32: Add a simple hold console open patch (wait for close or
296         the ESC key, with a nice message) if the server died a bad 
297         death (non-zero exit code) in console mode.
298         Resolution: bring forward same ugly hacks from 1.3.13-.20
299
300     * Port of mod_ssl to Apache 2.0:
301
302       The current porting state is summarized in modules/ssl/README. The
303       remaining work includes:
304       (1) stablizing/optimizing the SSL filter logic
305       (2) Enabling the various SSL caching mechanisms (shmcb, shmht)
306       (3) Enabling SSL extentions
307       (4) Trying to seperate the https filter logic from mod_ssl -
308           This is to facilitate other modules that wish to use the https
309           filter or the mod_ssl logic or both as required.
310         Justin: mod_ssl filter logic is redone, so that should be fine.
311                 Madhu has submitted a patch for SSL caching - however, I
312                 am -0 on that patch as I *think* we could implement the
313                 shared memory another way that is much cleaner (i.e.
314                 treat shmem directly as a dbm via APR routines).  Justin 
315                 also thinks that the https filter logic may be sufficiently
316                 decoupled now, but isn't really sure.
317
318     * Performance & Debug: Eliminate most (and perhaps all) of the 
319       malloc/free calls in the bucket brigade code.  Need some 
320       light weight memory management functions that allow freeing 
321       memory (putting it back into a memory pool) when it is no 
322       longer needed. Enabling simple debugging features like guard
323       bands, double free detection, etc. would be cool but certainly
324       not a hard requirement.
325
326           Status: Cliff started to implement this using SMS as has
327                   been discussed at length for months, but since
328                   SMS is not being used anywhere else in the server,
329                   several people expressed the opinion that we should
330                   get rid of it entirely, meaning that the buckets
331                   need their own memory management (free list) functions.
332                   Cliff will implement that this weekend so we at least
333                   have something to look at/compare with.
334
335     * Eliminate unnecessary creation of pipes in mod_cgid
336         Status: Ken asks, didn't Jeff fix this when he fixed the queue
337                 overrun?
338
339     * the autoconf setup should be fixed to default to using the 
340       "Apache" layout from config.layout, and each variable settable
341       in a layout should be overridable on the command line.  Plus,
342       what we do right now just doesn't seem to fully fit into how autoconf
343       works, eg. AC_PREFIX_DEFAULT issues.
344         Message-ID: <Pine.BSF.4.20.0104031557420.20876-100000@alive.znep.com>
345
346     * Combine log_child and piped_log_spawn. Clean up http_log.c.
347       Common logging API.
348
349     * Document mod_file_cache.
350
351     * Platforms that do not support fork (primarily Win32 and AS/400)
352       Architect start-up code that avoids initializing all the modules 
353       in the parent process on platforms that do not support fork.
354
355     * Win32: Migrate the MPM over to use APR thread/process calls. This
356       would eliminate some code in the Win32 branch that essentially
357       duplicates what is in APR.
358
359     * There are still a number of places in the code where we are
360       losing error status (i.e. throwing away the error returned by a
361       system call and replacing it with a generic error code)
362
363     * Mass vhosting version of suEXEC.
364
365     * All DBMs suffer from confusion in support/dbmmanage (perl script) since 
366       the dbmmanage employs the first-matched dbm format.  This is not
367       necessarily the library that Apache was built with.  Aught to
368       rewrite dbmmanage upon installation to bin/ with the proper library 
369       for predictable mod_auth_dbm administration.
370         Questions; htdbm exists, time to kill dbmmanage, or does it remain
371                    useful as a perl dbm management example?  If we keep it,
372                    do we address the issue above?
373
374     * Integrate mod_dav.
375         Some additional items remaining:
376         - case_preserved_filename stuff
377             (use the new canonical name stuff?)
378         - find a new home for ap_text(_header)
379         - is it possible to remove the DAV: namespace stuff from util_xml?
380
381     * ap_core_translate() and its use by mod_mmap_static and mod_file_cache
382       are a bit wonky.  The function should probably be exposed as a utility 
383       function (such as ap_translate_url2fs() or ap_validate_fs_url() or 
384       something).  Another approach would be a new hook phase after
385       "translate" which would allow the module to munge what the
386       translation has decided to do.
387         Status: Greg +1 (volunteers), Ryan +1
388
389     * Explore use of a post-config hook for the code in http_main.c which
390       calls ap_fixup_virutal_hosts(), ap_fini_vhost_config(), and
391       ap_sort_hooks()  [to reduce the logic in main()]
392
393     * read the config tree just once, and process N times (as necessary)
394
395     * (possibly) use UUIDs in mod_unique_id and/or mod_usertrack
396
397     * (possibly) port the bug fix for PR 6942 (segv when LoadModule is put
398       into a VirtualHost container) to 2.0.
399
400     * shift stuff to mod_core.h
401
402     * callers of ap_run_create_request() should check the return value
403       for failure (Doug volunteers)
404
405     * Win32: Get Apache working on Windows 95/98. The following work
406         (at least) needs to be done:
407         - winnt MPM: Fix 95/98 code paths in the winnt MPM. There is some NT
408         specific code that is still not in NT only code paths
409         - IOL binds to APR sendfile, implemented with TransmitFile, which 
410         is not available on 95/98.
411         - Document warning that OSR2 is required (for Crypt functions, in
412         rand.c, at least.)  This could be resolved with an SSL library, or
413         randomization in APR itself.
414         - Bring the Win9xConHook.dll from 1.3 into 2.0 (no sense till it
415         actually works) and add in a splash of Win9x service code.
416
417     * In order to use a DSO version of mod_ssl we have to link with
418       -lssl and -lcrypto. A workaround is in place right now where the
419       entire EXTRA_LIBS macro is being appended to the objects list, but
420       this is a hack. We should either revamp the APACHE_CHECK_SSL_TOOLKIT
421       autoconf function or come up with some other autoconf checks to
422       search for libssl and libcrypto and properly add them to mod_ssl's
423       link flags.
424
425     * Fix the worker MPM to use POD to kill child processes instead
426       of ap_os_killpg, regardless of how they should die. (Ryan Bloom)
427
428 PRs that have been suspended forever waiting for someone to
429 put them into 'the next release':
430
431     * PR#76: general
432       missing call to "setlocale();"
433         Status: 
434
435     * PR#78: mod_include
436       Additional status for XBitHack directive
437         Status: 
438
439     * PR#362: mod_proxy
440       Mod_proxy doesn't allow change of error pages
441         Status: 
442
443     * PR#370: mod_env
444       Modified PATH environemnt variable is not passed, instead
445       system's is used
446         Status: 
447
448     * PR#440: mod_proxy
449       Proxy doesn't deliver documents if not connected
450         Status: 
451
452     * PR#534: mod_proxy
453       proxy converts ~name to %7Ename when name starts with a dot (.)
454         Status: 
455
456     * PR#537: mod_access
457       mod_access syntax allows hosts that should be restricted
458         Status: 
459
460     * PR#557: mod_auth-any
461       ~UserHome directories are not honored in absolute pathname
462       requests (.htaccess)
463         Status: 
464
465     * PR#612: mod_proxy
466       Proxy FTP Authentication Fails
467         Status: 
468
469     * PR#623: mod_include
470       A smarter "Last Modified" value for SSI documents (see PR number 600)
471         Status: 
472
473     * PR#628: config
474       Request of "Options SymLinksIfGroupMatch"
475         Status: 
476
477     * PR#700: mod_proxy
478       Proxy doesn't do links right for OpenVMS files through ftp:
479         Status: 
480
481     * PR#759: mod_imap
482       imap should read <MAP><AREA>*</MAP> too!
483         Status: 
484
485     * PR#793: general
486       RLimitCPU and RLimitMEM don't apply to all children like they should
487         Status: 
488
489     * PR#921: suexec
490       Uses cwd before filling it in, doesn't use syslog
491         Status: 
492
493     * PR#922: config
494       it is useful to allow specifiction that root-owned symlinks
495       should always be followed
496         Status: 
497
498     * PR#980: mod_proxy
499       Controlling Access to Remote Proxies would be nice...
500         Status: 
501
502     * PR#994: mod_proxy
503       Adding authentication "on the fly" through the proxy module
504         Status: 
505
506     * PR#1004: apache-api
507       request_config field in request_rec is moderately bogus
508         Status: 
509
510     * PR#1028: other
511       DoS attacks involving memory consumption
512         Status: 
513
514     * PR#1050: mod_log-any
515       Logging of virtual server to error_log as well
516         Status: 
517
518     * PR#1085: mod_proxy
519       ProxyRemote make a dead cycle.
520         Status: 
521
522     * PR#1117: mod_auth-any
523       Using NIS passwd.byname dbm files with AuthDBMUserFile
524         Status: 
525
526     * PR#1120: suexec
527       suexec does not parse arguments to #exec cmd
528         Status: 
529
530     * PR#1145: mod_include
531       Allow for Last-Modified: without resorting to XBitHack
532         Status: 
533
534     * PR#1158: apache-api
535       improvements to child spawning API
536         Status: 
537
538     * PR#1166: mod_proxy
539       ``nph-'' not honored (no buffering) for ProxyRemote mapping
540         Status: 
541
542     * PR#1176: mod_cgi
543       Apache cannot handle continuation line in headers
544         Status: 
545
546     * PR#1191: general
547       setlogin() is not called, causing problems with e.g. identd
548         Status: 
549
550     * PR#1204: general
551       regerror() exists, use it
552         Status: 
553
554     * PR#1233: apache-api
555       there is no way to keep per-connection per-module state
556         Status: 
557
558     * PR#1263: mod_autoexec
559       Add frame-safe anchor attribute to mod_autoindex links
560         Status: 
561
562     * PR#1268: suexec
563       CGI scripts running as Apache user: security (suexec etc.)
564         Status: 
565
566     * PR#1285: suexec
567       Error messages could be easier to spot in cgi.log file for suexec.c
568         Status: 
569
570     * PR#1287: mod_access
571       add allow,deny/deny,allow warning to mod_access
572         Status: 
573
574     * PR#1290: mod_proxy
575       Need to know "hit-rate" on proxy cache
576         Status: 
577
578     * PR#1358: mod_log-any
579       Selective url-encode of log fields (or maybe a pseudo
580       log_rewrite module?)
581         Status: 
582
583     * PR#1383: mod_headers
584       I make mod_headers to modify request headers as well as
585       response ones.
586         Status: 
587
588     * PR#1532: mod_proxy
589       Proxy transfer logging
590         Status: 
591
592     * PR#1547: mod_proxy
593       No HTTP_X_FORWARDED_FOR set...
594         Status: 
595
596     * PR#1567: mod_proxy
597       ProxyRemote proxy requests fail authentication by firewall
598         Status: 
599
600     * PR#1582: mod_rewrite
601       mod_rewrite forms REQUEST_URI different than mod_cgi does
602         Status: 
603
604     * PR#1677: mod_headers
605       mod_headers should allow mod_log_config-style formats in
606       header values
607         Status: 
608
609     * PR#1702: mod_proxy
610       mod_proxy to support persistent conns?
611         Status: 
612
613     * PR#1803: mod_include
614       patches to mod_include to allow for file tests
615         Status: 
616
617     * PR#1809: mod_auth-any
618       Suggestion for improving authentication modules and core source
619       code, problem with 401 and ErrorDocument
620         Status: 
621
622     * PR#1878: mod_proxy
623       listing of proxy cache content
624         Status: 
625
626     * PR#1905: suexec
627       Allow modules to set user:group for execution.
628         Status: 
629
630     * PR#2024: apache-api
631       adding auth_why to conn_rec
632         Status: 
633
634     * PR#2073: mod_log-any
635       pipelined connections are not logged correctly
636         Status: 
637
638     * PR#2074: mod_rewrite
639       mod_rewrite doesn't pass Proxy Throughput on internal subrequests
640         Status: 
641
642     * PR#2113: config
643       HTTP Server Rebuild Line Needs Changing for the better
644         Status: 
645
646     * PR#2138: mod_status
647       mod_status always displays 256 possible connection slots
648         Status: 
649
650     * PR#2221: documentation
651       Make online documentation search link back to my installation
652         Status: 
653
654     * PR#2284: general
655       Can not POST to ErrorDocument - Apache/1.3b6
656         Status: 
657
658     * PR#2314: mod_proxy
659       patterns in ProxyRemote
660         Status: 
661
662     * PR#2343: mod_status
663       Status module averages are for entire uptime
664         Status: 
665
666     * PR#2360: suexec
667       suexec for general access of user content?
668         Status: 
669
670     * PR#2396: general
671       Proposal for TimeZone directive
672         Status: 
673
674     * PR#2415: mod_info
675       /server-info doesn't check for the virtual host to list the info
676         Status: 
677
678     * PR#2421: config
679       problem specifying ndbm library for build ?with autoconfigure
680         Status: 
681
682     * PR#2431: general
683       A small addition to rotatelogs.c to improve program functionality.
684         Status: 
685
686     * PR#2446: config
687       AllowOverride FileInfo is too coarse
688         Status: 
689
690     * PR#2460: mod_cgi
691       TimeOut applies to output of CGI scripts
692         Status: 
693
694     * PR#2512: mod_access
695       &lt;IfDenied&gt; directive wanted
696         Status: 
697
698     * PR#2573: suexec
699       CGI's for general use still have to be run as another user
700       with suExec
701         Status: 
702
703     * PR#2648: general
704       Cache file names in Proxy module
705         Status: 
706
707     * PR#2760: config
708       [PATCH] User/Group for <Directory> and <Location> i.e. not only
709       in global and <Virtual>.
710         Status: 
711
712     * PR#2763: general
713       mailto tags and bundling bug report script
714         Status: 
715
716     * PR#2785: os-aix
717       Support for System Resource Controller
718         Status: 
719
720     * PR#2793: protocol
721       When will Apache support P3P? Any Plans?
722         Status: 
723
724     * PR#2873: config
725       Feedback/Comment on APACI
726         Status: 
727
728     * PR#2889: general
729       Inclusion of RPM spec file in CVS/distributions
730         Status: 
731
732     * PR#2906: general
733       Propose that Apache recommend $UNIQUE_ID for all "session id"
734       algorithms
735         Status: 
736
737     * PR#2907: config
738       suggestion: power up your Include directive :)
739         Status: 
740
741     * PR#3018: general
742       cannot limit some HTTP methods
743         Status: 
744
745     * PR#3143: apache-api
746       No module specific data hook for per-connection data
747         Status: 
748
749     * PR#3191: mod_negotiation
750       no way to set global quality-of-source (qs) coneg values
751       with multiviews
752         Status: 
753
754     * PR#3568: mod_proxy
755       Accessing URL through proxy server corrupts data.
756         Status: 
757
758     * PR#3605: mod_proxy
759       Some anonymous FTP URLs ask for authentication
760         Status: 
761
762     * PR#3677: general
763       New ErrorDocumentMatch directive
764         Status: 
765
766     * PR#4241: config
767       Need to be able to override shebang line to make CGI scripts
768       more portable.
769         Status: 
770
771     * PR#4244: config
772       "Files" and "FilesMatch" regexp does not recognize bang as
773       negation operator
774         Status: 
775
776     * PR#4448: mod_log-any
777       Please allow CGI env variables (QUERY_STRING, ...) to be logged
778       with %{}e
779         Status: 
780
781     * PR#4459: mod_include
782       Suggestion for better handling of Last-modified headers
783         Status: 
784
785     * PR#4490: mod_cgi
786       mod_cgi prevents handling of OPTIONS requests
787         Status: 
788
789     * PR#5713: os-windows
790       [PATCH] install as win32 service with domain account
791         Status: Cannot accept password-as-arg, we should prompt the
792                 user when -k install/-k config with a user argument.
793
794     * PR#5993: general
795       AllowOverride should have a 'CheckNone' and 'AllowNone' argument
796       instead of only 'None'
797         Status: 
798
799 Other bugs that need fixing:
800
801     * MaxRequestsPerChild measures connections, not requests.
802         Until someone has a better way, we'll probably just rename it
803         "MaxConnectionsPerChild".
804     
805     * Regex containers don't work in an intutive way
806         Status: No one has come up with an efficient way to fix this
807         behavior. Dean has suggested getting rid of regex containers
808         completely.
809         OtherBill suggests: We at least seem to agree on eliminating
810                             the <Container ~ foo> forms, and using only
811                             <ContainerMatch foo> semantics.
812
813     * SIGSEGV on Linux (glibc 2.1.2) isn't caught properly by a
814       sigwaiting thread. We need to work around this, perhaps unless
815       there is hope soon for a fixed glibc.
816
817     * orig_ct in the byterange/multipart handling may not be
818       needed. Apache 1.3 just never stashed "multipart" into
819       r->content_type. We should probably follow suit since the
820       byterange stuff doesn't want the rest of the code to see the
821       multipart content-type; the other code should still think it is
822       dealing with the <orig_ct> stuff.
823         Status: Greg volunteers to investigate (esp. since he was most 
824                 likely the one to break it :-)
825
826 Other features that need writing:
827
828     * Finish infrastructure in core for async MPMs
829         Status: post 2.0
830
831     * TODO in source -- just do an egrep on "TODO" and see what's there
832
833 Available Patches:
834
835    * Jon Travis's <jtravis@covalent.net> patch to deal with thread-safe
836      issues with inet_ntoa.  See message <20001201163220.A12827@covalent.net>
837         Status:  This is being set aside until the IPv6 work is finished
838                  so that we know exactly what is required.
839
840    * Martin Sojka <msojka@gmx.de>'s patch to add error reporting for failed 
841      htpasswd actions due to a full /tmp volume (other programs may have
842      similar problems?)
843         PR: 6475
844         Status:
845
846    * Mike Abbott's <mja@trudge.engr.sgi.com> patches to improve
847      performance
848        Status: These were written for 1.3, and are awaiting a port to
849        2.0
850  
851    * Jim Winstead's <jimw@trainedmonkey.com> patch to add CookieDomain and 
852      other small mod_usertrack features
853
854    * Dan Rench's <drench@xnet.com> patch to add allow the errmsg and timefmt 
855      of SSI's to be modified in the config file.  Patch is available in 
856      PR6193
857
858 Open issues:
859
860    * Which MPMs will be included with Apache 2.0?