]> granicus.if.org Git - apache/blob - STATUS
Remove the pools API change from the showstoppers section.
[apache] / STATUS
1 APACHE 2.0 STATUS:                                              -*-text-*-
2 Last modified at [$Date: 2002/03/15 01:04:15 $]
3
4 Release:
5
6     2.0.34  : in development
7     2.0.33  : tagged March 6, 2002.
8     2.0.32  : released Feburary 16, 2002.
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
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     * If any request gets to the core handler, without a flag that this 
53       r->filename was tested by dir/file_walk, we need to 500 at the very 
54       end of the ap_process_request_internal() processing.  This provides
55       authors of older modules better compatibility, while still improving
56       the security and robustness of 2.0. 
57         Status: still need to decide where this goes, OtherBill comments...
58         Message-ID: <065701c14526$495203b0$96c0b0d0@roweclan.net>
59         we need to look at halting this in the 'default handler' case,
60         and that implies pushing the 'handler election' into the request
61         internal processing phase from the run request phase.
62         Jim asks: would a stopgap be something bogus like adding another
63         flag to request_rec ala eos_sent and before we OK, if not set
64         force 500?
65         Jeff says: reviewing the original message and the one
66         follow-up (also from OtherBill) it looks like OtherBill had a
67         good handle on the problem, though I wonder why not just put a
68         simple check in default_handler to see if dir/file_walk has
69         been done (a footprint left by dir/file_walk doesn't have to
70         be in request_rec; a better place is core_request_config)
71
72     * We need to find out the right place to add the AddOutputFilterByType
73       directive.  mod_mime?  No.  core with fixups?  That's what it is now.
74       ap_pass_brigade() hook?  As a filter that runs at HTTP_HEADER stage?
75       This needs to be resolved before the next public release.
76         Message-ID: <018701c1b99c$f0f24310$0a01230a@KOJ>
77       BillS is working on this...
78         
79     * API changes planned for 2.0 that should happen before the
80       GA release:
81           * Free lists for bucket allocation
82
83     * We do not properly substitute the prefix-variables in the configuration
84       scripts or generated-configs.  (i.e. if sysconfdir is etc,
85       httpd-std.conf points to conf.)
86         Aaron says: This is not a showstopper, these problems have existed
87                     for as long as I can remember. It would be nice to fix
88                     them but they are not new.
89
90     * Address popular PRs
91         * Win32 doesn't install as service correctly [9863, 9914, 9961]
92
93 CURRENT VOTES:
94
95     * Should we always build binaries statically unless otherwise
96       indicated?
97         Message-ID: <20020129210006.B23512@Lithium.MeepZor.Com>
98
99       +1:  Ken
100       -1:  Justin, Ian
101         
102     * If the parent process dies, should the remaining child processes
103       "gracefully" self-terminate. Or maybe we should make it a runtime
104       option, or have a concept of 2 parent processes (one being a 
105       "hot spare").
106       See: Message-ID: <3C58232C.FE91F19F@Golux.Com>
107
108       Self-destruct: Ken, Martin
109       Not self-destruct: BrianP, Ian, Cliff, BillS
110       Make it runtime configurable: Aaron, Jim, Justin
111       Have 2 parents: +1: Jim
112                       -1: Justin
113                       +0: Martin (while standing by, could it do
114                                   something useful?)
115
116     * Make the worker MPM the default MPM for threaded Unix boxes.
117       +1:   Justin, Ian, Cliff
118       -0:   Aaron (premature decision, needs more discussion), Lars
119
120 RELEASE NON-SHOWSTOPPERS BUT WOULD BE REAL NICE TO WRAP THESE UP:
121     * mod_negotiation may be broken on Win32 with large .var
122       files.  Some Win32 savant needs to evaluate the Win32 
123       portion of the patch posted to dev@apr.apache.org in this
124       message: <m3sn761ra6.fsf@rdu88-250-166.nc.rr.com>
125
126     * Convert all instances of the old apr_lock_t type to the new
127       types.
128         Status: Aaron has converted all but the perchild MPM to
129                 use the new lock API. Since perchild has been put
130                 on the back burner, this is no longer a showstopper.
131                 Aaron will patch perchild as soon as it becomes
132                 buildable again.
133
134     * With AP_MODE_EXHAUSTIVE in the core, it is finally clear to me
135       how the Perchild MPM should be re-written.  It hasn't worked
136       correctly since filters were added because it wasn't possible to
137       get the content that had already been written and the socket at
138       the same time.  This mode lets us do that, so the MPM can be
139       fixed.
140
141     * htpasswd blindly processes the file you give it, and does no
142       sanity checking before totally corrupting whatever file it was
143       you thought you had. It should check the input file and bail
144       if it finds non-comment lines that do not contain exactly 1
145       ':' character.
146         Message-ID: <20020217150457.A31632@clove.org>
147
148     * Can a static httpd be built reliably?
149         Message-ID: <20020207142751.T31582@clove.org>
150
151     * [Ken] Test suite failures:
152       o worker is also failing some of the 'cgi' subtests
153       (see <URL:http://Source-Zone.Org/Apache/regression/>):
154         Justin says: "Worker should be fine and passes httpd-test here.
155                       If you can provide evidence that it can be reproduced
156                       outside of httpd-test, then it's a showstopper.  I
157                       think it's a perl or a httpd-test problem."
158         Not a showstopper: Justin
159
160     * Usage of APR_BRIGADE_NORMALIZE in core_input_filter should be
161       removed if possible.
162         Message-ID: <Pine.LNX.4.33.0201202232430.318-100000@deepthought.cs.virginia.edu>
163         
164     * There is a bug in how we sort some hooks, at least the pre-config
165       hook.  The first time we call the hooks, they are in the correct 
166       order, but the second time, we don't sort them correctly.  Currently,
167       the modules/http/config.m4 file has been renamed to 
168       modules/http/config2.m4 to work around this problem, it should moved
169       back when this is fixed.    rbb
170         Justin says: "Is this really a showstopper?  This has been here
171                       forever.  What's wrong?  Does this have to do with
172                       autoconf or m4?"
173         Not a showstopper: Justin, BrianP, trawick, gregames
174
175     * The Add...Filter and Set...Filter directives do not allow the
176       administrator to order filters, beyond the order of filename (mime)
177       extensions.  It isn't clear if Set...Filter(s) should be inserted 
178       before or after the Add...Filter(s) which are ordered by sequence of
179       filename extensions.  At minimum, some sort of +-[0-10] syntax seems
180       like the quickest fix for a 2.0 gold release.
181         Justin says: "Could we delay this for a point release or 2.1?"
182         Not a showstopper: justin, wrowe, trawick, stoddard, Jim, Ian, Aaron,
183                            gregames
184
185     * Get perchild to work on platforms other than Linux. This
186       will require a portable mechanism to pass data and file/socket
187       descriptors between vhost child groups. An API was proposed
188       on dev@apr:
189         Message-ID: <20020111115006.K1529@clove.org>
190
191     * CGI single-byte reads
192       BrianP suggests that this is caused by the ap_scan_script_header_err()
193       routine, which will do single-byte reads until it finds the end
194       of the header, at which point it constructs a pipe-bucket (buffered)
195       to read from.
196       Proposed solution in:
197         Message-ID: <3C36ADAF.60601@cnet.com>
198
199     * Try to get libtool inter-library dependency code working on AIX.
200         Message-ID: <cm3n10lx555.fsf@rdu163-40-092.nc.rr.com>
201
202       Justin says: If we get it working on AIX, we can enable this
203                    on all platforms and clean up our build system
204                    somewhat.
205       Jeff says:   I thought I tested a patch for you sometime in
206                    January that you were going to commit within a few
207                    days.
208
209     * Handling of %2f in URIs.  Currently both 1.3 and 2.0
210       completely disallow %2f in the request URI path (see
211       ap_unescape_url() in util.c).  It's permitted and passed
212       through in the query string, however.  Roy says the
213       original reason for disallowing it, from five years ago,
214       was to protect CGI scripts that applied PATH_INFO to
215       a filesystem location and which might be tricked by
216       ..%2f..%2f(...).  We *should* allow path-info of the
217       form 'http://foo.com/index.cgi/path/to/path%2finfo'.
218       Since we've revamped a lot of our processing of path
219       segments, it would be nice to allow this, or at least
220       allow it conditionally with a directive.
221
222     * FreeBSD, threads, and worker MPM.  All seems to work fine 
223       if you only have one worker process with many threads.  Add 
224       a second worker process and the accept lock seems to be
225       lost.  This might be an APR issue with how it deals with
226       the child_init hook (i.e. the fcntl lock needs to be resynced).
227       More examination and analysis is required.
228         Status: This has also been reported on Cygwin.  
229         Message-ID: <3C2CC514.8EF3BED1@wapme-systems.de> (cygnus)
230
231       Justin says: So, FreeBSD-CURRENT and Cywin have the same 
232                    problem.  Yum.  If another platform has this
233                    with worker, this becomes a showstopper.
234       Aaron says: I spent some time disecting this and have come to
235               the conclusion that it is not a problem in the worker MPM
236               (or at least, it is not isolated to a problem in worker).
237               I'll list some of the problems I'm seeing in case someone
238               else wants to pick up where I've left off:
239                - Delivery of just about any signal to one of the child
240                  processes will send it into an infinite loop as well.
241                - Even though the parent is spinning out of control,
242                  at first the child or children will appear to work
243                  properly. At times it is possible to get it into a state,
244                  however, where a request will hang until another concurrent
245                  request "kicks" the first, at which point the second will
246                  hang. My theory is that this has to do with the
247                  pthread_cond_*() implementation in FreeBSD, but it's still
248                  possible that it is in APR.
249       
250       Justin adds: Oh, FreeBSD threads are implemented entirely with 
251                    select()/poll()/longjmp().  Welcome to the nightmare.
252                    So, that means a ktrace output also has the thread 
253                    scheduling internals in it (since it is all the same to 
254                    the kernel).  Which makes it hard to distinguish between 
255                    our select() calls and their select() calls.  
256                    *bangs head on wall repeatedly*  But, some of the libc_r 
257                    files have a DBG_MSG #define.  This is moderately helpful
258                    when used with -DNO_DETACH.  The kernel scheduler isn't 
259                    waking up the threads on a select().  Yum.  And, I bet 
260                    those decrementing select calls have to do with the 
261                    scheduler.  Time to brush up on our OS fundamentals.
262
263     * There is increasing demand from module writers for an API
264       that will allow them to control the server Ã  la apachectl.
265       Reasons include sole-function servers that need to die if
266       an external dependency (e.g., a database) fails, et cetera.
267       Perhaps something in the (ever more abused) scoreboard?
268         rbb: I don't believe the scoreboard is the correct mechanism
269              for this.  We already have a pipe that goes between parent
270              and child for graceful shutdown events, along with an API that
271              can be used to send a message down that pipe.  In threaded MPMs,
272              it is easy enough to make that one pipe be used for graceful
273              and graceless events, and it is also easy to open that pipe
274              to both parent and child for writing.  Then we just need to
275              figure out how to do graceless on non-threaded MPMs.
276
277     * Allow the DocumentRoot directive within <Location > scopes?  This
278       allows the beloved (crusty) Alias /foo/ /somepath/foo/ followed
279       by a <Directory /somepath/foo> to become simply 
280       <Location /foo/> DocumentRoot /somefile/foo (IMHO a bit more legible
281       and in-your-face.)  DocumentRoot unset would be accepted [and would
282       not permit content to be served, only virtual resources such as
283       server-info or server-status.
284         This proposed change would _not_ depricate Alias.
285
286     * Win32: Rotatelogs sometimes is not terminated when Apache
287       goes down hard.  FirstBill was looking at possibly tracking the 
288       child's-child processes in the parent process.
289         OtherBill asks, wasn't this fixed? 
290         stoddard: Not fixed. Shared scoreboard might offer a good
291         way for the parent to keep track of 'other child' processes
292         and whack them if the child goes down.
293
294     * Win32: Add a simple hold console open patch (wait for close or
295         the ESC key, with a nice message) if the server died a bad 
296         death (non-zero exit code) in console mode.
297         Resolution: bring forward same ugly hacks from 1.3.13-.20
298
299     * Port of mod_ssl to Apache 2.0:
300
301       The current porting state is summarized in modules/ssl/README. The
302       remaining work includes:
303       (1) stablizing/optimizing the SSL filter logic
304       (2) Enabling the various SSL caching mechanisms (shmcb, shmht)
305       (3) Enabling SSL extentions
306       (4) Trying to seperate the https filter logic from mod_ssl -
307           This is to facilitate other modules that wish to use the https
308           filter or the mod_ssl logic or both as required.
309         Justin: mod_ssl filter logic is redone, so that should be fine.
310                 Madhu has submitted a patch for SSL caching - however, I
311                 am -0 on that patch as I *think* we could implement the
312                 shared memory another way that is much cleaner (i.e.
313                 treat shmem directly as a dbm via APR routines).  Justin 
314                 also thinks that the https filter logic may be sufficiently
315                 decoupled now, but isn't really sure.
316
317     * Performance & Debug: Eliminate most (and perhaps all) of the 
318       malloc/free calls in the bucket brigade code.  Need some 
319       light weight memory management functions that allow freeing 
320       memory (putting it back into a memory pool) when it is no 
321       longer needed. Enabling simple debugging features like guard
322       bands, double free detection, etc. would be cool but certainly
323       not a hard requirement.
324
325           Status: Cliff started to implement this using SMS as has
326                   been discussed at length for months, but since
327                   SMS is not being used anywhere else in the server,
328                   several people expressed the opinion that we should
329                   get rid of it entirely, meaning that the buckets
330                   need their own memory management (free list) functions.
331                   Cliff will implement that this weekend so we at least
332                   have something to look at/compare with.
333
334     * Eliminate unnecessary creation of pipes in mod_cgid
335         Status: Ken asks, didn't Jeff fix this when he fixed the queue
336                 overrun?
337
338     * Combine log_child and piped_log_spawn. Clean up http_log.c.
339       Common logging API.
340
341     * Document mod_file_cache.
342
343     * Platforms that do not support fork (primarily Win32 and AS/400)
344       Architect start-up code that avoids initializing all the modules 
345       in the parent process on platforms that do not support fork.
346
347     * Win32: Migrate the MPM over to use APR thread/process calls. This
348       would eliminate some code in the Win32 branch that essentially
349       duplicates what is in APR.
350
351     * There are still a number of places in the code where we are
352       losing error status (i.e. throwing away the error returned by a
353       system call and replacing it with a generic error code)
354
355     * Mass vhosting version of suEXEC.
356
357     * All DBMs suffer from confusion in support/dbmmanage (perl script) since 
358       the dbmmanage employs the first-matched dbm format.  This is not
359       necessarily the library that Apache was built with.  Aught to
360       rewrite dbmmanage upon installation to bin/ with the proper library 
361       for predictable mod_auth_dbm administration.
362         Questions; htdbm exists, time to kill dbmmanage, or does it remain
363                    useful as a perl dbm management example?  If we keep it,
364                    do we address the issue above?
365
366     * Integrate mod_dav.
367         Some additional items remaining:
368         - case_preserved_filename stuff
369             (use the new canonical name stuff?)
370         - find a new home for ap_text(_header)
371         - is it possible to remove the DAV: namespace stuff from util_xml?
372
373     * ap_core_translate() and its use by mod_mmap_static and mod_file_cache
374       are a bit wonky.  The function should probably be exposed as a utility 
375       function (such as ap_translate_url2fs() or ap_validate_fs_url() or 
376       something).  Another approach would be a new hook phase after
377       "translate" which would allow the module to munge what the
378       translation has decided to do.
379         Status: Greg +1 (volunteers), Ryan +1
380
381     * Explore use of a post-config hook for the code in http_main.c which
382       calls ap_fixup_virutal_hosts(), ap_fini_vhost_config(), and
383       ap_sort_hooks()  [to reduce the logic in main()]
384
385     * read the config tree just once, and process N times (as necessary)
386
387     * (possibly) use UUIDs in mod_unique_id and/or mod_usertrack
388
389     * (possibly) port the bug fix for PR 6942 (segv when LoadModule is put
390       into a VirtualHost container) to 2.0.
391
392     * shift stuff to mod_core.h
393
394     * callers of ap_run_create_request() should check the return value
395       for failure (Doug volunteers)
396
397     * Win32: Get Apache working on Windows 95/98. The following work
398         (at least) needs to be done:
399         - Document warning that OSR2 is required (for Crypt functions, in
400         rand.c, at least.)  This could be resolved with an SSL library, or
401         randomization in APR itself.
402         - Bring the Win9xConHook.dll from 1.3 into 2.0 (no sense till it
403         actually works) and add in a splash of Win9x service code.
404
405     * In order to use a DSO version of mod_ssl we have to link with
406       -lssl and -lcrypto. A workaround is in place right now where the
407       entire EXTRA_LIBS macro is being appended to the objects list, but
408       this is a hack. We should either revamp the APACHE_CHECK_SSL_TOOLKIT
409       autoconf function or come up with some other autoconf checks to
410       search for libssl and libcrypto and properly add them to mod_ssl's
411       link flags.
412
413     * Fix the worker MPM to use POD to kill child processes instead
414       of ap_os_killpg, regardless of how they should die. (Ryan Bloom)
415
416     * mod_cache: handle cache_control: no_cache "field_name" to enable 
417       cacheing the response w/o header "field_name"
418       See RFC2616 section 14.9.1
419
420     * Scoreboard structures could be changed in the future such that
421       proper alignment is not maintained, leading to segfaults on 
422       some systems.  Cliff posted a patch to deal with this issue but
423       later recanted. See this message to dev@apr.apache.org:
424       Message-ID: <Pine.LNX.4.44.0203011354090.16457-200000@deepthought
425                   .cs.virginia.edu>
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     * MaxRequestsPerChild measures connections, not requests.
801         Until someone has a better way, we'll probably just rename it
802         "MaxConnectionsPerChild".
803     
804     * Regex containers don't work in an intutive way
805         Status: No one has come up with an efficient way to fix this
806         behavior. Dean has suggested getting rid of regex containers
807         completely.
808         OtherBill suggests: We at least seem to agree on eliminating
809                             the <Container ~ foo> forms, and using only
810                             <ContainerMatch foo> semantics.
811
812     * SIGSEGV on Linux (glibc 2.1.2) isn't caught properly by a
813       sigwaiting thread. We need to work around this, perhaps unless
814       there is hope soon for a fixed glibc.
815
816     * orig_ct in the byterange/multipart handling may not be
817       needed. Apache 1.3 just never stashed "multipart" into
818       r->content_type. We should probably follow suit since the
819       byterange stuff doesn't want the rest of the code to see the
820       multipart content-type; the other code should still think it is
821       dealing with the <orig_ct> stuff.
822         Status: Greg volunteers to investigate (esp. since he was most 
823                 likely the one to break it :-)
824
825 Other features that need writing:
826
827     * Finish infrastructure in core for async MPMs
828         Status: post 2.0
829
830     * TODO in source -- just do an egrep on "TODO" and see what's there
831
832 Available Patches:
833
834    * Jon Travis's <jtravis@covalent.net> patch to deal with thread-safe
835      issues with inet_ntoa.  See message <20001201163220.A12827@covalent.net>
836         Status:  This is being set aside until the IPv6 work is finished
837                  so that we know exactly what is required.
838
839    * Martin Sojka <msojka@gmx.de>'s patch to add error reporting for failed 
840      htpasswd actions due to a full /tmp volume (other programs may have
841      similar problems?)
842         PR: 6475
843         Status:
844
845    * Mike Abbott's <mja@trudge.engr.sgi.com> patches to improve
846      performance
847        Status: These were written for 1.3, and are awaiting a port to
848        2.0
849  
850    * Jim Winstead's <jimw@trainedmonkey.com> patch to add CookieDomain and 
851      other small mod_usertrack features
852
853    * Dan Rench's <drench@xnet.com> patch to add allow the errmsg and timefmt 
854      of SSI's to be modified in the config file.  Patch is available in 
855      PR6193
856
857 Open issues:
858
859    * Which MPMs will be included with Apache 2.0?