STATUS revision 31a130dc6ed3face8b004f32ce84f8a1342d920e
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoApache 2.0 STATUS:
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoLast modified at [$Date: 2000/08/25 10:15:09 $]
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo 2.0a6 : ???
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo 2.0a5 : released August 4, 2000
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo 2.0a4 : released June 7, 2000
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo 2.0a3 : released April 28, 2000
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo 2.0a2 : released March 31, 2000
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo 2.0a1 : released March 10, 2000
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoRELEASE SHOWSTOPPERS:
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * All of the bucket types must be implemented. The list can be found
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo in src/include/ap_buckets.h. May need to implement a bucket type
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo to mark the end of a subrequest content stream, and one to tell
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo filters to flush any pending content. See http_protocol.c:
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo ap_finalize_sub_req_protocol() and ap_rflush()
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo rbb says: Creating a bucket to signal end of sub-request ties
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo the filters to Apache. This can be handled very cleanly
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo by just inserting a sub-request filter. That filter would
b5353d912e615fb002628d16835832e79668c442Abhinandan Ekande be responsible for stripping off the EOS bucket for the
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo sub-request, and removing all vestiges of the request.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Remove Buff and IOL from the code. To do this, a chunking and
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo translation filter must be written. This allows us to remove BUFF.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo IOLs can be removed as soon as somebody gets to it.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * apachectl not being built or installed
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Win32: Get mod_auth_digest working under win32
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo - APR_HAS_RANDOM should be defined on windows and there is a
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo lib/apr/misc/win32/rand.c which is basically a copy of what
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo mod_auth_digest used to use.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * suEXEC doesn't work
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Status: Manoj has posted an patch to fix this.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Message-ID: <20000825024943.A17578@manojk.users.mindspring.com>
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Win32: Enable the Windows MPM to honor max_requests_per_child
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Status: Bill will fix this.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Win32: Get Apache working on Windows 95/98. The following work
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo (at least) needs to be done:
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo - winnt MPM: Fix 95/98 code paths in the winnt MPM. There is some NT
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo specific code that is still not in NT only code paths
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo - IOL binds to APR sendfile, implemented with TransmitFile, which
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo is not available on 95/98.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Win32: Test access logging with multiple threads. Will the
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo native file I/O calls serialize automagically like the
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo CRT calls or do we need to add region locking each time
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo we access the logs?
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Win32: Complete the revamp the service environment and relocation
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo into the WinNT MPM. Changes ServerRoot service registry
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo parameter into ConfigArgs for multiple service startup parameters.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Problems to fix in the revamp: -k shutdown/restart are broken,
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo signals are not being acknowledged. Close window and shutdown
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo also seem out of sorts.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo OtherBill is working on this
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Win32: fix build/run time environment to remove ApacheCore.dll
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * We need a thread-safe resolver, at least on Unix.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Status: The best known candidate would be something from
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Status: Greg asks, "why? doesn't gethostbyname_r() handle this?"
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Modify mod_cgi and mod_cgid to deal with directories. This allows
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo a lot of directives to be removed from the core.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoRELEASE NON-SHOWSTOPPERS BUT WOULD BE REAL NICE TO WRAP THESE UP:
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Combine log_child and piped_log_spawn. Clean up http_log.c.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Common logging API.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Create unified scoreboard API and implementation shared across
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Document mod_file_cache.
b5353d912e615fb002628d16835832e79668c442Abhinandan Ekande * OS/2: Get loadable modules working again. Requires shared core support
b5353d912e615fb002628d16835832e79668c442Abhinandan Ekande which doesn't appear to be catered for in the current build system.
b5353d912e615fb002628d16835832e79668c442Abhinandan Ekande * OS/2: Make mod_status work for spmt_os2 MPM.
b5353d912e615fb002628d16835832e79668c442Abhinandan Ekande * Build scripts do not recognise AIX 4.2.1 pthreads, so the
b5353d912e615fb002628d16835832e79668c442Abhinandan Ekande pthread MPMs will not build.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Win32: Enable the winnt MPM to use the new scoreboard API
b5353d912e615fb002628d16835832e79668c442Abhinandan Ekande * Win32: Implement ap_shm_ functions in APR.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Win32: Win9x console window still won't play nice with the
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo close window, logoff and shutdown scenarios.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Win32: Add a simple hold console open patch (wait for close or
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo the ESC key, with a nice message) if the server died a bad
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo death (non-zero exit code) in console mode.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Platforms that do not support fork (primarily Win32 and AS/400)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Consider introducing HAVE_FORK feature macro. Architect start-up code
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo that avoids initializing all the modules in the parent process on
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo platforms that do not support fork.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Win32: Migrate the MPM over to use APR thread/process calls. This
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo would eliminate some code in the Win32 branch that essentially
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo duplicates what is in APR.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Bill says we need a new procattr, APR_CREATE_SUSPENDED (or
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo something similar) to direct ap_create_process to create the
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo process suspended. We also need a call to wake up the suspended
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo process This may not be able to be implemented everywhere though.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * There are still a number of places in the code where we are
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo loosing error status (i.e. throwing away the error returned by a
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo system call and replacing it with a generic error code)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Win32: Implement reliable piped logs on Windows
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * The connection status table is not very efficient. Also, very few stats
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo are exported to the connection status table (easy to fix), and mod_status
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Mass vhosting version of suEXEC.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Replace tables with a proper opaque ADT that has pluggable
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo implementations (including something like the existing data type,
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo plus hash tables for speed, with options for more later).
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Status: fanf is working on this.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * configuration option to use *DBM
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Status: Greg +1 (volunteers)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * add SDBM into src/lib/sdbm/ as a default/fallback DBM implementation.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo SDBM is used by Perl, mod_dav, mod_sssl, others for basic DBM support.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Status: Greg +1 (volunteers)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Integrate mod_dav.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Message-id: <20000625173247.M29590@lyra.org>
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Status: works. passes initial regression testing. Joe Orton
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo reports success with his "cadaver" tool.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Some additional items remaining:
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo - case_preserved_filename stuff
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo - fix and re-enable sdbm_lock.c
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo - find a new home for ap_text(_header)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo - is it possible to remove the DAV: namespace stuff from util_xml?
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * ap_core_translate() and its use by mod_mmap_static are a bit wonky.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo The function should probably be exposed as a utility function (such
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo as ap_translate_url2fs() or ap_validate_fs_url() or something).
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Another approach would be a new hook phase after "translate" which
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo would allow mod_mmap_static to munge what the translation has
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo decided to do.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Status: Greg +1 (volunteers), Ryan +1
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Go through ap_config.h and namespace-protect the symbols (e.g. USE_*).
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Some symbols can/should move to mpm_common.h where possible.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * Explore use of a post-config hook for the code in http_main.c which
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo calls ap_fixup_virutal_hosts(), ap_fini_vhost_config(), and
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo ap_sort_hooks() [to reduce the logic in main()]
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * read the config tree just once, and process N times (as necessary)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * add a version number to ap_initialize() as an extra failsafe against
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo (APR) library version skew.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo MsgID: <Pine.LNX.4.10.10005231712380.31927-100000@nebula.lyra.org>
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Status: Greg +1 (volunteers), Jeff +1, Ryan +1, Tony -0(?)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * mod_info to use the configuration tree
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoPRs that have been suspended forever waiting for someone to
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppoput them into 'the next release':
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#73: mod_log-any
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo reporting of referer in error_log
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#76: general
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo missing call to "setlocale();"
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#78: mod_include
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Additional status for XBitHack directive
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#161: mod_dir
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Questionable performace of mod_dir() with negotiation
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#362: mod_proxy
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Mod_proxy doesn't allow change of error pages
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#370: mod_env
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Modified PATH environemnt variable is not passed, instead
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo system's is used
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#440: mod_proxy
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Proxy doesn't deliver documents if not connected
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#534: mod_proxy
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo proxy converts ~name to %7Ename when name starts with a dot (.)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#537: mod_access
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo mod_access syntax allows hosts that should be restricted
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#557: mod_auth-any
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo ~UserHome directories are not honored in absolute pathname
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo requests (.htaccess)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#573: mod_log-any
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo More LogFormat directives
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#612: mod_proxy
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Proxy FTP Authentication Fails
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#623: mod_include
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo A smarter "Last Modified" value for SSI documents (see PR number 600)
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#628: config
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Request of "Options SymLinksIfGroupMatch"
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#697: mod_include
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo A security tweak I've been using for a few years for SSI
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#700: mod_proxy
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Proxy doesn't do links right for OpenVMS files through ftp:
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#759: mod_imap
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo imap should read <MAP><AREA>*</MAP> too!
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#793: general
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo RLimitCPU and RLimitMEM don't apply to all children like they should
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#921: suexec
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Uses cwd before filling it in, doesn't use syslog
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#922: config
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo it is useful to allow specifiction that root-owned symlinks
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo should always be followed
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#980: mod_proxy
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Controlling Access to Remote Proxies would be nice...
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#994: mod_proxy
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Adding authentication "on the fly" through the proxy module
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#1004: apache-api
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo request_config field in request_rec is moderately bogus
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#1028: other
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo DoS attacks involving memory consumption
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#1050: mod_log-any
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Logging of virtual server to error_log as well
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#1085: mod_proxy
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo ProxyRemote make a dead cycle.
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#1117: mod_auth-any
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Using NIS passwd.byname dbm files with AuthDBMUserFile
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#1120: suexec
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo suexec does not parse arguments to #exec cmd
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#1145: mod_include
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo Allow for Last-Modified: without resorting to XBitHack
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo * PR#1156: config
1ae0874509b6811fdde1dfd46f0d93fd09867a3fheppo insufficent AllowOverrides granularity for autoindexing
setlogin() is not called, causing problems with e.g. identd
add allow,deny/deny,allow warning to mod_access
A small addition to rotatelogs.c to improve program functionality.
Feedback/Comment on APACI
Inclusion of RPM spec file in CVS/distributions
No way to change ReadmeName/HeaderName suffixes.
apache provides no way to do a wildcard/global NameVirtualHost
Apache header files should have a private name, e.g.
#include "apache/httpd.h"
MIME types for MNG and JNG files need adding to mime.types and
the mime.types and magic files
obsolete directives in core.html to the MPM documentation.
* Revise manual/stopping.html and the last part of
manual/misc/perf-tuning.html to take account of the MPMs.
* Is conf/highperformance.conf-dist obsolete? It looks obsolete.