STATUS revision e3838a090d22197ee5f0d2c10b5a3d5e6f550f6e
f743002678eb67b99bbc29fee116b65d9530fec0wroweApache 2.0 STATUS:
80833bb9a1bf25dcf19e814438a4b311d2e1f4cffuankgLast modified at [$Date: 2000/06/10 01:32:35 $]
16f23f109da3b82fdca8695789bec9f06e2e3383humbedooh
54d750a84a175d8e338880514d440773eb986b50covenerRelease:
54d750a84a175d8e338880514d440773eb986b50covener
54d750a84a175d8e338880514d440773eb986b50covener 2.0a5 : ???
54d750a84a175d8e338880514d440773eb986b50covener 2.0a4 : released June 7, 2000
54d750a84a175d8e338880514d440773eb986b50covener 2.0a3 : released April 28, 2000
54d750a84a175d8e338880514d440773eb986b50covener 2.0a2 : released March 31, 2000
54d750a84a175d8e338880514d440773eb986b50covener 2.0a1 : released March 10, 2000
54d750a84a175d8e338880514d440773eb986b50covener
54d750a84a175d8e338880514d440773eb986b50covenerRELEASE SHOWSTOPPERS:
54d750a84a175d8e338880514d440773eb986b50covener * Turn on buffering for config file reads.
54d750a84a175d8e338880514d440773eb986b50covener
83b50288fa7d306324bba68832011ea08f5c7832covener * Win32: Get mod_auth_digest working under win32
4e30ef014533a7e93c92d88306291f5e49c9692ftrawick - APR_HAS_RANDOM should be defined on windows and there is a
83b50288fa7d306324bba68832011ea08f5c7832covener lib/apr/misc/win32/rand.c which is basically a copy of what
ac95effcd4bcdf02e41becbec4e9f2d3c577e7fdcovener mod_auth_digest used to use.
ac95effcd4bcdf02e41becbec4e9f2d3c577e7fdcovener
ac95effcd4bcdf02e41becbec4e9f2d3c577e7fdcovener * Re-work configuration for top level Apache. Work should start with
ac95effcd4bcdf02e41becbec4e9f2d3c577e7fdcovener trying to clean the autoconf stuff. If and only if this proves
f628b0e7cb9bf51de44af6b4355bc520fda84f4ecovener impossible to do (very unlikely), autoconf should be removed and we
f628b0e7cb9bf51de44af6b4355bc520fda84f4ecovener will roll our own config implementation.
f628b0e7cb9bf51de44af6b4355bc520fda84f4ecovener NOTE: When this is implemented, it would be really nice if the
f628b0e7cb9bf51de44af6b4355bc520fda84f4ecovener default cgi module on Unix with a threaded MPM is the cgid
5f066f496cd9f20a2a701255bc67d44e7cb46daetrawick module. This should be override-able of course.
5f066f496cd9f20a2a701255bc67d44e7cb46daetrawick Status: Jim Jagielski is looking into this.
5f066f496cd9f20a2a701255bc67d44e7cb46daetrawick
2e15620d724fb8e3a5be183b917359a2fd6e9468covener - Fix up ./configure to properly detect the various dynamic load
2e15620d724fb8e3a5be183b917359a2fd6e9468covener libraries/flags on the different platforms (current, we default
2e15620d724fb8e3a5be183b917359a2fd6e9468covener to -ldl which is wrong).
2e15620d724fb8e3a5be183b917359a2fd6e9468covener
b3a6e12c9577d9dfc6529bc5ad908f2073810df1kbrand * suEXEC doesn't work
b3a6e12c9577d9dfc6529bc5ad908f2073810df1kbrand Status: Manoj has posted an patch to fix this.
b3a6e12c9577d9dfc6529bc5ad908f2073810df1kbrand <19991103003605.A20612@samosa.mindspring.com>
b3a6e12c9577d9dfc6529bc5ad908f2073810df1kbrand
3130cec5e1377ddd4203284dabf4dbc25cb759a0kbrand * Win32: Enable the Windows MPM to honor max_requests_per_child
3130cec5e1377ddd4203284dabf4dbc25cb759a0kbrand Status: Bill will fix this.
3130cec5e1377ddd4203284dabf4dbc25cb759a0kbrand
7b82bb697a4957f302e43df708dda478dea80e05trawick * Win32: Get Apache working on Windows 95/98. The following work
7b82bb697a4957f302e43df708dda478dea80e05trawick (at least) needs to be done:
7b82bb697a4957f302e43df708dda478dea80e05trawick - winnt MPM: Fix 95/98 code paths in the winnt MPM. There is some NT
1b988c41ee505962781d110a3e4c2c90f1ea0aa4covener specific code that is still not in NT only code paths
1b988c41ee505962781d110a3e4c2c90f1ea0aa4covener - IOL binds to APR sendfile, implemented with TransmitFile, which
1b988c41ee505962781d110a3e4c2c90f1ea0aa4covener is not available on 95/98.
1b988c41ee505962781d110a3e4c2c90f1ea0aa4covener
b352b6577c91eee28506a1d7db4b6951a45b8faekbrand * Win32: Test access logging with multiple threads. Will the
b352b6577c91eee28506a1d7db4b6951a45b8faekbrand native file I/O calls serialize automagically like the
b352b6577c91eee28506a1d7db4b6951a45b8faekbrand CRT calls or do we need to add region locking each time
b352b6577c91eee28506a1d7db4b6951a45b8faekbrand we access the logs?
b352b6577c91eee28506a1d7db4b6951a45b8faekbrand Status:
e42e58d225104194ba5e894eb616be1ce2258e13jailletc
e42e58d225104194ba5e894eb616be1ce2258e13jailletc * Win32: Complete the revamp the service environment and relocation
e42e58d225104194ba5e894eb616be1ce2258e13jailletc into the WinNT MPM. Changes ServerRoot service registry
e42e58d225104194ba5e894eb616be1ce2258e13jailletc parameter into ConfigArgs for multiple service startup parameters.
10b01707470385065764d144de9bb5297fe8ecf2ylavic Problems to fix in the revamp: -k shutdown/restart are broken,
10b01707470385065764d144de9bb5297fe8ecf2ylavic signals are not being acknowledged. Close window and shutdown
10b01707470385065764d144de9bb5297fe8ecf2ylavic also seem out of sorts.
b8efdc95bec9cf089aa1be0bfd07d46aa1137a7acovener OtherBill is working on this
b8efdc95bec9cf089aa1be0bfd07d46aa1137a7acovener
b8efdc95bec9cf089aa1be0bfd07d46aa1137a7acovener * Win32: fix build/run time environment to remove ApacheCore.dll
c12b284247f00b5696adabb0b855ce0669465764ylavic linkage from ab.exe and htdigest.exe.
c12b284247f00b5696adabb0b855ce0669465764ylavic
c12b284247f00b5696adabb0b855ce0669465764ylavic * We need a thread-safe resolver, at least on Unix.
c12b284247f00b5696adabb0b855ce0669465764ylavic Status: The best known candidate would be something from
6029353b43240f5fa7feede018ce0e3ab1600c96covener BIND v9.
6029353b43240f5fa7feede018ce0e3ab1600c96covener Status: Greg asks, "why? doesn't gethostbyname_r() handle this?"
6029353b43240f5fa7feede018ce0e3ab1600c96covener
8861e3760584fe7f451b3519163502a63c406eb3humbedoohRELEASE NON-SHOWSTOPPERS BUT WOULD BE REAL NICE TO WRAP THESE UP:
8861e3760584fe7f451b3519163502a63c406eb3humbedooh * OS/2: Get loadable modules working again. Requires shared core support
8861e3760584fe7f451b3519163502a63c406eb3humbedooh which doesn't appear to be catered for in the current build system.
e1f43cac62f6960a6945e1fb6e3288ef7082ac53rpluem
e1f43cac62f6960a6945e1fb6e3288ef7082ac53rpluem * OS/2: Make mod_status work for spmt_os2 MPM.
e1f43cac62f6960a6945e1fb6e3288ef7082ac53rpluem
e1f43cac62f6960a6945e1fb6e3288ef7082ac53rpluem * Build scripts do not recognise AIX 4.2.1 pthreads, so the
f06e7c4b1bce6b6491e5de0b7998d3f5696b293dchrisd pthread MPMs will not build.
f06e7c4b1bce6b6491e5de0b7998d3f5696b293dchrisd
f06e7c4b1bce6b6491e5de0b7998d3f5696b293dchrisd * Win32: Reuse accept socket after transmitfile/close
179565be4043d7e5f9161aa75271fa0a001866d9covener This is not a bug, but would be nice to get this feature in
179565be4043d7e5f9161aa75271fa0a001866d9covener before ship.
179565be4043d7e5f9161aa75271fa0a001866d9covener
111436a32ba1254291e4883292fb116d15fe8f64covener * Win32: Enable the winnt MPM to use the new scoreboard API
fce4949fb0b309a5744afcd503c6ed2d35621ee2covener
fce4949fb0b309a5744afcd503c6ed2d35621ee2covener * Win32: Implement ap_shm_ functions in APR.
fce4949fb0b309a5744afcd503c6ed2d35621ee2covener
fce4949fb0b309a5744afcd503c6ed2d35621ee2covener * Win32: Win9x console window still won't play nice with the
7b7430e701e9a31ce809da7c220bb8dfcf68c86etrawick close window, logoff and shutdown scenarios.
7b7430e701e9a31ce809da7c220bb8dfcf68c86etrawick
7b7430e701e9a31ce809da7c220bb8dfcf68c86etrawick * Win32: Add a simple hold console open patch (wait for close or
ccc20788c1e5fc973f36df634399c89acb70deaejerenkrantz the ESC key, with a nice message) if the server died a bad
ccc20788c1e5fc973f36df634399c89acb70deaejerenkrantz death (non-zero exit code) in console mode.
ccc20788c1e5fc973f36df634399c89acb70deaejerenkrantz
d522f82d7ada07a0cedb8dc6b71eacf3477d7188trawick * Platforms that do not support fork (primarily Win32 and AS/400)
d522f82d7ada07a0cedb8dc6b71eacf3477d7188trawick Consider introducing HAVE_FORK feature macro. Architect start-up code
d522f82d7ada07a0cedb8dc6b71eacf3477d7188trawick that avoids initializing all the modules in the parent process on
1e1539a1e7d64b1af92636b81aac5aa50ee3163bminfrin platforms that do not support fork.
1e1539a1e7d64b1af92636b81aac5aa50ee3163bminfrin
1e1539a1e7d64b1af92636b81aac5aa50ee3163bminfrin * Clean the code. There are a lot of places we used APR but didn't
273e512f20f262e5e2aa8e0e83371d1929fb76adjkaluza remove the hacks that were required for the cross-platform code in
273e512f20f262e5e2aa8e0e83371d1929fb76adjkaluza 1.3. We need to make the code look like APR was supposed to be there.
273e512f20f262e5e2aa8e0e83371d1929fb76adjkaluza
efe780dcf13b2b95effabf897d694d8f23feac74trawick * Go throught the 1.3 Bug DB and research the bugs marked "suspended".
81849cd8925f6ffaf57412aaaac8a6df0d33cbb6covener People were told these would be considered for inclusion in Apache 2.0,
81849cd8925f6ffaf57412aaaac8a6df0d33cbb6covener it would be nice to actually do so.
81849cd8925f6ffaf57412aaaac8a6df0d33cbb6covener
c8e4ae58e7b9eb27e5158d6980770d5064c50ba7trawick * Win32: Migrate the MPM over to use APR thread/process calls. This
c8e4ae58e7b9eb27e5158d6980770d5064c50ba7trawick would eliminate some code in the Win32 branch that essentially
c8e4ae58e7b9eb27e5158d6980770d5064c50ba7trawick duplicates what is in APR.
c8e4ae58e7b9eb27e5158d6980770d5064c50ba7trawick
c8e4ae58e7b9eb27e5158d6980770d5064c50ba7trawick Bill says we need a new procattr, APR_CREATE_SUSPENDED (or
fe83f60b41477b14a37edcfcd1f7f5c5a1ebfe44minfrin something similar) to direct ap_create_process to create the
fe83f60b41477b14a37edcfcd1f7f5c5a1ebfe44minfrin process suspended. We also need a call to wake up the suspended
fe83f60b41477b14a37edcfcd1f7f5c5a1ebfe44minfrin process This may not be able to be implemented everywhere though.
993d1261a278d7322bccef219101220b7b4fb8c5jkaluza
993d1261a278d7322bccef219101220b7b4fb8c5jkaluza Status:
993d1261a278d7322bccef219101220b7b4fb8c5jkaluza
ba050a6f942b9fa0e81ed73437588005c569655ccovener * Move I/O layering into APR.
ba050a6f942b9fa0e81ed73437588005c569655ccovener
ba050a6f942b9fa0e81ed73437588005c569655ccovener * There are still a number of places in the code where we are
ba050a6f942b9fa0e81ed73437588005c569655ccovener loosing error status (i.e. throwing away the error returned by a
ba050a6f942b9fa0e81ed73437588005c569655ccovener system call and replacing it with a generic error code)
ba050a6f942b9fa0e81ed73437588005c569655ccovener
ba050a6f942b9fa0e81ed73437588005c569655ccovener * Win32: Implement reliable piped logs on Windows
135ddda3a989215d2bedbcf1529bfb269c3eda23niq Status:
135ddda3a989215d2bedbcf1529bfb269c3eda23niq
135ddda3a989215d2bedbcf1529bfb269c3eda23niq * Switch to autoconf, et al. for configuration.
1122585e1e00bb81e9d0f054bf5c318cec23aa7dminfrin Status: Manoj has placed an initial version into the 2.0
1122585e1e00bb81e9d0f054bf5c318cec23aa7dminfrin repository. Todos include:
1122585e1e00bb81e9d0f054bf5c318cec23aa7dminfrin
001a44c352f89c9ec332ffd3e0a6927dcd19432chumbedooh * Use APR to get rid of more platform dependancies.
001a44c352f89c9ec332ffd3e0a6927dcd19432chumbedooh Status: Ryan Bloom <rbb@covalenet.net> is working on this.
001a44c352f89c9ec332ffd3e0a6927dcd19432chumbedooh
efe780dcf13b2b95effabf897d694d8f23feac74trawick * The connection status table is not very efficient. Also, very few stats
793214f67dede32edfd9ee96c664ead04d175cbbjfclere are exported to the connection status table (easy to fix), and mod_status
cc5a4a08dc9783fcbc52ce86f11e01c281a43810minfrin is ugly.
33124689065ade0dfc8c54d8ebb734f9439cb89btrawick
33124689065ade0dfc8c54d8ebb734f9439cb89btrawick * Mass vhosting version of suEXEC.
33124689065ade0dfc8c54d8ebb734f9439cb89btrawick
9b0076ddd1103e5fa9c1f9bafde4b06ce244fbaecovener * Replace tables with a proper opaque ADT that has pluggable
9b0076ddd1103e5fa9c1f9bafde4b06ce244fbaecovener implementations (including something like the existing data type,
9b0076ddd1103e5fa9c1f9bafde4b06ce244fbaecovener plus hash tables for speed, with options for more later).
249d09d51808cb7981af99762c3b3736ca126cd5jkaluza Status: fanf is working on this.
249d09d51808cb7981af99762c3b3736ca126cd5jkaluza
249d09d51808cb7981af99762c3b3736ca126cd5jkaluza * configuration option to use *DBM
249d09d51808cb7981af99762c3b3736ca126cd5jkaluza Status: Greg +1 (volunteers)
56589be3d7a3e9343370df240010c6928cc78b39jkaluza
56589be3d7a3e9343370df240010c6928cc78b39jkaluza * add SDBM into src/lib/sdbm/ as a default/fallback DBM implementation.
56589be3d7a3e9343370df240010c6928cc78b39jkaluza SDBM is used by Perl, mod_dav, mod_sssl, others for basic DBM support.
652bacc79dd7f980249784cc8c4838e8f1de7e8acovener Status: Greg +1 (volunteers)
652bacc79dd7f980249784cc8c4838e8f1de7e8acovener
652bacc79dd7f980249784cc8c4838e8f1de7e8acovener * Integrate mod_dav.
652bacc79dd7f980249784cc8c4838e8f1de7e8acovener Message-id: forthcoming (plan to be posted before integration begins)
77ca16c5676da23155311e13cee61e7eaba9fa3ejailletc Status: Greg +1 (volunteers :-)
77ca16c5676da23155311e13cee61e7eaba9fa3ejailletc
77ca16c5676da23155311e13cee61e7eaba9fa3ejailletcOther bugs that need fixing:
77ca16c5676da23155311e13cee61e7eaba9fa3ejailletc
50cfe8bbbaf4279375802531268e2bf0155215fetrawick * MaxRequestsPerChild measures connections, not requests.
50cfe8bbbaf4279375802531268e2bf0155215fetrawick Until someone has a better way, we'll probably just rename it
50cfe8bbbaf4279375802531268e2bf0155215fetrawick "MaxConnectionsPerChild".
50cfe8bbbaf4279375802531268e2bf0155215fetrawick
f87299dab99bc04b51a6b8cad51b6795db862c0atrawick * Regex containers don't work in an intutive way
f87299dab99bc04b51a6b8cad51b6795db862c0atrawick Status: No one has come up with an efficient way to fix this
f87299dab99bc04b51a6b8cad51b6795db862c0atrawick behavior. Dean has suggested getting rid of regex containers
4d12805e6c18253040223ea637acd6b3b3c18f60jorton completely.
4d12805e6c18253040223ea637acd6b3b3c18f60jorton
4d12805e6c18253040223ea637acd6b3b3c18f60jorton * SIGSEGV on Linux (glibc 2.1.2) isn't caught properly by a
4d12805e6c18253040223ea637acd6b3b3c18f60jorton sigwaiting thread. We need to work around this, perhaps unless
4d12805e6c18253040223ea637acd6b3b3c18f60jorton there is hope soon for a fixed glibc.
e5d909f2b06bd880fb3675cd49363df981caa631trawick
a4df2cd1e1391575a327c2a90ba4315f805a0a78covener * The mod_cgid daemon process isn't always cleaned up when httpd
a4df2cd1e1391575a327c2a90ba4315f805a0a78covener gets SIGTERM. Jeff thinks it may be as simple as registering
a4df2cd1e1391575a327c2a90ba4315f805a0a78covener the daemon process for cleanup with the proper pool, but he hasn't
cb666b29f81df1d11d65002250153353568021fccovener looked at it in enough detail.
cb666b29f81df1d11d65002250153353568021fccovener
cb666b29f81df1d11d65002250153353568021fccovenerOther features that need writing:
6a80c3c6f4b8ea7ba5e89402b8b779b09ce020e0covener
1c2cab00d988fc48cbe59032cf76cc0bab20d6f7covener * Finish infrastructure in core for async MPMs
6a80c3c6f4b8ea7ba5e89402b8b779b09ce020e0covener Status: post 2.0
75a230a728338d84dcfe81edd375352f34de22d0covener
75a230a728338d84dcfe81edd375352f34de22d0covener * TODO in source -- just do an egrep on "TODO" and see what's there
75a230a728338d84dcfe81edd375352f34de22d0covener
1f50dc34ae069adeed20b2986e5ffdefa5c410e0covenerDocumentation that needs writing:
1f50dc34ae069adeed20b2986e5ffdefa5c410e0covener * Mod_status docs are needed.
1f50dc34ae069adeed20b2986e5ffdefa5c410e0covener
63a5ea80bddcc84a462e40f402b4f330e0e05411covener * The concept of MPMs, especially if we ship more than one MPM for a
63a5ea80bddcc84a462e40f402b4f330e0e05411covener given platform
63a5ea80bddcc84a462e40f402b4f330e0e05411covener
63a5ea80bddcc84a462e40f402b4f330e0e05411covener * New directives in the various MPMs and appropriate links from
986f3ea2c314d4d4b3b937149853a0f23f6119aaminfrin obsolete directives in core.html to the MPM documentation.
986f3ea2c314d4d4b3b937149853a0f23f6119aaminfrin
986f3ea2c314d4d4b3b937149853a0f23f6119aaminfrin * Revise manual/stopping.html and the last part of
65a4e663b82f8bce28ac22ab2edfd7502de36998sf manual/misc/perf-tuning.html to take account of the MPMs.
65a4e663b82f8bce28ac22ab2edfd7502de36998sf
65a4e663b82f8bce28ac22ab2edfd7502de36998sf * API documentation
65a4e663b82f8bce28ac22ab2edfd7502de36998sf Status: Ben Laurie has written some hooks documentation
c7de1955eb0eaeabf7042902476397692672d549sf (apache-2.0/htdocs/hooks.html)
74e7f6c55fd67b10cb400b3f6d1dc718a303d944minfrin
74e7f6c55fd67b10cb400b3f6d1dc718a303d944minfrin * Changes since 1.3.9 can be more easily seen in the commitlog file
74e7f6c55fd67b10cb400b3f6d1dc718a303d944minfrin dev.apache.org:/home/cvs/CVSROOT/commitlogs/apache-2.0
74e7f6c55fd67b10cb400b3f6d1dc718a303d944minfrin which includes some of Roy's comments when the changes were
a511a29faf2ff7ead3b67680154a624effb31aafminfrin committed in rough change-sets by purpose. Note that the commitlog
a511a29faf2ff7ead3b67680154a624effb31aafminfrin does not show the contents of new files until later.
a511a29faf2ff7ead3b67680154a624effb31aafminfrin
a511a29faf2ff7ead3b67680154a624effb31aafminfrinAvailable Patches:
a511a29faf2ff7ead3b67680154a624effb31aafminfrin
63921358ef93fcb41bc71d9894221ba3d7fbb87bminfrin * Mike Abbott's <mja@trudge.engr.sgi.com> patches to improve
63921358ef93fcb41bc71d9894221ba3d7fbb87bminfrin performance
63921358ef93fcb41bc71d9894221ba3d7fbb87bminfrin Status: These were written for 1.3, and are awaiting a port to
deec48c67d4786bc77112ffbf3a4e70b931097edminfrin 2.0
6d601599d3d65df0410eae6e573e75b2dbfb1fb4minfrin
6d601599d3d65df0410eae6e573e75b2dbfb1fb4minfrinOpen issues:
6d601599d3d65df0410eae6e573e75b2dbfb1fb4minfrin
6d601599d3d65df0410eae6e573e75b2dbfb1fb4minfrin * What do we do about mod_proxy?
4c02bab56a528a180bbe394d8b6e6fd9c1a3ac1esf
4c02bab56a528a180bbe394d8b6e6fd9c1a3ac1esf * Which MPMs will be included with Apache 2.0?
4c02bab56a528a180bbe394d8b6e6fd9c1a3ac1esf
4c02bab56a528a180bbe394d8b6e6fd9c1a3ac1esf * Is conf/highperformance.conf-dist obsolete? It looks obsolete.
2c487ac43b583db869e743772a7a10b278aa2bcfminfrin
684e0cfc200f66287a93bbd1708d1dd8a92a7eefcovener