Newer
Older
Changes with Apache 2.0.19-dev
*) Automatically generate httpd.exp for AIX.
[Victor J. Orlikowski]
*) Add a new request hook, error_log. This phase allows modules
to act on the error log string _after_ it has been written
to the error log. The goal for this hook is to allow monitoring
modules to send the error string to the monitoring agent.
[Ryan Bloom]
*) Modify mod_echo to make it use filters for input and output.
[Ryan Morgan <rmorgan@covalent.net>]
*) Extend mod_headers to support conditional driven Header
add, append and set. Use SetEnvIf to set an envar and conditionally
add/append/set headers based on this envar thusly:
SetEnvIf TSMyHeader value HAVE_TSMyHeader
Header add MyHeader "%t %D" env=HAVE_TSMyHeader
If the request contains header "TSMyHeader: value" then header
MyHeader: "t=xxxxxxxxxx D=yyyy" will be sent on the response.
[Bill Stoddard]
*) Extend mod_headers to support using format specifiers on Header
add, append and set header values. Two format specifiers are supported:
%t - reports, in UTC microseconds since the epoch, when the
request was received.
%D - reports the time, in microseconds, between when the request was
received and the response sent.
Examples:
Header add MyHeader "This request served in %D microseconds. %t"
results in a header being added to the response that looks like this:
MyHeader: This request served in D=5438 microseconds. t=991424704447256
[Bill Stoddard]
*) Fix reset_filter(). We need to be careful how we remove filters.
If we set r->output_filters to NULL, we also have to reset the
connection's filters. [John Sterling]
*) Optimise reset_filter() in http_protocol.c. [Greg Stein]
*) Add a check to ap_die() to make sure the filter stack is sane and
contains the correct basic filters when an error occurs. This fixes
a problem where headers are not being sent on error. [John Sterling]
*) New Header directive 'echo' option. "Header echo regex" will
cause any headers received on the request that match regex to be
echoed to (included in) the response headers.
[Bill Stoddard]
*) include/ap_compat.h tested and set APR_COMPAT_H instead of AP_COMPAT_H.
This prevented the inclusion of apr_compat.h. PR #7773
[Oleg Broytmann <phd@phd.pp.ru>]
*) Moved util_uri to the apr-util library. This required a bunch of
apr_name changes for the uri utility functions. [Justin Erenkrantz]
*) Move the addition of default AP_HTTP_HTTP_HEADER filters to the
insert_filter phase so that other filters are not bypassed by default.
[Graham Leggett]
*) Reimplement mod_headers as an output filter. mod_headers can now
add custom headers to inbound requests using the RequestHeader directive
and to responses using the same old Header directive. [Graham Leggett]
Changes with Apache 2.0.18
*) Fix command-line processing so that if a bad argument is specified
Apache will exit. [Jeff Trawick]
*) Change the make targets and rules to be consistent in all of the
Apache-owned source trees. [Roy Fielding]
*) Fix processing of the TRACE method. Previously we passed bogus
parms to form_header_field() and it overlaid some vhost structures,
resulting in a segfault in check_hostalias().
[Greg Ames, Jeff Trawick]
*) Win32: Add support for reliable piped logs. If the logging process
goes down, Apache will automatically restart it. This function has
been part of Apache on Unix/Linux/BSD since the early v1.3 releases.
[Bill Stoddard]
*) Do not start piped log processes during the config file
preflight. This change also circumvents a problem on
Windows where the rotatelog processes created during preflight
was not getting cleaned up properly.
[Bill Stoddard]
*) add "Request Phase Participation" info to mod_info
[Doug MacEachern]
*) Make first phase changes to the scoreboard data structures in
preparation for the rewriting of the scoreboard per my posted
design notes. [Paul J. Reder]
*) Fix httpd's definition of LTFLAGS to be consistent with that of apr
and apr-util, allow it to be overridden by the configure command-line
(default="--silent") and introduce LT_LDFLAGS to replace what we were
formerly abusing as LTFLAGS. [Roy Fielding]
*) Clean up the reporting of incorrect closing container tags.
[Barrie Slaymaker <barries@slaysys.com>]
*) Simplify the configure process by moving all libtool stuff to APR
and moving hints.m4 inline. [Roy Fielding]
*) Add the AP_DECLARE()/AP_CORE_DECLARE macros on the return types
of functions used by mod_proxy for export in the DLL
[Ian Holsman <IanH@cnet.com>]
*) Prevent a hang when a cgi handled by mod_cgid tries to read a
request body from its stdin but no reqest body is being written to
the cgi. [Jeff Trawick]
*) mod_log_config: %c connection status incorrectly logged
as "-" (non-keepalive) when MaxKeepAliveRequests is set to 0.
[Bill Stoddard]
*) Get mod_cern_meta working under Windows
[Bill Stoddard]
*) Create Files, and thus MMAPs, out of the request pool, not the
connection pool. This solves a small resource leak that had us
not closing files until a connection was closed. In order to do
this, at the end of the core_output_filter, we loop through the
brigade and convert any data we have into a single HEAP bucket
that we know will survive clearing the request_rec.
[Ryan Bloom, Justin Erenkrantz <jerenkrantz@ebuilt.com>,
Cliff Woolley]
*) Completely revamp configure so that it preserves the standard make
variables CPPFLAGS, CFLAGS, CXXFLAGS, LDFLAGS and LIBS by moving
the configure additions to EXTRA_* variables. Also, allow the user
to specify NOTEST_* values for all of the above, which eliminates the
need for THREAD_CPPFLAGS, THREAD_CFLAGS, and OPTIM. Fix the setting
of INCLUDES and EXTRA_INCLUDES. Check flags as they are added to
avoid pointless duplications. Fix the order in which flags are given
on the compile and link lines. Remove obsolete macros APR_DOEXTRA,
AC_ADD_LIBRARY, AC_CHECK_DEFINE, APACHE_PASSTHRU, and APACHE_ONCE.
Added APR_SAVE_THE_ENVIRONMENT and APR_RESTORE_THE_ENVIRONMENT macros.
Renamed AC_TYPE_RLIM_T macro to APACHE_TYPE_RLIM_T. [Roy Fielding]
*) Get mod_tls to compile/work better on Windows. PR #7612
[Bernhard Schrenk <b.schrenk@improx.com>]
*) Fix shutdown/restart hangs in the threaded MPM.
[Jeff Trawick, Greg Ames, Ryan Bloom]
*) 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]
*) 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
Loading full blame...