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