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