]> granicus.if.org Git - apache/blobdiff - CHANGES
Namespace protect IOBUFSIZ since it is a public symbol.
[apache] / CHANGES
diff --git a/CHANGES b/CHANGES
index 0b8f555366c3bfa4910c55461cdee7b6bc2368fd..003d6547a4c03689217d4793d75b6406fca67393 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,4 +1,311 @@
-Changes with Apache 2.0b1
+Changes with Apache 2.0.12-dev
+
+  *) Namespace protect IOBUFSIZ since it is exposed in the API.
+     [Jon Travis <jtravis@covalent.net>]
+
+  *) Use "Basic" authentication instead of "basic" in ab, as the spec
+     says we should.  [Andre Breiler <andre.breiler@rd.bbc.co.uk>]
+
+  *) 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 <kabe@sra-tohoku.co.jp> and 
+      Cliff Woolley <cliffwoolley@yahoo.com>]
+
+  *) Add a couple of GCC attribute tags to printf style functions.
+     [Jon Travis <jtravis@covalent.net>]
+
+  *) 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 <kabe@sra-tohoku.co.jp>]
+
+  *) 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 <rmorgan@covalent.net>]
+
+  *) 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
+
+  *) 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 <new-httpd@slib.fr>]
+
+  *) 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 <cliffwoolley@yahoo.com>]
+  *) 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 <rederpj@raleigh.ibm.com>]
+
+  *) 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 <tanaka@apache.or.jp>] 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 <dduvall@eng.sun.com>]
+
+  *) 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 <alexeyt@wam.umd.edu>]
+
+  *) 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