httpd-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject cvs commit: httpd-site Announcement
Date Wed, 28 Mar 2001 17:04:38 GMT
rbb         01/03/28 09:04:38

  Modified:    .        Announcement
  Update the Announcement for the 2.0.15 release
  Revision  Changes    Path
  1.4       +92 -514   httpd-site/Announcement
  Index: Announcement
  RCS file: /home/cvs/httpd-site/Announcement,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -d -b -w -u -r1.3 -r1.4
  --- Announcement	2001/03/12 18:52:19	1.3
  +++ Announcement	2001/03/28 17:04:38	1.4
  @@ -1,8 +1,8 @@
  -Apache 2.0.14 Released as alpha
  +Apache 2.0.15 Released as alpha
  -The Apache Group is proud to announce the release the fourteenth release
  +The Apache Group is proud to announce the release the fifteenth release
   of Apache 2.0.  This release is the first release to use our new release
   process.  This process allows the Apache developers to more easily
   determine the quality of any release.  Instead of tagging any release
  @@ -41,517 +41,95 @@
   Internet web servers.
   For more information, please check out
  -Known problems with Apache 2.0.14
  -  *) WARNING: Apache 2.0b1 is not expected to run on Windows 95, 98 or ME.
  -     The intitial production release of Apache 2.0 is expected to run on
  -     these consumer operating systems, but they cannot be recommended as
  -     production environments due to the lack of integrated security and
  -     robustness.
  -  *) The canonical paths are being overhauled.  This affects especially
  -     Win32 users with this release.  Due to this transitional state,
  -     file with names containing non-ASCII characters may refuse serve.
  -     This is in preparation for the next release, users will be able to 
  -     serve any Unicode named files with Apache/Win32 on Windows NT/2000.
  -  *) Win32 users will see no message when Apache 2.0b1 is started as a
  -     console.  While normal for unix, this differs from the behavior in
  -     Apache 1.3 on Windows.
  -Changes with Apache 2.0.14
  -  *) Fix content-length computation.  We ONLY compute a content-length if
  -     We are not in a 1.1 request and we cannot chunk, and this is a keepalive
  -     or we already have all the data.  [Ryan Bloom]
  -  *) Report unbounded containers in the config file.  Previously, a typo
  -     in the </container> directive could result in the rest of the config
  -     file being silently ignored, with undesired defaults used.
  -     [Jeff Trawick]
  -  *) Make the old_write filter use the ap_f* functions for the buffering.
  -     [Ryan Bloom]
  -  *) Move more code from the http module into the core server.  This
  -     is core code, basically the default handler, the default input
  -     and output filters, and all of the core configuration directives.
  -     All of this code is required in order for the server to work, with or
  -     without HTTP.  The server is closer to working without the HTTP
  -     module, although there is still more to do.  [Ryan Bloom]
  -  *) Fix a number of SGI compile warnings throughout the server.  Fix some
  -     bad parameters to apr_bucket_read().  Fix a bad statement in
  -     ap_method_in_list().  For the mod_rewrite cache use apr_time_t
  -     consistently; we were mixing apr_time_t and time_t in invalid ways
  -     before.  In load_file(), call apr_dso_error() instead of
  -     apr_strerror() so that we get a more specific string on some platforms.
  -     PR #6980  [Jeff Trawick]
  -  *) Allow modules to query the MPM about it's execution profile.  This
  -     query API can and should be extended in the future, but for now,
  -     max_daemons, and threading or forking is a very good start.
  -     [Jon Travis <>]
  -  *) Modify mod_include to send blocks of data no larger than 9k.
  -     Without this, mod_include will wait until the whole file is parsed,
  -     or the first tag is found to send any data to the client.
  -     [Paul J. Reder <>]
  -  *) Fix mod_info, so that <Directory> and <Location> directives are
  -     not displayed twice when displaying the current configuration.
  -     [Ryan Morgan <>]
  -  *) Add config directives to override DEFAULT_ERROR_MSG and
  -     DEFAULT_TIME_FORMAT.  This was sent in as PR 6193.
  -     [Dan Rench <>]
  -  *) Get mod_info building and loading on Win32.  [William Rowe]
  -  *) Begin to move protocol independant functions out of mod_http.  The goal
  -     is to have only functions that are HTTP specific in the http directory.
  -     [Ryan Bloom]
  -Changes with Apache 2.0.13 (not released)
  -  *) Don't assume that there will always be multiple calls to the byterange
  -     filter.  It is possible that we will need to do byteranges with only
  -     one call to the filter.  [Ryan Morgan <>]
  -  *) Move the error_bucket definition from the http module to the
  -     core server.  Every protocol will need this ability, not just
  -     HTTP.  [Ryan Bloom]
  -Changes with Apache 2.0.12 (not released)
  -  *) Modify mod_file_cache to save pre-formatted strings for
  -     content-length and last-modified headers for performance.
  -     [Mike Abbot <>]
  -  *) Namespace protect IOBUFSIZ since it is exposed in the API.
  -     [Jon Travis <>]
  -  *) Use "Basic" authentication instead of "basic" in ab, as the spec
  -     says we should.  [Andre Breiler <>]
  -  *) Fix a seg fault in mod_userdir.c.  We used to use the pw structure
  -     without ever filling it out.  This fixes PR 7271.
  -     [Taketo Kabe <> and
  -      Cliff Woolley <>]
  -  *) Add a couple of GCC attribute tags to printf style functions.
  -     [Jon Travis <>]
  -  *) Add the correct language tag for interoperation with the Taiwanese
  -     versions of MSIE and Netscape. [Clive Lin <clive@CirX.ORG>] PR#7142
  -  *) Migrate the perchild MPM to use the new apr signal child, and
  -     APR thread functions.  [Ryan Bloom]
  -  *) Close one copy of the CGI's stdout before creating the new process.
  -     The CGI will still have stdout, because we have already dup'ed it.
  -     This keeps Apache from waiting forever to send the results of a CGI
  -     process that has forked a long-lived child process.
  -     [Taketo Kabe <>]
  -  *) Remove the rest of the pthreads functions from the threaded MPM.
  -     This requires the APR support for a signal thread that was just
  -     added.  [Ryan Bloom]
  -  *) Make mod_dir use a fixup for sending a redirect to the browser.
  -     Before this, we were using a handler, which doesn't make much
  -     sense, because the handler wasn't generating any data, it would
  -     either return a redirect error code, or DECLINED.  This fits the
  -     current hooks better.  [Ryan Morgan <>]
  -  *) Make the threaded MPM use APR threads instead of pthreads.
  -     [Ryan Bloom]
  -  *) Get mod_tls to the point where it actually appears to work in all cases.
  -     [Ben Laurie]
  -  *) implement --enable-modules and --enable-mods-shared for "all" and
  -     "most".  [Greg Stein]
  -  *) Move the threaded MPM to use APR locks instead of pthread locks.
  -     [Ryan Bloom]
  -  *) Rename mpmt_pthread to threaded.  This is more in line with the
  -     fact that mpmt_pthread shouldn't be using pthreads directly, and
  -     it is a smaller name that doesn't tie into anything.
  -     [Ryan Bloom]
  -  *) Rename the module structures so that the exported symbol matches
  -     the file name, and it is easier to automate the installation
  -     process (generating LoadModule directives from the module filenames).
  -     [Martin Kraemer]
  -  *) Remove the coalesce filter.  With the ap_f* functions, this filter
  -     is no longer needed. [Ryan Bloom]
  -Changes with Apache 2.0.11 (not released)
  -  *) Remove the dexter MPM.  Perchild is the same basic idea, but it has the
  -     added feature of allowing a uid/gid per child process.  If no
  -     uid/gid is specified, then Perchild behaves exactly like dexter.
  -     [Ryan Bloom]
  -  *) Get perchild building again. [Ryan Bloom]
  -  *) Don't disable threads just because we are using the prefork MPM.
  -     If somebody wants to compile without threads, they must now add
  -     --disable-threads to the configure command line.  [Ryan Bloom]
  -  *) Begin to move the calls to update_child_status into common code, so
  -     that each individual MPM does not need to update the scoreboard itself.
  -     [Ryan Bloom]
  -  *) Allow mod_tls to compile under Unix boxes where openssl has been
  -     installed to the system include files.
  -     [Gomez Henri <>]
  -  *) Cleanup the mod_tls configure process.  This should remove any need
  -     to hand-edit any files.  We require OpenSSL 0.9.6 or later, but
  -     configure doesn't check that yet.  [Ryan Bloom]
  -  *) Add a very early prototype of SSL support (in mod_tls.c). It is
  -     vital that you read modules/tls/README before attempting to build
  -     it. [Ben Laurie]
  -  *) Fix a potential seg fault on all platforms.  David Reid fixed this
  -     on BEOS, but the problem could happen anywhere, so we don't want
  -     to #ifdef it. [Cliff Woolley <>]
  -  *) Add new LogFormat directive, %D, to log time it takes to serve a
  -     request in microseconds. [Bill Stoddard]
  -  *) Change AddInputFilter and AddOutputFilter to SetInputFilter and
  -     SetOutputFilter.  This corresponds nicely with the other Set
  -     directives, which operate on containers while the Add* directives
  -     tend to work directly on extensions.  [Ryan Bloom]
  -  *) Cleanup the header handling a bit.  This uses the apr_brigade_*
  -     functions for the buffering so that we don't need to compute
  -     the length of the headers before we actually create the header
  -     buffer.  [Ryan Bloom]
  -  *) Allow filters to buffer data using the ap_f* functions.  These have
  -     become macros that resolve directly to apr_brigade_*.
  -     [Ryan Bloom]
  -  *) Get the Unix MPM's to do a graceful restart again.  If we are going
  -     to register a cleanup with ap_cleanup_scoreboard, then we have to
  -     kill the cleanup with the same function,  and that function can't be
  -     static.  [Ryan Bloom]
  -  *) Install all required header files.  Without these, it was not
  -     possible to compile some modules outside of the server.
  -     [Ryan Bloom]
  -  *) Fix the AliasMatch directive in Apache 2.0.  When we brought a patch
  -     forward from 1.3 to 2.0, we missed a single line, which broke regex
  -     aliases.  [Ryan Bloom]
  -  *) We have a poor abstraction in the protocol.  This is a temporary
  -     hack to fix the bug, but it will need to be fixed for real.  If
  -     we find an error while sending out a custom error response, we back
  -     up to the first non-OK request and send the data.  Then, when we send
  -     the EOS from finalize_request_protocol, we go to the last request,
  -     to ensure that we aren't sending an EOS to a request that has already
  -     received one.  Because the data is sent on a different request than
  -     the EOS, the error text never gets sent down the filter stack.  This
  -     fixes the problem by finding the last request, and sending the data
  -     with that request.  [Ryan Bloom]
  -  *) Make the server status page show the correct restart time, and
  -     thus the proper uptime. [Ryan Bloom]
  -  *) Move the CGI creation logic from mod_include to mod_cgi(d).  This
  -     should reduce the amount of duplicate code that is required to
  -     create CGI processes.
  -     [Paul J. Reder <>]
  -  *) ap_new_connection() closes the socket and returns NULL if a socket
  -     call fails.  Usually this is due to a connection which has been
  -     reset.  [Jeff Trawick]
  -  *) Move the Apache version information out of httpd.h and into release.h.
  -     This is in preparation for the first tag with the new tag and release
  -     system.  [Ryan Bloom]
  -  *) Begin restructuring scoreboard code to enable adding back in
  -     the ability to use IPC other than shared memory.
  -     Get mod_status working on Windows again. [Bill Stoddard]
  -  *) Make mod_status work with 2.0.  This will work for prefork,
  -     mpmt_pthread, and dexter.  [Ryan Bloom]
  -  *) Correct a typo in httpd.conf.
  -     [Kunihiro Tanaka <>] PR#7154
  -  *) Really fix mod_rewrite map lookups this time. [Tony Finch]
  -  *) Get the correct IP address if ServerName isn't set and we can't
  -     find a fully-qualified domain name at startup.
  -     PR#7170 [Danek Duvall <>]
  -  *) Make mod_cgid work with SuExec.  [Ryan Bloom]
  -  *) Adopt apr user/group name features for mod_rewrite.  Eliminates some
  -     'extra' stat's for user/group since they should never occur, and now
  -     resolves the SCRIPT_USER and SCRIPT_GROUP, including on WinNT NTFS
  -     volumes.  [William Rowe]
  -  *) Adopt apr features to simplify mod_includes.  This changes the
  -     behavior of the USER_NAME variable, unknown uid's are now reported
  -     as USER_NAME="<unknown>" rather than the old user#000 result.
  -     WinNT now resolves USER_NAME on NTFS volumes.  [William Rowe]
  -  *) Adopt apr features for simplifing mod_userdir, and accept the new
  -     Win32/OS2 exceptions without hiccuping.  [William Rowe]
  -  *) Replace configure --with-optim option by using and saving the
  -     environment variable OPTIM instead.  This is needed because configure
  -     options do not support multiple flags separated by spaces.
  -     [Roy Fielding]
  -  *) Fix some byterange handling.  If we get a byte range that looks like
  -     "-999999" where that is past the end of the file, we should return
  -     a PARTIAL CONTENT status code, and return the whole file as one big
  -     byterange.  This matches the 1.3 handling now.  [Ryan Bloom]
  -  *) Make the error bucket a real meta-data bucket.  This means that the
  -     bucket length is 0, and a read returns NULL data.  If one of these
  -     buckets is passed down after the headers are sent, this data will
  -     just be ignored.  [Greg Stein]
  -  *) The prefork MPM wasn't killing child processes correctly if a restart
  -     signal was received while the process was serving a request.  The child
  -     process would become the equivalent of a second parent process.  If
  -     we break out of the accept loop, then we need to do die after cleaning
  -     up after ourselves.  [Ryan Bloom]
  -  *) Change the Prefork MPM to use SIGWINCH instead of SIGUSR1 for graceful
  -     restarts.  [Ryan Bloom]
  -  *) Modify the apr_stat/lstat/getfileinfo calls within apache to use
  -     the most optimal APR_FINFO_wanted bits.  This spares Win32 from
  -     performing very expensive owner, group and permission lookups
  -     and allows the server to function until these apr_finfo_t fields
  -     are implemented under Win32.  [William Rowe]
  -  *) Support for typedsafe optional functions - that is functions exported by
  -     optional modules, which, therefore, may or may not be present, depending 
  -     on configuration. See the experimental modules mod_optional_fn_{ex,im}port
  -     for sample code. [Ben Laurie]
  -  *) filters can now report an HTTP error to the server.  This is done
  -     by sending a brigade where the first bucket is an error_bucket.
  -     This bucket is a simple bucket that stores an HTTP error and
  -     a string.  Currently the string is not used, but it may be needed
  -     to output an error log.  The http_header_filter will find this
  -     bucket, and output the error text, and then return
  -     AP_FILTER_ERROR, which informs the server that the error web page
  -     has already been sent.  [Ryan Bloom]
  -  *) If we get an error, then we should remove all filters except for
  -     those critical to serving a web page.  This fixes a bug, where
  -     error pages were going through the byterange filter, even though
  -     that made no sense.  [Ryan Bloom]
  -  *) Relax the syntax checking of Host: headers in order to support
  -     iDNS. PR#6635 [Tony Finch]
  -  *) Cleanup the byterange filter to use the apr_brigade_partition
  -     and apr_bucket_copy functions.  This removes a lot of very messy
  -     code, and hopefully makes this filter more stable.
  -     [Ryan Bloom]
  -  *) Remove AddModule and ClearModuleList directives.  Both of these
  -     directives were used to ensure that modules could be enabled
  -     in the correct order.  That requirement is now gone, because
  -     we use hooks to ensure that modules are in the correct order.
  -     [Ryan Bloom]
  -  *) When SuExec is specified, we need to add it to the list of
  -     targets to be built.  If we don't, then any changes to the
  -     configuration won't affect SuExec, unless 'make suexec' is
  -     specifically run.  [Ryan Bloom]
  -  *) Cleaned out open_file from mod_file_cache, as apr now accepts
  -     the APR_XTHREAD argument to open a file for consumption by
  -     parallel threads on win32.  [William Rowe]
  -  *) Correct a bug in determining when we follow symlinks.  The code
  -     expected a stat -1 result, not an apr_status_t positive error.
  -     Also check if the APR_FINFO_USER fields are valid before we
  -     follow the link.  [William Rowe]
  -  *) Move initgroupgs, ap_uname2id and ap_gname2id from util.c to
  -     mpm_common.c.  These functions are only valid on some platforms,
  -     so they should not be in the main-line code. [Ryan Bloom]
  -  *) Remove ap_chdir_file().  This function is not thread-safe,
  -     and nobody is currently using it.  [Ryan Bloom]
  -  *) Do not try to run make depend if there are no .c files in the
  -     current directory, doing so makes `make depend` fail.
  -     [Ryan Bloom]
  -   *) Update highperformance.conf to work with either prefork or
  -      pthreads mpms.  [Greg Ames]
  -  *) Stop checking to see if this is a pipelined request if we know
  -     for a fact that it isn't.  Basically, if r->connection->keepalive == 0.
  -     This keeps us from making an extra read call when serving a 1.0
  -     request.  [Ryan Bloom and Greg Stein]
  -  *) Fix the handling of variable expansion look-ahead in mod_rewrite,
  -     i.e. syntax like %{LA-U:REMOTE_USER}, and also fix the parsing of
  -     more complicated nested RewriteMap lookups. PR#7087 [Tony Finch]
  -  *) Fix the RFC number mentioned when complaining about a missing
  -     Host: header. PR#7079 [Alexey Toptygin <>]
  -  *) Fix an endless loop in ab which occurred when ab was posting
  -     and the server dropped the connection unexpectedly.
  -     [Jeff Trawick]
  -  *) Fix a segfault while handling request bodies in ap_http_filter().
  -     This problem has been seen with mod_dav usage as well as with
  -     requests where the body was just being discarded.  [Jeff Trawick]
  -  *) Some adjustment on the handling and automatic setting (via
  -     hints.m4) of various compilation flags (eg: CFLAGS). Also,
  -     add the capability to specify flags (NOTEST_CFLAGS and
  -     NOTEST_LDFLAGS) which are used to compile Apache, but
  -     not used during the configuration process. Useful for
  -     flags like "-Werror". [Jim Jagielski] 
  -  *) Stop using environment variables to force debug mode or
  -     no detach.  We now use the -D command line argument to
  -     specify the correct mode.  -DONE_PROCESS and -DNO_DETACH.
  -     [Greg Stein, Ryan Bloom]
  -  *) Change handlers to use hooks. [Ben Laurie]
  -  *) Stop returning copies of filenames from both apr_file_t and
  -     apr_dir_t.  We pstrdup the filenames that we store in the
  -     actual structures, so we don't need to pstrdup the strings again.
  -     [Ryan Bloom]
  -  *) mod_cgi: Fix some problems where the wrong error value was being
  -     traced.  [Jeff Trawick]
  -  *) EBCDIC: Fix some missing ASCII conversion on some protocol data.
  -     [Jeff Trawick]
  -  *) Add generic hooks. [Ben Laurie]
  -  *) Use a real pool to dup the error log descriptor.  [Ryan Bloom]
  -  *) Fix a segfault caused by mod_ext_filter when the external filter
  -     program does not exist. [Jeff Trawick]
  -  *) Fix an output truncation error when on an HTTP >= 1.0 request an
  -     object of size between DEFAULT_BUCKET_SIZE and AP_MIN_BYTES_TO_WRITE
  -     was served through mod_charset_lite (or anything else that would
  -     create a transient bucket in this size range).  ap_bucket_make_heap()
  -     silently failed (fixed), transient_setaside() discovered it, but
  -     ap_save_brigade() ignored it (fixed). [Jeff Trawick]
  -  *) Ignore \r\n or \n when using PEEK mode for input filters.  The problem
  -     is that some browsers send extra lines at the end of POST requests, and
  -     we don't want to delay sending data back to the user just because the
  -     browser isn't well behaved. [Ryan Bloom]
  -  *) Get SuEXEC working again.  We can't send absolute paths to suExec
  -     because it refuses to execute those programs.  SuEXEC also wasn't
  -     always recognizing configuration changes made using the autoconf
  -     setup.  [Ryan Bloom]
  -  *) Allow the buildconf process to find the config.m4 files in the correct
  -     order.  Basically, we can now name config.m4 files as config\d\d.m4,
  -     and we will sort them correctly when inserting them into the build
  -     process.  [Ryan Bloom]
  +Changes with Apache 2.0.15
  -  *) Get mod_cgid to use apr calls for creating the actual CGI process.
  -     This also allows mod_cgid to use ap_os_create_priviledged_process,
  -     thus allowing for SuExec execution from mod_cgid.  Currently, we do
  -     not support everything that standard SuExec supports, but at least
  -     it works minimally now. [Ryan Bloom]
  +  *) Untangled the buildconf script and eliminated the need for build's
  +     aclocal.m4, generated_lists,,, and a host of other
  +     libtool muck that is now under srclib/apr/build.  [Roy Fielding]
  -  *) Allow SuExec to be configured from the ./configure command line.
  -     [Ryan Bloom]
  +  *) Win32: Don't accept more connections than we have worker threads
  +     to handle.
  +     [Bill Stoddard]
  -  *) Update some of the docs in README and INSTALL to reflect some of
  -     the changes in Apache 2.0 [Cliff Woolley <>]
  +  *) Fix bug in the Unix threaded.c MPM that allowed child processes
  +     to fork() new child processes.
  +     [Bill Stoddard]
  -  *) If we get EAGAIN returned from the call to apr_sendfile, then we
  -     need to call sendfile again.  This gets us serving large files
  -     such as apache_2.0a9.tar.gz on FreeBSD again. [Ryan Bloom]
  +  *) Fix a major security problem with double-reverse lookup checking.
  +     Previously, a client connecting over IPv4 would not be matched
  +     properly when the server had an IPv6 listening socket.  PR #7407
  +     [Taketo Kabe <>]
  -  *) Get the support programs building cleanly again.
  -     [Cliff Woolley <>]
  +  *) Change the way the beos MPM handles polling to allow it to stop and
  +     restart.  Problem was the sockets being polled were being reset by
  +     the select call, so once it had accepted a connection it was no
  +     longer listening on the UDP socket we use for shutdown instructions.
  +     APR needs to be altered, patch on it's way. [David Reid]
  -  *) The Apache/Win32 Apache.exe and dll's now live in bin.  The
  -     current directory logic now backs up over bin/ to determine the
  -     server root from the Apache.exe path.
  +  *) Empty out the brigade shared by ap_getline()/ap_get_client_block()
  +     on error exit from ap_getline().  Some other code got upset because
  +     the wrong data was in the brigade.  [Greg Ames, Jeff Trawick]
  -  *) Apache/Win32 now follows the standard conventions of
  -     loadable modules, dynamic libs are all named libfoo.dll, and the
  - populates the include, lib and libexec directories.
  +  *) Handle ap_discard_request_body() being called more than once.
  +     [Greg Ames, Jeff Trawick]
  -  *) Apache is now IPv6-capable.  On systems where APR supports IPv6,
  -     Apache gets IPv6 listening sockets by default.  Additionally, the
  -     Listen, NameVirtualHost, and <VirtualHost> directives support IPv6
  -     numeric address strings (e.g., "Listen [fe80::1]:8080").
  -     [Jeff Trawick]
  +  *) Get rid of an inadvertent close of file descriptor 2 in
  +     mod_mime_magic.  [Greg Ames, Jeff Trawick]
  -  *) Modify the install directory layout.  Modules are now installed in
  -     modules/.  Shared libraries should be installed in libraries/, but
  -     we don't have any of those on Unix yet.  All install directories
  -     are modifyable at configure time. [Ryan Bloom]
  +  *) Add a hook, create_request.  This hook allows modules to modify
  +     a request while it is being created.  This hook is called for all
  +     request_rec's, main request, sub request, and internal redirect.
  +     When this hook is called, the the r->main, r->prev, r->next
  +     pointers have been set, so modules can determine what kind of
  +     request this is.  [Ryan Bloom]
  -  *) Install all header files in the same directory on Unix. [Ryan Bloom]
  +  *) Cleanup the build process a bit more.  The Apache configure
  +     script no longer creates its own helper scripts, it just
  +     uses APR's.
  +     [jean-frederic clere <>]
  -  *) Get the functions in server/linked into the server, regardless of
  -     which modules linked into the server.  This uses the same hack
  -     for Apache that we use for APR and apr-util to ensure all of the
  -     necessary functions are linked.  As a part of thise, the CHARSET_EBCDIC
  -     was renamed to AP_CHARSET_EBCDIC for namespace protection, and to make
  -     the scripts a bit easier.
  -     [Ryan Bloom]
  +  *) Stop the forced downgrade of the connection to HTTP/1.0 for
  +     proxy requests.  [Graham Leggett]
  -  *) Rework the RFC1413 handling to make it thread-safe, use a timeout
  -     on the query, and remove IPv4 dependencies.  [Jeff Trawick]
  +  *) Avoid using sscanf to determine the HTTP protocol number in
  +     the common case because sscanf is a performance hog. From
  +     Mike Abbot's Accelerating Apache patch number 6.
  +     [Mike Abbot <>, Bill Stoddard]
  -  *) Get all of the auth modules to the point that they will install and
  -     be loadable into the server.  Our new build/install mechanism expects
  -     that all modules will have a common name format.  The auth modules
  -     didn't use that format, so we didn't install them properly.
  -     [Ryan Bloom]
  +  *) Fix a security exposure in mod_access.  Previously when IPv6
  +     listening sockets were used, allow/deny-from-IPv4-address rules
  +     were not evaluated properly (PR #7407).  Also, add the ability to
  +     specify IPv6 address strings with optional prefix length on Allow
  +     and Deny.  [Jeff Trawick]
  -  *) API routines ap_pgethostbyname() and ap_pduphostent() are no longer
  -     available.  Use apr_getaddrinfo() instead.  [Jeff Trawick]
  +  *) Enhance rotatelogs so that a UTC offset can be specified, and
  +     the logfile name can be formatted using strftime(3).  (Brought
  +     forward from 1.3.)  [Ken Coar]
  -  *) Get "NameVirtualHost *" working in 2.0.  [Ryan Bloom]
  +  *) Reimplement the Windows MPM (mpm_winnt.c) to eliminate calling
  +     DuplicateHandle on an IOCompletionPort (a practice which
  +     MS "discourages"). The new model does not rely on associating
  +     the completion port with the listening sockets, thus the
  +     completion port can be completely managed within the child
  +     process.  A dedicated thread accepts connections off the network,
  +     then calls PostQueuedCompletionStatus() to wake up worker
  +     threads blocked on the completion port.
  +     [Bill Stoddard]
  -  *) Return HTTP_RANGE_NOT_SATISFIABLE if the every range requested starts
  -     after the end of the response. [Ryan Bloom]
  +  *) Bring forward the --suexec-umask option which allows the
  +     builder to preset the umask for suexec processes.  [Ken Coar]
  -  *) Get byterange requests working with responses that do not have a
  -     content-length.  Because of the way byterange requests work, we have to
  -     have all of the data before we can actually do the byterange, so we
  -     can compute the content-length in the byterange filter.
  -     [Ryan Bloom]
  +  *) Add a -V flag to suexec, which causes it to display the
  +     compile-time settings with which it was built.  (Only
  +     usable by root or the AP_HTTPD_USER username.)  [Ken Coar]
  -  *) Get exe CGI's working again on Windows.
  -     [Allan Edwards]
  +  *) Mod_include should always unset the content-length if the file is
  +     going to be passed through send_parsed_content.  There is no to
  +     determine if the content will change before actually scanning the
  +     entire content.  It is far safer to just remove the C-L as long
  +     as we are scanning it.  [Ryan Bloom]
  -  *) Get mod_cgid and mod_rewrite to work as DSOs by changing the way
  -     they keep track of whether or not their  post config hook has been
  -     called before.  Instead of a static variable (which is replaced when
  -     the DSO is loaded a second time), use userdata in the process pool.
  -     [Jeff Trawick]
  +  *) Make sure Apache sends WWW-Authenticate during a reverse proxy
  +     request and not Proxy-Authenticate.
  +     [Graham Leggett <>]

View raw message