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