1 APACHE 2.0 STATUS: -*-text-*-
2 Last modified at [$Date: 2002/02/06 15:56:07 $]
6 2.0.32 : in development
7 2.0.31 : rolled Feburary 1, 2002.
8 2.0.30 : tagged January 8, 2002. not rolled.
9 2.0.29 : tagged November 27, 2001. not rolled.
10 2.0.28 : released November 13, 2001
11 2.0.27 : rolled November 6, 2001
12 2.0.26 : tagged October 16, 2001. not rolled.
13 2.0.25 : rolled August 29, 2001
14 2.0.24 : rolled August 18, 2001
15 2.0.23 : rolled August 9, 2001
16 2.0.22 : rolled July 29, 2001
17 2.0.21 : rolled July 20, 2001
18 2.0.20 : rolled July 8, 2001
19 2.0.19 : rolled June 27, 2001
20 2.0.18 : rolled May 18, 2001
21 2.0.17 : rolled April 17, 2001
22 2.0.16 : rolled April 4, 2001
23 2.0.15 : rolled March 21, 2001
24 2.0.14 : rolled March 7, 2001
25 2.0a9 : released December 12, 2000
26 2.0a8 : released November 20, 2000
27 2.0a7 : released October 8, 2000
28 2.0a6 : released August 18, 2000
29 2.0a5 : released August 4, 2000
30 2.0a4 : released June 7, 2000
31 2.0a3 : released April 28, 2000
32 2.0a2 : released March 31, 2000
33 2.0a1 : released March 10, 2000
35 Please consult the following STATUS files for information
39 * srclib/apr-util/STATUS
45 running on Daedalus since 02-Feb-2002 7:58 PST (need 3 days)
46 Compiles on : AIX 4.3, Solaris, FreeBSD 3.4 & 4.5, Win32,
48 Broken on: Win32 [no error logging within service, other bugs]
51 +0 : Lars, Justin, trawick
53 -1 : BillS, Ian, gregames, BrianP
54 bumps since original tag:
56 * scoreboard x2 : 1 to fix gracefull restarts
58 * win32/locks.c : to fix mod_rewrite on win32
61 * libtool/binbuild on AIX -- possible addition of patched
62 binbuild.sh to 31-beta roll
66 Jeff says: We can't do anything about libtool since AIX
67 needs a version that won't work on some
68 platforms. Handle this in the README.
69 The binbuild issue isn't AIX. It is
70 something that could happen anywhere that
71 the binbuild-er has their own expat.
72 Handle this by patching binbuild.sh for a
73 beta roll or putting a patch in the README for
74 use by people who want to do binbuild but
75 have expat installed locally.
76 gregames: why can't we roll a second tarball with the
77 appropriate libtool version? doesn't
78 Darwin need it as well as AIX?
80 * erroneous check in an AP_DEBUG_ASSERT() call. Only happens
81 in maintainer mode. Fixed in modules/http/http_protocol.c
82 revision 1.391. Add item in release notes:
83 +1: Justin, Cliff, Aaron, BillS, Jim, trawick
87 * seg faults in core_input_filter when the client goes away
88 before any POST body bytes are received.
89 Jeff committed a fix with server/core.c revision 1.144.
90 Justin committed a fix with server/protocol.c revision 1.78
91 (server/protocol.c revision 1.79 demotes a potentially
92 annoying error message)
94 * FirstBill reports problem [re]starting as-a-service, shared
95 score is suspect. OtherBill is investigating... has found
96 . created restart and shutdown events, only restart
97 survived initialization on XP, although breaking into
98 the debugger interferes with reproducing the bug.
99 Perhaps in FirstBill's example _restart didn't survive.
100 . Scoreboard appears irrelevant to the problem.
101 . This looks like handle corruption in NT/XP
102 . Args are not initialized correctly when the -k install
104 OtherBill will not create Win32 binaries due to this bug.
106 * mod_auth_dbm can't open a Berkeley DB password file on Unix
107 Justin postulates that this might be related to the fact
108 that mod_auth_dbm wasn't using apr-util. See
109 modules/aaa/mod_auth_dbm.c revision 1.42 and
110 module/aaa/config.m4 revision 1.54. Also, FreeBSD's DB
111 variant was not properly detected. See
112 apr-util/build/apu-conf.m4 revision 1.31 and
113 apr-util/dbm/apr_dbm_berkeleydb.c revision 1.17.
115 * Madhu reports that the worker MPM doesn't shutdown nicely
118 * mod_autoindex displays the wrong icon for subdirectories
121 * anon shared memory not allocating enough
122 (fix is apr/shm/unix/shm.c 1.14)
124 * other BETA possibilities
125 31 + fixes for all non-cosmetic problems seen on daedalus
130 * ap_directory_walk skips some per-dir config merge functions
131 if there is no "<Directory />" block in the configuration
132 Message-ID: <m3itbdiijq.fsf@rdu163-40-092.nc.rr.com>
133 * That is very unlikely, merges are additive. Much more likely,
134 the default SetOutputFilter default or merge is borked.
135 Unless it's the code that permits 'null' merges, per module.
136 Still, it's probably in SetOutputFilter's behavior.
137 * BrianP notes: directory_walk's handling of trailing slashes
138 appears to be the cause: http://www.apachelabs.org/apache-mbox/200112.mbox/%3c3C1CF721.1090300@pacbell.net%3e
140 * Test suite failures:
141 o worker is also failing some of the 'cgi' subtests
142 (see <URL:http://Source-Zone.Org/Apache/regression/>):
143 Justin says: "Worker should be fine and passes httpd-test here.
144 If you can provide evidence that it can be reproduced
145 outside of httpd-test, then it's a showstopper. I
146 think it's a perl or a httpd-test problem."
147 Not a showstopper: Justin
149 * If any request gets to the core handler, without a flag that this
150 r->filename was tested by dir/file_walk, we need to 500 at the very
151 end of the ap_process_request_internal() processing. This provides
152 authors of older modules better compatibility, while still improving
153 the security and robustness of 2.0.
154 Status: still need to decide where this goes, OtherBill comments...
155 Message-ID: <065701c14526$495203b0$96c0b0d0@roweclan.net>
156 we need to look at halting this in the 'default handler' case,
157 and that implies pushing the 'handler election' into the request
158 internal processing phase from the run request phase.
160 * There is a bug in how we sort some hooks, at least the pre-config
161 hook. The first time we call the hooks, they are in the correct
162 order, but the second time, we don't sort them correctly. Currently,
163 the modules/http/config.m4 file has been renamed to
164 modules/http/config2.m4 to work around this problem, it should moved
165 back when this is fixed. rbb
166 Justin says: "Is this really a showstopper? This has been here
167 forever. What's wrong? Does this have to do with
169 Not a showstopper: Justin, BrianP, trawick, gregames
171 * Convert all instances of the old apr_lock_t type to the new
172 types (once they are fully supported in APR).
173 Status: Aaron is working on converting INTRAPROCESS
174 to apr_thread_mutex_t types. Full replacements for
175 LOCKALL and CROSS_PROCESS are not yet complete on all
176 platforms, and should only be used in MPMs like worker
177 with limited OS exposure.
178 BrianP asks: "Is this really a showstopper?"
179 IanH says: "If we don't do it before we go live we will have 2
180 different API's to support in APR"
182 * A binbuild installation picks up the right libraries when
183 running apachectl because we set the appropriate environment
184 variable, but ab, htpasswd, etc. don't know how to pick up apr,
186 Message-ID: <20020116000226.GA15991@ebuilt.com>
187 Justin says: "You could always build all of the binaries
188 statically if you don't want to let libtool
189 handle it. At most, I don't consider this a
190 a release showstopper as it is a packaging issue."
191 Ken sez: "Showstopper because, until it's the default, it
192 violates the P of LA. Binaries will give strange
193 errors and not run if moved."
194 Status: Aaron volunteers: I'll commit a patch to allow all
195 the support binaries to be built statically against
196 libapr/libaprutil/etc and then enable it in binbuild.
197 gregames says: what about httpd? yeah, it works at the moment
198 if you use apachectl. But I've already heard
199 complaints about not being able to execute
202 RELEASE NON-SHOWSTOPPERS BUT WOULD BE REAL NICE TO WRAP THESE UP:
204 * The Add...Filter and Set...Filter directives do not allow the
205 administrator to order filters, beyond the order of filename (mime)
206 extensions. It isn't clear if Set...Filter(s) should be inserted
207 before or after the Add...Filter(s) which are ordered by sequence of
208 filename extensions. At minimum, some sort of +-[0-10] syntax seems
209 like the quickest fix for a 2.0 gold release.
210 Justin says: "Could we delay this for a point release or 2.1?"
211 Not a showstopper: justin, wrowe, trawick, stoddard, Jim, Ian, Aaron,
214 * Should we always build binaries statically unless otherwise
216 Message-ID: <20020129210006.B23512@Lithium.MeepZor.Com>
221 * If the parent process dies, should the remaining child processes
222 "gracefully" self-terminate. Or maybe we should make it a runtime
223 option, or have a concept of 2 parent processes (one being a
225 See: Message-ID: <3C58232C.FE91F19F@Golux.Com>
227 Self-destruct: Ken, Martin
228 Not self-destruct: BrianP, Ian, Cliff, BillS
229 Make it runtime configurable: Aaron, Jim, Justin
230 Have 2 parents: +1: Jim
232 +0: Martin (while standing by, could it do
234 look at accept() error handling first: gregames
236 * Make some modifications to the scoreboard creation routines,
237 prefer anonymous shared memory, and allow a configuration
238 directive to override the defaults.
239 Message-ID: <20020130080804.C16977@clove.org>
240 Status: Aaron volunteers
242 * Get perchild to work on platforms other than Linux. This
243 will require a portable mechanism to pass data and file/socket
244 descriptors between vhost child groups. An API was proposed
246 Message-ID: <20020111115006.K1529@clove.org>
247 Vote: Is a non-portable perchild going to hold up a GA release?
249 No: Aaron, Justin, trawick, stoddard, Jim, Ian, BrianP, gregames
251 * Recent changes to ap_rgetline may have broken EBCDIC boxes.
252 Message-ID: <20020122072605.GF28051@ebuilt.com>
253 Justin says: "I don't have an EBCDIC box to test on. A potential
254 solution is to split out ap_rgetline into two
255 functions as described in this message."
256 gregames says: I see the breakage now, and volunteer to fix it
257 when things calm down a little. It looks OK when
258 there are complete lines and no mime continuations.
260 * Modify the worker MPM so that it doesn't need to create and
261 destroy a pool for each request--possibly by adopting a
262 leader/follower model in which each worker owns a persistent
263 ptrans pool (like the prefork MPM) and the workers take
264 turns acting as listeners...this approach might also help
265 reduce context-switching
267 * CGI single-byte reads
268 BrianP suggests that this is caused by the ap_scan_script_header_err()
269 routine, which will do single-byte reads until it finds the end
270 of the header, at which point it constructs a pipe-bucket (buffered)
273 Proposed solution in:
274 Message-ID: <3C36ADAF.60601@cnet.com>
276 * Try to get libtool inter-library dependency code working on AIX.
278 Message-ID: <cm3n10lx555.fsf@rdu163-40-092.nc.rr.com>
280 Justin says: If we get it working on AIX, we can enable this
281 on all platforms and clean up our build system
283 Jeff says: I thought I tested a patch for you sometime in
284 January that you were going to commit within a few
287 * Handling of %2f in URIs. Currently both 1.3 and 2.0
288 completely disallow %2f in the request URI path (see
289 ap_unescape_url() in util.c). It's permitted and passed
290 through in the query string, however. Roy says the
291 original reason for disallowing it, from five years ago,
292 was to protect CGI scripts that applied PATH_INFO to
293 a filesystem location and which might be tricked by
294 ..%2f..%2f(...). We *should* allow path-info of the
295 form 'http://foo.com/index.cgi/path/to/path%2finfo'.
296 Since we've revamped a lot of our processing of path
297 segments, it would be nice to allow this, or at least
298 allow it conditionally with a directive.
300 * FreeBSD, threads, and worker MPM. All seems to work fine
301 if you only have one worker process with many threads. Add
302 a second worker process and the accept lock seems to be
303 lost. This might be an APR issue with how it deals with
304 the child_init hook (i.e. the fcntl lock needs to be resynced).
305 More examination and analysis is required.
306 Status: This has also been reported on Cygwin.
308 Message-ID: <3C2CC514.8EF3BED1@wapme-systems.de> (cygnus)
310 Justin says: So, FreeBSD-CURRENT and Cywin have the same
311 problem. Yum. If another platform has this
312 with worker, this becomes a showstopper.
313 Aaron says: I spent some time disecting this and have come to
314 the conclusion that it is not a problem in the worker MPM
315 (or at least, it is not isolated to a problem in worker).
316 I'll list some of the problems I'm seeing in case someone
317 else wants to pick up where I've left off:
318 - Delivery of just about any signal to one of the child
319 processes will send it into an infinite loop as well.
320 - Even though the parent is spinning out of control,
321 at first the child or children will appear to work
322 properly. At times it is possible to get it into a state,
323 however, where a request will hang until another concurrent
324 request "kicks" the first, at which point the second will
325 hang. My theory is that this has to do with the
326 pthread_cond_*() implementation in FreeBSD, but it's still
327 possible that it is in APR.
329 Justin adds: Oh, FreeBSD threads are implemented entirely with
330 select()/poll()/longjmp(). Welcome to the nightmare.
331 So, that means a ktrace output also has the thread
332 scheduling internals in it (since it is all the same to
333 the kernel). Which makes it hard to distinguish between
334 our select() calls and their select() calls.
335 *bangs head on wall repeatedly* But, some of the libc_r
336 files have a DBG_MSG #define. This is moderately helpful
337 when used with -DNO_DETACH. The kernel scheduler isn't
338 waking up the threads on a select(). Yum. And, I bet
339 those decrementing select calls have to do with the
340 scheduler. Time to brush up on our OS fundamentals.
342 * There is increasing demand from module writers for an API
343 that will allow them to control the server à la apachectl.
344 Reasons include sole-function servers that need to die if
345 an external dependency (e.g., a database) fails, et cetera.
346 Perhaps something in the (ever more abused) scoreboard?
347 rbb: I don't believe the scoreboard is the correct mechanism
348 for this. We already have a pipe that goes between parent
349 and child for graceful shutdown events, along with an API that
350 can be used to send a message down that pipe. In threaded MPMs,
351 it is easy enough to make that one pipe be used for graceful
352 and graceless events, and it is also easy to open that pipe
353 to both parent and child for writing. Then we just need to figure
354 out how to do graceless on non-threaded MPMs.
356 * revamp the input filter behavior, per discussions since
357 February (and especially at the hackathon last
358 April). Specifically, ap_get_brigade will return a brigade with
359 *up to* a specific number of bytes, or a "line" of data. The
360 read may be blocking or nonblocking. ap_getline() will be
361 refactored into apr_brigade_getline(), and then DECHUNK can use
362 f->next (ap_getline will always read "top of input stack"). Also
363 fix the bug where request body content will end up closing the
364 connection (buggering up persistent conns).
365 Status: Justin is working on this as fast as he can.
366 The core input filters, HTTP-related filters, mod_ssl,
367 mod_proxy, and ap_[r]getline are switched to the new logic.
369 - socket bucket and core input filter changes. see end of
370 message ID (Feb 27): <20010227075326.S2297@lyra.org>
372 - fix up ap_get_brigade() semantics, fix bug in DECHUNK /
373 ap_getline. many messages (plus their threads) (Apr/May):
374 Message-ID: <20010402101207.J27539@lyra.org>
375 Message-ID: <3AF7F921.D2EEC41A@algroup.co.uk>
376 Message-ID: <20010508190029.E18404@lyra.org>
378 - further work with combining/tweaking the builtin filters:
379 Message-ID: <20010509115445.D1374@lyra.org>
381 - thoughts on filter modes:
382 Message-ID: <021b01c14dee$09782af0$93c0b0d0@roweclan.net>
384 - proposal for getline rewrite:
385 Message-ID: <20011231104019.GD3904@ebuilt.com>
387 - patch for getline rewrite:
388 Message-ID: <20020122072605.GF28051@ebuilt.com>
390 - Change ap_get_brigade prototype:
391 Message-ID: <20020120115136.GI17601@ebuilt.com>
393 * Allow the DocumentRoot directive within <Location > scopes? This
394 allows the beloved (crusty) Alias /foo/ /somepath/foo/ followed
395 by a <Directory /somepath/foo> to become simply
396 <Location /foo/> DocumentRoot /somefile/foo (IMHO a bit more legible
397 and in-your-face.) DocumentRoot unset would be accepted [and would
398 not permit content to be served, only virtual resources such as
399 server-info or server-status.
400 This proposed change would _not_ depricate Alias.
402 * Win32: Rotatelogs sometimes is not terminated when Apache
403 goes down hard. FirstBill was looking at possibly tracking the
404 child's-child processes in the parent process.
405 OtherBill asks, wasn't this fixed?
406 stoddard: Not fixed. Shared scoreboard might offer a good
407 way for the parent to keep track of 'other child' processes
408 and whack them if the child goes down.
410 * Win32: Add a simple hold console open patch (wait for close or
411 the ESC key, with a nice message) if the server died a bad
412 death (non-zero exit code) in console mode.
413 Resolution: bring forward same ugly hacks from 1.3.13-.20
415 * Port of mod_ssl to Apache 2.0:
417 The current porting state is summarized in modules/ssl/README. The
418 remaining work includes:
419 (1) stablizing/optimizing the SSL filter logic
420 (2) Enabling the various SSL caching mechanisms (shmcb, shmht)
421 (3) Enabling SSL extentions
422 (4) Trying to seperate the https filter logic from mod_ssl -
423 This is to facilitate other modules that wish to use the https
424 filter or the mod_ssl logic or both as required.
425 Justin: mod_ssl filter logic is redone, so that should be fine.
426 Madhu has submitted a patch for SSL caching - however, I
427 am -0 on that patch as I *think* we could implement the
428 shared memory another way that is much cleaner (i.e.
429 treat shmem directly as a dbm via APR routines). Justin
430 also thinks that the https filter logic may be sufficiently
431 decoupled now, but isn't really sure.
433 * Performance & Debug: Eliminate most (and perhaps all) of the
434 malloc/free calls in the bucket brigade code. Need some
435 light weight memory management functions that allow freeing
436 memory (putting it back into a memory pool) when it is no
437 longer needed. Enabling simple debugging features like guard
438 bands, double free detection, etc. would be cool but certainly
439 not a hard requirement.
441 Status: Cliff started to implement this using SMS as has
442 been discussed at length for months, but since
443 SMS is not being used anywhere else in the server,
444 several people expressed the opinion that we should
445 get rid of it entirely, meaning that the buckets
446 need their own memory management (free list) functions.
447 Cliff will implement that this weekend so we at least
448 have something to look at/compare with.
450 * Eliminate unnecessary creation of pipes in mod_cgid
452 * the autoconf setup should be fixed to default to using the
453 "Apache" layout from config.layout, and each variable settable
454 in a layout should be overridable on the command line. Plus,
455 what we do right now just doesn't seem to fully fit into how autoconf
456 works, eg. AC_PREFIX_DEFAULT issues.
457 Message-ID: <Pine.BSF.4.20.0104031557420.20876-100000@alive.znep.com>
459 * Combine log_child and piped_log_spawn. Clean up http_log.c.
462 * Document mod_file_cache.
464 * Platforms that do not support fork (primarily Win32 and AS/400)
465 Architect start-up code that avoids initializing all the modules
466 in the parent process on platforms that do not support fork.
468 * Win32: Migrate the MPM over to use APR thread/process calls. This
469 would eliminate some code in the Win32 branch that essentially
470 duplicates what is in APR.
472 * There are still a number of places in the code where we are
473 losing error status (i.e. throwing away the error returned by a
474 system call and replacing it with a generic error code)
476 * Mass vhosting version of suEXEC.
478 * All DBMs suffer from confusion in support/dbmmanage (perl script) since
479 the dbmmanage employs the first-matched dbm format. This is not
480 necessarily the library that Apache was built with. Aught to
481 rewrite dbmmanage upon installation to bin/ with the proper library
482 for predictable mod_auth_dbm administration.
483 Questions; htdbm exists, time to kill dbmmanage, or does it remain
484 useful as a perl dbm management example? If we keep it,
485 do we address the issue above?
487 * use apu_dbm in mod_auth_dbm
488 Status: Greg +1 (low-priority volunteer)
489 Justin says: "Seems like this is already there, so should we just
490 remove the other DBM code in that file? If you want
491 to use gdbm, or dbm, etc, you should tell apr-util."
492 Will says: "bs - I may choose the fastest - most efficient native
493 dbm implementation, for shared proc caches, ssl session
494 caching, etc, but that has nothing to do with maintaining
495 a userlist via dbm, which has to remain readable between
496 builds/machines, etc. The use-multiple database schema
497 for apr-util would let us do this with just apr, though."
498 Ian says: "multi-dbm is in, but it still has ndbm support hardcoded
499 is this still required? isn't ndbm supported via gdbm?"
503 Some additional items remaining:
504 - case_preserved_filename stuff
505 (use the new canonical name stuff?)
506 - find a new home for ap_text(_header)
507 - is it possible to remove the DAV: namespace stuff from util_xml?
509 * ap_core_translate() and its use by mod_mmap_static and mod_file_cache
510 are a bit wonky. The function should probably be exposed as a utility
511 function (such as ap_translate_url2fs() or ap_validate_fs_url() or
512 something). Another approach would be a new hook phase after
513 "translate" which would allow the module to munge what the
514 translation has decided to do.
515 Status: Greg +1 (volunteers), Ryan +1
517 * Explore use of a post-config hook for the code in http_main.c which
518 calls ap_fixup_virutal_hosts(), ap_fini_vhost_config(), and
519 ap_sort_hooks() [to reduce the logic in main()]
521 * read the config tree just once, and process N times (as necessary)
523 * (possibly) use UUIDs in mod_unique_id and/or mod_usertrack
525 * (possibly) port the bug fix for PR 6942 (segv when LoadModule is put
526 into a VirtualHost container) to 2.0.
528 * shift stuff to mod_core.h
530 * callers of ap_run_create_request() should check the return value
531 for failure (Doug volunteers)
533 * Win32: Get Apache working on Windows 95/98. The following work
534 (at least) needs to be done:
535 - winnt MPM: Fix 95/98 code paths in the winnt MPM. There is some NT
536 specific code that is still not in NT only code paths
537 - IOL binds to APR sendfile, implemented with TransmitFile, which
538 is not available on 95/98.
539 - Document warning that OSR2 is required (for Crypt functions, in
540 rand.c, at least.) This could be resolved with an SSL library, or
541 randomization in APR itself.
542 - Bring the Win9xConHook.dll from 1.3 into 2.0 (no sense till it
543 actually works) and add in a splash of Win9x service code.
545 * In order to use a DSO version of mod_ssl we have to link with
546 -lssl and -lcrypto. A workaround is in place right now where the
547 entire EXTRA_LIBS macro is being appended to the objects list, but
548 this is a hack. We should either revamp the APACHE_CHECK_SSL_TOOLKIT
549 autoconf function or come up with some other autoconf checks to
550 search for libssl and libcrypto and properly add them to mod_ssl's
553 * Make the worker MPM the default MPM for threaded Unix boxes.
554 +1: Justin, Jeff, Ian
555 -0: Aaron (premature decision, needs more discussion), Lars
556 -0: Cliff (I think the default config should be the safest possible)
558 * Fix the worker MPM to use POD to kill child processes instead
559 of ap_os_killpg, regardless of how they should die. (Ryan Bloom)
561 PRs that have been suspended forever waiting for someone to
562 put them into 'the next release':
565 missing call to "setlocale();"
569 Additional status for XBitHack directive
573 Mod_proxy doesn't allow change of error pages
577 Modified PATH environemnt variable is not passed, instead
582 Proxy doesn't deliver documents if not connected
586 proxy converts ~name to %7Ename when name starts with a dot (.)
590 mod_access syntax allows hosts that should be restricted
593 * PR#557: mod_auth-any
594 ~UserHome directories are not honored in absolute pathname
599 Proxy FTP Authentication Fails
602 * PR#623: mod_include
603 A smarter "Last Modified" value for SSI documents (see PR number 600)
607 Request of "Options SymLinksIfGroupMatch"
611 Proxy doesn't do links right for OpenVMS files through ftp:
615 imap should read <MAP><AREA>*</MAP> too!
619 RLimitCPU and RLimitMEM don't apply to all children like they should
623 Uses cwd before filling it in, doesn't use syslog
627 it is useful to allow specifiction that root-owned symlinks
628 should always be followed
632 Controlling Access to Remote Proxies would be nice...
636 Adding authentication "on the fly" through the proxy module
639 * PR#1004: apache-api
640 request_config field in request_rec is moderately bogus
644 DoS attacks involving memory consumption
647 * PR#1050: mod_log-any
648 Logging of virtual server to error_log as well
652 ProxyRemote make a dead cycle.
655 * PR#1117: mod_auth-any
656 Using NIS passwd.byname dbm files with AuthDBMUserFile
660 suexec does not parse arguments to #exec cmd
663 * PR#1145: mod_include
664 Allow for Last-Modified: without resorting to XBitHack
667 * PR#1158: apache-api
668 improvements to child spawning API
672 ``nph-'' not honored (no buffering) for ProxyRemote mapping
676 Apache cannot handle continuation line in headers
680 setlogin() is not called, causing problems with e.g. identd
684 regerror() exists, use it
687 * PR#1233: apache-api
688 there is no way to keep per-connection per-module state
691 * PR#1263: mod_autoexec
692 Add frame-safe anchor attribute to mod_autoindex links
696 CGI scripts running as Apache user: security (suexec etc.)
700 Error messages could be easier to spot in cgi.log file for suexec.c
703 * PR#1287: mod_access
704 add allow,deny/deny,allow warning to mod_access
708 Need to know "hit-rate" on proxy cache
711 * PR#1358: mod_log-any
712 Selective url-encode of log fields (or maybe a pseudo
716 * PR#1383: mod_headers
717 I make mod_headers to modify request headers as well as
722 Proxy transfer logging
726 No HTTP_X_FORWARDED_FOR set...
730 ProxyRemote proxy requests fail authentication by firewall
733 * PR#1582: mod_rewrite
734 mod_rewrite forms REQUEST_URI different than mod_cgi does
737 * PR#1677: mod_headers
738 mod_headers should allow mod_log_config-style formats in
743 mod_proxy to support persistent conns?
746 * PR#1803: mod_include
747 patches to mod_include to allow for file tests
750 * PR#1809: mod_auth-any
751 Suggestion for improving authentication modules and core source
752 code, problem with 401 and ErrorDocument
756 listing of proxy cache content
760 Allow modules to set user:group for execution.
763 * PR#2024: apache-api
764 adding auth_why to conn_rec
767 * PR#2073: mod_log-any
768 pipelined connections are not logged correctly
771 * PR#2074: mod_rewrite
772 mod_rewrite doesn't pass Proxy Throughput on internal subrequests
776 HTTP Server Rebuild Line Needs Changing for the better
779 * PR#2138: mod_status
780 mod_status always displays 256 possible connection slots
783 * PR#2221: documentation
784 Make online documentation search link back to my installation
788 Can not POST to ErrorDocument - Apache/1.3b6
792 patterns in ProxyRemote
795 * PR#2343: mod_status
796 Status module averages are for entire uptime
800 suexec for general access of user content?
804 Proposal for TimeZone directive
808 /server-info doesn't check for the virtual host to list the info
812 problem specifying ndbm library for build ?with autoconfigure
816 A small addition to rotatelogs.c to improve program functionality.
820 AllowOverride FileInfo is too coarse
824 TimeOut applies to output of CGI scripts
827 * PR#2512: mod_access
828 <IfDenied> directive wanted
832 CGI's for general use still have to be run as another user
837 Cache file names in Proxy module
841 [PATCH] User/Group for <Directory> and <Location> i.e. not only
842 in global and <Virtual>.
846 mailto tags and bundling bug report script
850 Support for System Resource Controller
854 When will Apache support P3P? Any Plans?
858 Feedback/Comment on APACI
862 Inclusion of RPM spec file in CVS/distributions
866 Propose that Apache recommend $UNIQUE_ID for all "session id"
871 suggestion: power up your Include directive :)
875 cannot limit some HTTP methods
878 * PR#3143: apache-api
879 No module specific data hook for per-connection data
882 * PR#3191: mod_negotiation
883 no way to set global quality-of-source (qs) coneg values
888 Accessing URL through proxy server corrupts data.
892 Some anonymous FTP URLs ask for authentication
896 New ErrorDocumentMatch directive
900 Need to be able to override shebang line to make CGI scripts
905 "Files" and "FilesMatch" regexp does not recognize bang as
909 * PR#4448: mod_log-any
910 Please allow CGI env variables (QUERY_STRING, ...) to be logged
914 * PR#4459: mod_include
915 Suggestion for better handling of Last-modified headers
919 mod_cgi prevents handling of OPTIONS requests
922 * PR#5713: os-windows
923 [PATCH] install as win32 service with domain account
924 Status: Cannot accept password-as-arg, we should prompt the
925 user when -k install/-k config with a user argument.
928 AllowOverride should have a 'CheckNone' and 'AllowNone' argument
929 instead of only 'None'
932 Other bugs that need fixing:
934 * MaxRequestsPerChild measures connections, not requests.
935 Until someone has a better way, we'll probably just rename it
936 "MaxConnectionsPerChild".
938 * Regex containers don't work in an intutive way
939 Status: No one has come up with an efficient way to fix this
940 behavior. Dean has suggested getting rid of regex containers
942 OtherBill suggests: We at least seem to agree on eliminating
943 the <Container ~ foo> forms, and using only
944 <ContainerMatch foo> semantics.
946 * SIGSEGV on Linux (glibc 2.1.2) isn't caught properly by a
947 sigwaiting thread. We need to work around this, perhaps unless
948 there is hope soon for a fixed glibc.
950 * orig_ct in the byterange/multipart handling may not be
951 needed. Apache 1.3 just never stashed "multipart" into
952 r->content_type. We should probably follow suit since the
953 byterange stuff doesn't want the rest of the code to see the
954 multipart content-type; the other code should still think it is
955 dealing with the <orig_ct> stuff.
956 Status: Greg volunteers to investigate (esp. since he was most
957 likely the one to break it :-)
959 Other features that need writing:
961 * Finish infrastructure in core for async MPMs
964 * TODO in source -- just do an egrep on "TODO" and see what's there
968 * Jon Travis's <jtravis@covalent.net> patch to deal with thread-safe
969 issues with inet_ntoa. See message <20001201163220.A12827@covalent.net>
970 Status: This is being set aside until the IPv6 work is finished
971 so that we know exactly what is required.
973 * Martin Sojka <msojka@gmx.de>'s patch to add error reporting for failed
974 htpasswd actions due to a full /tmp volume (other programs may have
979 * Mike Abbott's <mja@trudge.engr.sgi.com> patches to improve
981 Status: These were written for 1.3, and are awaiting a port to
984 * Jim Winstead's <jimw@trainedmonkey.com> patch to add CookieDomain and
985 other small mod_usertrack features
987 * Dan Rench's <drench@xnet.com> patch to add allow the errmsg and timefmt
988 of SSI's to be modified in the config file. Patch is available in
993 * Which MPMs will be included with Apache 2.0?