Skip to content
CHANGES 420 KiB
Newer Older
Paul J. Reder's avatar
 
Paul J. Reder committed

  *) Removed the keptalive boolean from conn_rec because it is now only
     used by a single routine and can be replaced by a local variable.
     [Greg Stein, Ryan Bloom, Roy Fielding]

Paul J. Reder's avatar
 
Paul J. Reder committed
  *) Patch prefork to put enough of the signal processing back in so that
     signals are all handled properly now. The previous patch fixed the
     deadlock race condition, but broke the user directed signal handling.
     This fixes it to work the way it did before my previous prefork patch
     (primarily, SIGTERM is now working).
  *) Change how input filters decide how much data is returned to the
     higher filter.  We used to use a field in the conn_rec, with this
     change, we use an argument to ap_get_brigade to determine how much
     data is retrieved. [Ryan Bloom]

  *) Fix seg fault at start-up introduced by Ryan's change to enable
     modules to specify their own logging tags. mod_log_config
     registers an optional function, ap_register_log_handler().
     ap_register_log_handler() was being called by http_core before
     the directive hash table was created. This patch creates the
     directive hash table before ap_register_log_handler() is
     registered as an optional function.
     [jean-frederic clere <jfrederic.clere@fujitsu-siemens.com>]
  *) Add ap_set_int_slot() function
     [John K. Sterling <sterling@covalent.net>]

  *) Under certain circumstances, Apache did not supply the
     right response headers when requiring authentication.
     [Gertjan van Wingerde <Gertjan.van.Wingerde@cmg.nl>] PR#7114
     (This is a port of the change that went into Apache 1.3.19.)

  *) Allow modules to specify their own logging tags.  This basically
     allows a module to tell mod_log_config that when %x is encountered
     a specific function should be called.  Currently, x can be any single
     character.  It may be more useful to make this a string at some point.
     [Ryan Bloom]

Changes with Apache 2.0.17
  *) If a higher-level filter handles the the byterange aspects of a
     request, then the byterange filter should not try to redo the
     work.  The most common case of this happening, is a byterange
     request going through the proxy, and the origin server handles
     the byterange request.  The proxy should ignore it.
     [Graham Leggett <minfrin@sharp.fm>]

  *) Changed the threaded mpm to have child_main join to each of the
     worker threads to make sure the kids are all gone before child_main
     exits after a signal (cleanup from perform_idle_server_maintenance).
     This is an extension of Ryans recent commit to make the child_main
     the signal thread.

Ryan Bloom's avatar
Ryan Bloom committed
  *) Add more options to the ap_mpm_query function.  This also allows MPMs to
     report if their threads are dynamic or static.  Finally, this also
     implements a new API, ap_show_mpm, which returns the MPM that was
     required into the core. [Harrie Hazewinkel <harrie@covalent.net>]

  *) Do not install the binaries from the support directory twice.
     [jun-ichiro hagino <itojun@iijlab.net>]

  *) The ap_f* functions should flush data to the filter that is passed
     in, not the the filter after the one passed in.
     [Ryan Morgan <rmorgan@covalent.net>]

  *) Make ab work again by changing its native types to apr types and formats.
     [Justin Erenkrantz <jerenkrantz@ebuilt.com>]

  *) Move the byterange filter and all of the supporting functions back
     to the HTTP module.  The byterange filter turned out to be very
     HTTP specific, and it belongs in the HTTP module.  [Greg Stein]

  *) Make clean, distclean, and extraclean consistently according to the
     Gnu makefile guidelines.  [Justin Erenkrantz <jerenkrantz@ebuilt.com>]

  *) Fix errors in the renaming of the apr_threadattr_detach_xxx functions.
     This may have been causing problems stopping processes in the threaded
     mpm's. [Greg Ames]

William A. Rowe Jr's avatar
 
William A. Rowe Jr committed
  *) Fix content-length in mod_negotiation to a long int representation.
     [William Rowe]

  *) Remove BindAddress from the default config file.
     [giles@nemeton.com.au]

  *) Allow module authors to add a module to their Apache build using
     --with-module, without re-running buildconf.  The syntax is:
	--with-module=module_type:/path/to/module.c
     The configure script will copy the module.c file to 
     modules/module_type, and it will be added to the relevant Makefiles.
     currently, this only works for static modules.  [Ryan Bloom]

  *) Changes required to make prefork clean up idle children properly.
     There was a window during which a starting worker deadlocks when
     an idle cleanup arrives before it completes init. Apache then keeps
     trying to cleanup the same deadlocked worker forever (until higher
     pids come along, but it still will never reduce below the deadlocked
     pid). Thus the number of children would not reduce to the correct
     idle level. [Paul J. Reder]

Changes with Apache 2.0.16

  *) Change the default installation directory to /usr/local/apache2,
     as now defined by the "Apache" layout in config.layout. [Marc Slemko]

  *) OS/2: Added support for building loadable modules as OS/2 DLLs. 
     [Brian Havard]

  *) Get MaxRequestsPerChild working with the Windows MPM.
     [Bill Stoddard]
William A. Rowe Jr's avatar
 
William A. Rowe Jr committed
  *) Make generic hooks to work, with mod_generic_hook_import/export
     experimental modules.  [Ben Laurie, Will Rowe]

  *) Fix segfaults for configuration file syntax errors such as
     "<Directory>" followed by "</Directory" and
     "<Directory>" followed by "</Directoryz>".  [Jeff Trawick]

  *) Cleanup the --enable-layout option of configure.  This makes
     us use a consistent location for the config.layout file, and it
     makes configure more portable.
     [jun-ichiro hagino <itojun@iijlab.net>]

  *) Changes to 'ab'; fixed int overrun's, added statistics, output in
     csv/gnuplot format, rudimentary ssl support and various other tweaks
     to make results more true to what is measured. The upshot of this it
     turns out that 'ab' has often underreported the true performance of
     apache. Often by a order of magnitude :-) See talk/paper of Sander 
     Temme <sctemme@covalent.net> at April ApacheCon 2001 for details.
     [Dirk-Willem van Gulik]

  *) Clean up mod_cgid's temporary request pool.  Besides fixing a
     storage leak this ensures that some unnecessary pipes are closed.
     [Jeff Trawick]

  *) Performance: Add quick_handler hook. This hook is called at the
     very beginning of the request processing before location_walk,
     translate_name, etc.  This hook is useful for URI keyed content
     caches like Mike Abbott's Quick Shortcut Cache.
     [Bill Stoddard]
  *) top_module global variable renamed to ap_top_module [Perl]

  *) Move ap_set_last_modified to the core.  This is a potentially 
     controversial change, because this is kind of HTTP specific.  However
     many protocols should be able to take advantage of this kind of
     information.  I expect that headers will need one more layer of
     indirection for multi-protocol work, but this is a small step in
     the right direction.  [Ryan Bloom]

  *) Enable mod_status by default.  This matches what Apache 1.3 does.
     [Ed Korthof]

  *) Add a ScriptSock directive to the default config file.  This is
     only enabled when mod_cgid is used.  
     [Taketo Kabe <kabe@sra-tohoku.co.jp>]

Ryan Bloom's avatar
Ryan Bloom committed
Changes with Apache 2.0.15

  *) Untangled the buildconf script and eliminated the need for build's
     aclocal.m4, generated_lists, build.mk, build2.mk, and a host of other
     libtool muck that is now under srclib/apr/build.  [Roy Fielding]

  *) Win32: Don't accept more connections than we have worker threads
     to handle.
     [Bill Stoddard]

  *) Fix bug in the Unix threaded.c MPM that allowed child processes
     to fork() new child processes. 
     [Bill Stoddard]
  *) 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 <kiabe@sra-tohoku.co.jp>]

  *) 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]

  *) 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]

  *) Handle ap_discard_request_body() being called more than once.
     [Greg Ames, Jeff Trawick]

  *) Get rid of an inadvertent close of file descriptor 2 in
     mod_mime_magic.  [Greg Ames, Jeff Trawick]

  *) 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]
Loading full blame...