You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apr.apache.org by pq...@apache.org on 2009/10/03 21:28:14 UTC

svn commit: r15 [2/6] - in /release/apr: ./ binaries/ binaries/netware/ binaries/pkg/ binaries/pkg/sparc8/ binaries/rpm/ binaries/rpm/SRPMS/ binaries/rpm/i386/ binaries/rpm/ppc/ binaries/rpm/x86_64/ binaries/win32/ patches/

Added: release/apr/CHANGES-APR-0.9
==============================================================================
--- release/apr/CHANGES-APR-0.9 (added)
+++ release/apr/CHANGES-APR-0.9 Sat Oct  3 15:28:09 2009
@@ -0,0 +1,1900 @@
+                                                     -*- coding: utf-8 -*-
+Changes with APR 0.9.18
+
+  *) z/OS: return standard apr_status_t codes from apr_dso_load()
+     and apr_dso_sym().  [David Jones <oscaremma gmail.com>]
+
+  *) Fix apr_tokenize_to_argv parsing.  PR 46128
+     [Edward Rudd <eddie omegaware.com>]
+
+Changes with APR 0.9.17
+
+  *) Fix DSO-related crash on z/OS caused by incorrect memory
+     allocation.  [David Jones <oscaremma gmail.com>]
+
+  *) Define apr_ino_t in such a way that it doesn't change definition
+     based on the library consumer's -D'efines to the filesystem.
+     [Lucian Adrian Grijincu <lucian.grijincu gmail.com>]
+
+  *) Cause apr_file_dup2() on Win32 to update the MSVCRT psuedo-stdio
+     handles for fd-based and FILE * based I/O.  [William Rowe]
+
+  *) Revert Win32 to the 0.9.14 behavior of apr_proc_create() for any 
+     of the three stdio streams which are not initialized, through either
+     apr_procattr_io_set() or apr_procattr_child_XXX_set(), when given a
+     procattr_t with one or two streams which were initialized through
+     apr_procattr_child_XXX_set().  Once again, these do not inherit the 
+     parent process stdio stream to WIN32 child processes (passing 
+     INVALID_HANDLE_VALUE instead) as on Unix.  Note APR 1.3.0 adopts 
+     the Unix behavior of inheriting any uninitialized streams as the 
+     parent's corresponding stdio stream, in such cases.  [William Rowe]
+
+Changes with APR 0.9.16
+
+  *) Win32 apr_file_read: Correctly handle completion-based read-to-EOF.
+     [Steven Naim <steven.naim googlemail.com>]
+
+  *) Fixed Win32 regression of StdOutput inheritance in apr_proc_create.
+     [William Rowe]
+
+Changes with APR 0.9.15
+
+  *) Solve WinNT inherited pipe leaks by mutexing apr_proc_create calls,
+     on WinNT (not WinCE, nor 9x) so that we toggle the inherited state 
+     of the stdin/out/err pipes.  All other file handles are treated as
+     not-inherited until apr_file_dup2'ed a std handle of this process, 
+     or while they are used by apr_proc_create.  [William Rowe]
+
+  *) Define the Mac OS/X filesystem_encoding as utf-8 (in previous
+     releases the interpretation would vary).  [Branko Čibej]
+
+  *) Fix day of year (tm_day) calculation for July. The bug only affects
+     Windows builds.  PR 42953.  [Davi Arnaut]
+
+Changes with APR 0.9.14
+
+  *) Register a cleanup only if APR_FILE_NOCLEANUP was not flagged in
+     apr_file_mktemp. [Brian J. France <list firehawksystems.com>]
+
+  *) Numerous build fixes for non-GCC builds and GCC builds on Win32,
+     as well as WinCE builds.  [Davi Arnaut <davi haxent.com.br>,
+     Curt Arnold <carnold apache.org>, John Mark Vandenberg, 
+     Kouhei Sutou <kou cozmixng.org>, William Rowe]
+
+  *) Discard file buffers when running cleanups for exec.
+     PR 41119.  [Davi Arnaut <davi haxent.com.br>, Bojan Smojver]
+
+  *) Improve thread safety of assorted file_io functions.
+     PR 42400.  [Davi Arnaut <davi haxent.com.br>]
+
+  *) Fix file pointer position calculation in apr_file_writev() on
+     buffered file.  PR 40963.  [Davi Arnaut <davi haxent.com.br>]
+
+Changes with APR 0.9.13
+
+  *) Fix detection of pthread cross-process robust mutexes.
+     PR 39833.  [Tsuyoshi SASAMOTO <nazonazo miobox.jp>]
+
+  *) Correctly retrieve 'empty' environment values with apr_env_get
+     on Win32 (e.g. "VAR="), and added validation to testall suite.  
+     PR 40764.  [Issac Goldstand <margol beamartyr.net>]
+
+  *) Portably check for EEXIST in mktemp code.  PR 40818
+     [Kenneth Golomb <KGolomb TradeCard.com>]
+
+  *) Fix apr_atomic_cas on platforms with 64 bit longs.
+     [Philip Martin <philip codematters.co.uk>]
+
+  *) Provide folding in autogenerated .manifest files for Win32 builders
+     using VisualStudio 2005  [William Rowe]
+
+Changes with APR 0.9.12
+
+  *) Netware - add missing apu_version.c parsing for apu_version_string()
+     to the Netware specific builds.  Unix platforms supporte this API 
+     since 0.9.1.  [Brad Nicholes]
+
+Changes with APR 0.9.11
+
+  *) Synced get-version.sh to trunk to correctly retrieve 2 digit subversion,
+     which broke the 0.9.10 candidate.  [William Rowe]
+
+  *) Fixed 'make check' target to avoid invoking sub-programs of testshm,
+     testshmconsumer and testshmproducer.  [William Rowe]
+
+  *) Permit Win32 to seek to the point 2^32-1, by checking that result
+     against the actual error and continuing on success.  [William Rowe]
+
+Changes with APR 0.9.10
+
+  *) Minor bug fixes to address various platform build and run time issues.
+
+  *) Permit 'make check' binaries to run on Darwin by omitting -no-install
+     flag [William Rowe, Joe Orton]
+
+Changes with APR 0.9.9
+
+  *) Prevent detection of robust mutex support with glibc 2.4,
+     fixing APR_LOCK_PROC_PTHREAD locks.  PR 38442.  [Joe Orton]
+
+  *) Fix apr_strerror() with glibc 2.4.  [Joe Orton]
+
+  *) Install mkdir.sh, make_exports.awk, make_var_export.awk to the APR
+     installbuilddir, and provide working accessor variables in
+     apr_rules.mk.
+     [Max Bowsher]
+
+  *) Fix seeks with files opened in xthread mode for append on win32.
+     [M Joonas Pihlaja <jpihlaja cc.helsinki.fi>, Garrett Rooney]
+
+  *) Keep testpipe.c from hanging on win32. [Garrett Rooney]
+
+  *) Cause apr_file_write_full on win32 to consider the timeout value set by 
+     apr_file_pipe_timeout_set.  PR 30182
+     [<eholyat olf.com>]
+
+  *) Fix assertion from double close of a handle with a rwlock on win32.
+     [Evgueni Brevnov <evgueni.brevnov gmail.com>]
+
+  *) Fix EOF handling for unbuffered reads on win32.
+     [Konstantin Sharenkov <Konstantin.Sharenkov enterra-inc.com>]
+
+  *) Documented that apr_stat and apr_dir_read can return APR_INCOMPLETE,
+     and how to determine which parts of the resulting apr_finfo_t can be
+     used in such a case.
+     [Garrett Rooney]
+
+  *) Fix passing "" as an argument to the program started by apr_proc_create
+     on Win32.
+     [Philip Martin <philip codematters.co.uk>
+
+  *) Fix warning when compiling on FreeBSD by correcting the type of
+     the final argument passed to sysctlbyname. [Garrett Rooney]
+
+Changes with APR 0.9.7
+
+  *) Fix crash in apr_dir_make_recursive() for relative path
+     when the working directory has been deleted.  [Joe Orton]
+
+  *) Win32: fix apr_proc_mutex_trylock() to handle WAIT_TIMEOUT,
+     returning APR_EBUSY.  [Ronen Mizrahi <ro...@tversity.com>]
+
+  *) Fix apr_file_read() to catch write failures when flushing pending
+     writes for a buffered file.  [Joe Orton]
+
+  *) Fix apr_file_write() infinite loop on write failure for buffered
+     files.  [Erik Huelsmann <ehuels gmail.com>]
+
+  *) Fix error handling where apr_uid_* and apr_gid_* could segfault
+     or return APR_SUCCESS in failure cases.  PR 34053.  [Joe Orton,
+     Paul Querna]
+
+  *) Refactor Win32 condition variables code to address bugs 27654, 34336.
+     [Henry Jen <henryjen ztune.net>, E Holyat <eholyat yahoo.com>]
+
+  *) Support APR_SO_SNDBUF and APR_SO_RCVBUF on Windows.  PR 32177.
+     [Sim <sgobbi datamanagement.it>, Jeff Trawick]
+
+  *) Fix detection of rwlocks on Mac OS X. [Aaron Bannert]
+
+  *) Fix issue with poll() followed by net I/O yielding EAGAIN on
+     Mac OS 10.4 (Darwin 8). [Wilfredo Sanchez]
+
+Changes with APR 0.9.6
+
+  *) Add apr_threadattr_stacksize_set() for overriding the default
+     stack size for threads created by apr_thread_create().
+     [Jeff Trawick]
+
+  *) Add an RPM spec file. [Graham Leggett]
+
+  *) Add a build script to create a solaris package. [Graham Leggett]
+
+Changes with APR 0.9.5
+
+  *) Prevent unbounded memory use during repeated operations on a hash table.
+     [Julian Foad <julianfoad btopenworld.com>
+
+  *) fix apr_file_dup and apr_file_dup2 win32 implementations
+     to create a mutex [Steve Hay <steve.hay uk.radan.com>]
+
+  *) Makes the threads to behave like on posix. If the thread is created
+     without APR_DETACH expect that the thread_join will be called, so don't
+     close the handle in advance, if the thread has already finished.
+     [Mladen Turk]
+ 
+   *) The apr/test/Makefile.win is missing a target to build a
+     readchild.exe that test is depending on but is never built.
+     [Mladen Turk]
+ 
+  *) Fix build issues in paths containing symlinks.  PR 8867.
+     [Joe Orton]
+
+  *) Update config.{guess,sub} for DragonFly BSD.  PR 29858.
+     [Joe Orton]
+
+  *) Win32: Fix bug in apr_socket_sendfile that interferred with
+     Win32 LSPs. Bug is described in Apache 2.0 bugzilla report 
+     23982 [Jan Bilek, Bill Stoddard]
+
+  *) apr_proc_create() on Unix: Remove unnecessary check for read 
+     access to the working directory of the child process.
+     PR 30137.  [Jeremy Chadwick <apache jdc.parodius.com>]
+
+  *) Win32: Fix bug tracking the file pointer on a file opened for 
+     overlapped/APR_XTHREAD io. [Bill Stoddard]
+
+  *) Fix FreeBSD atomics.  [Paul Querna <chip force-elite.com>]
+
+  *) Fix apr_snprintf() to respect precision for small floating point
+     numbers.  PR 29621.  [Artur Zaprzala <zybi talex.pl>]
+
+  *) Add command type APR_SHELLCMD_ENV for creating a process
+     which is started by the shell and which inherits the parent's
+     environment variables.  [Jeff Trawick]
+
+  *) Change default inter-process locking mechanisms: POSIX semaphores
+     and pthread cross-process mutexes are not used by default; on 
+     Solaris, fcntl locks are used by default.  [Joe Orton]
+
+  *) Don't try to enable run-time linking on AIX < 4.2, as this
+     results in invalid linker options being used.  PR 29170.  
+     [Jeff Trawick]
+
+  *) Remove apr_file_copy()'s 2Gb file size limit on some platforms.
+     [Joe Orton]
+
+  *) Don't assume getnameinfo() can handle IPv4-mapped IPv6 addresses
+     on any platforms.
+     [Jeff Trawick, Joe Orton, Colm MacCárthaigh <colm stdlib.net>]
+
+  *) Support setuid, setgid and sticky file permissions bits on Unix.
+     [André Malo]
+
+  *) Fix sign error in apr_file_seek(APR_END).
+     [Greg Hudson <ghudson MIT.EDU>]
+
+  *) Provide workaround for socklen_t declaration problem with 64-bit
+     build on HP-UX.  Stop setting a PA-RISC-specific compile option
+     on ia64.  Look for -mt thread option, which is used with HP-UX
+     vendor compiler on ia64.  [Jeff Trawick, based on idea from
+     Madhusudan Mathihalli]
+
+  *) Return an error instead of silently failing when apr_poll() is
+     used with file descriptors >= FD_SETSIZE.  (Unix systems with
+     no native poll())  [Jeff Trawick, Brad Nicholes]
+
+  *) Fix handling of negative numbers in apr_strtoi64() on platforms
+     without strtoll.  [Joe Orton]
+
+  *) Fix printing apr_int64_t values smaller than LONG_MIN on 32-bit
+     platforms in apr_vformatter.  [Joe Orton]
+
+  *) Fix apr_socket_opt_set with APR_IPV6_V6ONLY flag.  Fixes httpd
+     Listen IPv6 socket behavior on FreeBSD 5.x, OpenBSD, NetBSD.
+     [Justin Erenkrantz]
+
+  *) Fix apr_time_exp_get() for dates in 2038.  
+     [Philip Martin <philip codematters.co.uk>]
+
+  *) Add APR_LARGEFILE flag to allow opening files with the
+     O_LARGEFILE flag; not recommended for general use, see
+     include/apr_file_io.h.  [Joe Orton]
+
+  *) Various build fixes: thread_rwlock.c on some Solaris platforms
+     (PR 22990); filestat.c on ReliantUnix (PR 22990); config.status
+     on IRIX (PR 19251).  [Various]
+
+  *) Use NI_NAMEREQD instead of NI_NUMERICHOST in
+     APR_CHECK_GETNAMEINFO_IPV4_MAPPED.  PR 24469.  [Justin Erenkrantz]
+
+  *) Ensure that apr_sockaddr_info_get() does not return anything
+     other than AF_INET and AF_INET6 addresses.  [Joe Orton]
+
+  *) Clarify that apr_dir_read() does not guarantee order of returned
+     entries as previously claimed.  [Joe Orton]
+
+  *) The whole codebase was relicensed and is now available under
+     the Apache License, Version 2.0 (http://www.apache.org/licenses).
+     [Apache Software Foundation]
+
+  *) Define apr_off_t as long rather than as off_t on platforms with a
+     32-bit off_t to prevent incompatibility with packages such as
+     Perl which redefine the size of off_t via _FILE_OFFSET_BITS on
+     some platforms.  [Ben Reser <ben reser.org>]
+
+  *) apr_socket_connect(): allow app to make subsequent call on 
+     non-blocking socket.  [Jeff Trawick]
+ 
+  *) Add apr_os_pipe_put_ex(), which allows the caller to tell APR
+     to establish a cleanup on the pipe.  [Jeff Trawick, Brad Nicholes]
+
+  *) Fix make_exports.awk to work with apr-iconv.  [Justin Erenkrantz]
+
+Changes with APR 0.9.4
+
+  *) win32: fix apr_file_dup() and apr_file_dup2() to dup the
+     ungetchar member [Stas Bekman]
+
+  *) Preserve leading '../' segments as when merging to an empty and
+     unrooted path - fixes a bug observed in SVN with Win32/Netware/OS2.
+     [Mike Pilato <cm...@collab.net>, William Rowe]
+
+  *) Work around a bug in Darwin when calling getnameinfo() on IPv4-mapped
+     IPv6-addresses.  [Colm MacCárthaigh <co...@stdlib.net>, Jeff Trawick,
+     Justin Erenkrantz]
+
+  *) Add apr_temp_dir_get() for getting the most suitable temp directory
+     [Mike Pilato <cm...@collab.net>, Thom May]
+
+  *) Modify apr_sockaddr_info_get to call the resolver when we
+     do not have a hostname.  Also, fix bugs in the getaddrinfo()
+     implementation.
+     [Colm MacCárthaigh <co...@stdlib.net>, Justin Erenkrantz]
+
+  *) Change the behavior of unix process 'trylock's to return
+     APR_ENOTIMPL instead of segfaulting, consistent with the
+     other lock implementations.  [William Rowe]
+
+  *) Fix a subtle race where the ownership of a unix nested
+     thread lock could be corrupted when the prior owner released
+     the lock with another thread waiting on the same lock.
+     [William Rowe]
+
+  *) apr_socket_data_set(): allow the same key to be used for
+     multiple sockets in the same pool.  [Jeff Trawick]
+
+  *) Add new table function apr_table_compress() and replace
+     red-black trees with mergesort in apr_table_overlap()
+     [Joe Schaefer <jo...@sunstarsys.com>, Brian Pane]
+
+  *) Win32: Adopt Brian Havard's OS/2 rwlock implementation for
+     Windows [Marc Adkins, Bill Stoddard]
+
+  *) Add apr_proc_mutex_lockfile() for retrieving the name of the
+     file associated with a mutex.  [Jeff Trawick]
+
+  *) Don't require the lock file name to be passed into 
+     apr_proc_mutex_child_init() or apr_global_mutex_child_init().
+     This allows child init to work when the lock file was a temp
+     file created by APR.  (The problem only occurred with flock-
+     based mutexes.)  [Jeff Trawick]
+
+  *) When using a temporary file for flock- and fcntl-based mutexes, 
+     don't let the file be deleted on close.  For flock-based mutexes,
+     this corrects a fatal problem, since the file would disappear 
+     when a program was spawned and cleanup-for-exec was performed, 
+     and a subsequent attempt to perform child process mutex 
+     initialization would fail.  For fcntl-based mutexes, this was a 
+     very minor issue that resulted in a failing unlink() when the 
+     file was closed, since fcntl lock initialization always removes 
+     the file immediately.  [Jeff Trawick]
+
+  *) When writing to pipes with a timeout set, handle the situation
+     where the kernel says the pipe is writable but an attempt to
+     write <= PIPE_BUF bytes gets EAGAIN.  APR will now write whatever
+     data will fit.  APR applications that relied on the atomic nature
+     of relatively small pipe write requests may be affected.
+     PR 20295  [Mark Street <ma...@faime.demon.co.uk>, Jeff Trawick]
+
+  *) Define _THREAD_SAFE for all compilations on AIX.  Previously
+     those of us who used the vendor compiler had it defined
+     implicitly and others did not.  The difference became obvious
+     with the recent thread safety fixes to apr_password_validate().
+     PR 20420  [Jeff Trawick]
+
+  *) For apr_proc_detach(APR_PROC_DETACH_FOREGROUND), don't treat
+     a setsid() failure as fatal, as the usual cause is that the
+     caller is already a process group leader.  PR 18519
+     [Jeff Trawick]
+
+  *) Fix some problems with non-blocking socket handling on unix
+     that resulted in infinite timeouts being used for non-blocking
+     sockets with apr_socket_connect() and some read/write calls.
+     [Jeff Trawick]
+
+  *) Fix a bug in socket timeout handling on unix that left the
+     socket non-blocking after disabling the timeout.
+     [Jacob Craig Lewallen <jl...@cs.ucr.edu>]
+
+  *) Added flag APR_FILE_ATTR_HIDDEN for manipulating the "hidden"
+     file attribute on Windows and OS/2.  [Branko Čibej]
+
+  *) SECURITY [CAN-2003-0245]: Fixed a bug that could be triggered
+     remotely through mod_dav and possibly other mechanisms, causing
+     an Apache child process to crash.  The crash was first reported
+     by David Endler <DE...@iDefense.com> and was researched and
+     fixed by Joe Orton <jo...@redhat.com>.  Details will be released
+     on 30 May 2003.
+
+  *) apr_proc_wait(): Handle interrupted waitpid(2) calls by calling
+     it repeatedly until it succeeds or fails with errno other than
+     EINTR.  This hides this UNIX-specific behavior from APR clients.
+
+  *) Removed the solaris-specific atomic code, due to licence
+     concerns (it was MPL 1.0, and the author could not be contacted)
+     [Ian Holsman]
+
+  *) apr_file_gets(): Return APR_SUCCESS if any characters are
+     returned.  Any I/O errors or EOF will be reported on the
+     next call.  Callers that are coded to expect returned 
+     data + APR_EOF when there is no final newline are affected 
+     by this change.  [Jeff Trawick]
+
+  *) apr_proc_create() on Unix: Make the APR_SHELLCMD mode work
+     when there is more than one program argument passed in.
+     [Jeff Trawick]
+
+  *) Add --cc and --cpp flags to apr-config.  [Jeff Trawick]
+
+  *) Don't segfault trying to close a file in error paths of flock
+     and fcntl mutex creation.  PR 19036  [Jeff Trawick]
+
+  *) Add %pT support to apr_snprintf() for printing an apr_os_thread_t.
+     [Jeff Trawick]
+
+  *) Add APR_TCP_NODELAY_INHERITED & APR_O_NONBLOCK_INHERITED to apr.hw
+     [Allan Edwards]
+
+  *) Add APR_UINT64_T_HEX_FMT.  [Jeff Trawick]
+
+  *) Add parameter to APR_SUBDIR_CONFIG to drop options passed to configure
+     before the subdir's configure is invoked.
+     [Jeff Trawick, Justin Erenkrantz]
+
+  *) Implement APR_SO_RCVBUF socket option on Unix.  
+     [Adam Sussman <my...@vishnu.vidya.com>]
+
+  *) Don't add the math library (-lm) if the modf() function
+     is already available via libc.  [Roy Fielding]
+
+  *) Solaris cc: Don't use the -mt option for threaded builds.  That
+     is for non-Posix threading, and the use of it prevented us from
+     linking with -lpthread, which in turn caused weird problems for
+     APR applications.  [Kristofer Spinka <ks...@style.net>]
+
+  *) OS/2: apr_stat() fixes - When a character device is stat'ed, 
+     fill in finfo.name if it was asked for.  Return APR_INCOMPLETE 
+     when appropriate.  Addresses httpd incident [CAN-2003-0134].
+     [Brian Havard]
+
+Changes with APR 0.9.3
+
+  *) Don't enable posixsem, at build time, on systems where sem_t *
+     won't "fit" into an int (sizeof-wise). Also, better error handling
+     when we fail to create a posixsem. PR 17186 [Scott Herod
+     <sh...@pillardata.com>, Jim Jagielski]
+
+  *) Default hpux 10.x to disable threading, since if it exists at all
+     the pthread implementation should not be trusted, while hpux 10 
+     had its own threads implementation that is no longer supported.
+     PR 9457 [William Rowe]
+
+  *) Fix error in apr-config when symlinks are involved.
+     [Garrett Rooney <ro...@electricjellyfish.net>]
+
+Changes with APR 0.9.2
+
+  *) Numerous bug fixes for file and socket inheritence by child
+     processes on Unix, correcting bugs that affected the correct 
+     behavior of apr_[file|socket]_inherit_[un]set() API.
+     [Bjoern A. Zeeb <bz...@zabbadoz.net>, William Rowe, Joe Orton]
+
+  *) Define APR_UINT64_T_FMT and APR_UINT64_T_FMT_LEN.
+     Define APR_INT64_T_FMT_LEN on Windows and Netware.  [Branko Čibej]
+
+  *) Correct apr_file_gets() on OS2 and Win32 so that '\r's are no longer
+     eaten, and apr_file_gets() -> apr_file_puts() moves the contents
+     uncorrupted.  [William Rowe]
+
+  *) Alter Win32's handling of the apr_proc_t hproc member, so that we
+     close that system handle wherever an apr function would invoke the
+     final waitpid() against a zombie process on Unix.  [William Rowe]
+
+  *) APR_MAX_SECONDS_TO_LINGER and APR_FNM_* #defines replace their
+     old undecorated names (missing APR_ prefix).  The old names will
+     disappear with APR 1.0.0.
+     [Craig Rodrigues <ro...@attbi.com>, William Rowe]
+
+
+  *) When generating a semaphore name for posixsem locking, try to
+     be a little more robust (and unique). [Jim Jagielski]
+
+  *) Add functions apr_env_get, apr_env_set and apr_env_delete for
+     manipulating the environment.  [Branko Čibej]
+
+  *) Fix APR_LAYOUT to work with layout files with no preceding blank lines
+     and emit errors when layout is not found.  PR 15679.
+     [Justin Erenkrantz]
+
+  *) Add functions apr_filepath_list_split and apr_filepath_list_merge
+     for managing search paths.  [Branko Čibej]
+
+  *) Introduce Release mode debugging symbols for Win32 builds of apr.
+     All library builds gain /Zi for debug symbols (which are discarded
+     at link time if some flavor of the /debug flag isn't passed to link)
+     and .dll builds gain .pdb symbols.  [Allen Edwards, William Rowe]
+
+  *) Add two new proc attributes to improve diagnostics for 
+     apr_proc_create() failures on platforms where fork()+exec() is used.
+     See the doc for apr_procattr_child_errfn_set() and
+     apr_procattr_error_check_set().  [Jeff Trawick]
+
+  *) Rename rules.mk to apr_rules.mk and make apr_rules.mk be installed.
+     [Thom May]
+     
+  *) Fix a bug in apr_proc_create() that could cause a new child process
+     to run the parent's code if setrlimit() fails.  [Jeff Trawick]
+
+  *) Disable apr_socket_sendfile() on 64-bit AIX to avoid an apparent
+     system problem.  PR 11408.  [Jeff Trawick]
+
+  *) Add --includedir flag to apr-config.  [Justin Erenkrantz]
+
+  *) Only include sys/syslimits.h if we don't have limits.h
+     [Craig Rodrigues <ro...@attbi.com>, Garrett Rooney 
+     <ro...@electricjellyfish.net>, Thom May]
+
+  *) Allow apr-config to work in symlinked install directories when
+     'realpath' is available.  [Justin Erenkrantz]
+
+  *) Namespace protect the header files in include/arch
+     [Thom May]
+
+  *) Add function apr_filepath_encoding and associated constants.
+     [Branko Čibej]
+
+  *) Allow apr_hash to have greater than int number of elements.
+     [Justin Erenkrantz]
+
+  *) Allow generation of dependencies by non-GCC compilers.
+     [Justin Erenkrantz]
+
+  *) Prevent obscenely large values of precision in apr_vformatter
+     from clobbering a buffer. [Sander Striker, Jim Jagielski]
+
+  *) limit the renames performed in apr_rename.pl to the most recent renames.
+     [Thom May]
+
+  *) Changed apr_mmap_dup() and friends so that there's no longer any
+     is_owner concept on the mmaped region, but rather something more
+     along the lines of a reference count.  This allows the old apr_mmap_t
+     to still be used safely when the new apr_mmap_t is in a disjoint pool.
+     [Cliff Woolley, Sander Striker]
+
+  *) Fix a bug in apr_hash_merge() which caused the last entry in the
+     overlay hash to be lost.  PR 10522  [Jeff Trawick]
+
+  *) Add DougM's apr_rename.pl script into helpers, and update for the new 
+     batch of updates [Thom May]
+
+  *) Renames done (deprecated functions wrapped):
+     apr_filename_of_pathname -> apr_filepath_name_get
+     apr_get_groupid -> apr_gid_get
+     apr_get_groupname -> apr_gid_name_get
+     apr_compare_groups -> apr_gid_compare
+     apr_parse_addr_port -> apr_port_addr_parse
+     apr_shutdown -> apr_socket_shutdown
+     apr_bind -> apr_socket_bind
+     apr_listen -> apr_socket_listen
+     apr_accept -> apr_socket_accept
+     apr_connect -> apr_socket_connect
+     apr_send -> apr_socket_send
+     apr_sendv -> apr_socket_sendv
+     apr_sendto -> apr_socket_sendto
+     apr_implode_gmt -> apr_time_exp_gmt_get
+     apr_get_home_directory -> apr_uid_homepath_get
+     apr_get_userid -> apr_uid_get
+     apr_current_userid -> apr_uid_current
+     apr_compare_users -> apr_uid_compare
+     apr_get_username -> apr_uid_name_get
+     apr_recvfrom -> apr_socket_recvfrom
+     apr_sendfile -> apr_socket_sendfile
+     apr_recv -> apr_socket_recv 
+     [Thom May]
+
+  *) Add APR_IPV6_V6ONLY socket option.  [Jeff Trawick]
+
+  *) Update timeout algorithm in free_proc_chain. If a subprocess
+     did not exit immediately, the thread would sleep for 3 seconds
+     before checking the subprocess exit status again. In a very
+     common case when the subprocess was an HTTP server CGI script,
+     the CGI script actually exited a fraction of a second into the 3
+     second sleep, which effectively limited the server to serving one 
+     CGI request every 3 seconds across a persistent connection.
+     [Bill Stoddard, Kai.Risku@arrak.fi]
+
+  *) Update doxygen tags.  [Justin Erenkrantz]
+
+  *) NetWare: implemented a file IO path context scheme to directly
+     reference directory paths and files in the file system rather
+     than having to traverse the file system on every stat() or
+     open() call. (Performance enhancement) [Brad Nicholes]
+     
+  *) ReliantUnix: recognize that dlsym() is in libdl and dlopen() is in
+     libc.  The check is generic so maybe this fixes some other system.
+     PR 14189  [Jeff Trawick]
+
+  *) Win32: Fix APR_APPEND file i/o. [Bill Stoddard]
+
+  *) Fix a problem retrieving the remote socket address for sockets
+     created via apr_os_sock_put() or apr_os_sock_make().  [Jeff Trawick]
+
+  *) Add recognition of and socket API support for the SCTP protocol.
+     [Randall Stewart <ra...@stewart.chicago.il.us>]
+
+  *) Win32: apr_shutdown was not honoring apr_shutdown_how_e and
+     always shutting down the socket for read. This could result
+     in Apache HTTPD 2.0 clients getting early connection closures
+     because lingering_close() was broken. [Bill Stoddard, Allan Edwards]
+
+  *) Add apr_atomic_casptr() to support atomic compare-and-swap
+     of pointers  [Brian Pane]
+
+  *) Add apr_socket_create_ex() to allow protocol to be specified for the
+     socket.  With APR 1.0, this function will be removed and apr_socket_create()
+     will have the additional parameter.
+     [Randall Stewart <ra...@stewart.chicago.il.us>]
+
+  *) Fix the detection of INT64_C() when defined in <stdint.h>.
+     [Joe Orton <jo...@manyfish.co.uk>]
+
+  *) Don't use whitespace before preprocessor directives in the configure
+     logic.  Such whitespace breaks with some older preprocessors; a 
+     particularly nasty break occurs on Tru64 4.0f where APR_CHECK_DEFINE 
+     will always succeed.  [Joe Orton <jo...@manyfish.co.uk>]
+
+  *) Add APR_IPV4_ADDR_OK flag to apr_sockaddr_info_get() to allow
+     apps to avoid lookup of IPv6 address if IPv4 address is sufficient.
+     (New APR_IPV6_ADDR_OK flag is similar.)  [Jeff Trawick]
+
+  *) Disable IPv6 support on Darwin.  The current IPv6 support has a
+     problem in getnameinfo() which breaks certain applications.
+     [Sander Temme <sc...@covalent.net>, Jeff Trawick]
+
+  *) Support for SCO OpenServer Release 5 [Kean Johnston <jk...@caldera.com>]
+
+  *) Faster (inline and mutex-free) implementations of all apr_atomic
+     operations for Linux/x86 (requires a 486 or later; to enable,
+     configure APR with --enable-nonportable-atomics=yes )   [Brian Pane]
+
+  *) Add --bindir option to apr-config.  [Justin Erenkrantz]
+
+  *) Begin to rehash the test suite.  There is now a new test program called
+     testall.  This program currently runs testtime and teststr with the
+     CuTest framework.  The stand-alone programs for testtime and teststr
+     can be built, but only if a special flag is specified when building.
+     [Ryan Bloom]
+
+  *) Fix a broken check for a failure to read from the random device file.
+     PR 12615  [tenthumbs@cybernex.net]
+
+  *) Print informative link errors on Darwin.  [Justin Erenkrantz]
+
+Changes with APR 0.9.1
+
+  *) Fixed usage of alloca in apr_poll() on Tru64
+     [Dave Hill <dd...@zk3.dec.com>]
+
+  *) Running "make check" in the toplevel directory or the test/ directory
+     will build and run all test programs.  [Aaron Bannert]
+
+  *) Add apr_array_pop().  [Justin Erenkrantz]
+
+  *) Fixed the native SPARC v8plus version of apr_atomic_dec
+     to match the semantics of the default C version [Brian Pane]
+
+Changes with APR 0.9.0
+
+  *) If the length argument to apr_snprintf is 0, then we should return the
+     length that the string would be if we actually were going to fill it out.
+     However, if the length argument is 0, we can also accept a NULL string.
+     Also, added a test case for this.  [Ryan Bloom]
+
+  *) Printing a string with apr_snprintf can seg fault, if a precision is
+     specified for the string, and the string being printed doesn't have a
+     trailing '\0'.  Fix that seg fault by not calling strlen if a precision
+     is specified when printing a string.  Also add a test to the test suite
+     for this case.
+     [R Samuel Klatchko <rs...@brightmail.com>]
+
+  *) handle leak related to threads on Windows2000/XP 
+     [INOUE Seiichiro <in...@ariel-networks.com>]
+
+  *) Includes moved to INCLUDEDIR/apr-{major} (e.g. /usr/include/apr-0)
+     [Greg Stein]
+
+  *) libtool versioning is used to give the library sonames a real
+     value. The libraries will be libapr-{major}.so.0.{minor}.{patch}
+     [Greg Stein]
+
+  *) Fix apr_tokenize_to_argv() to remove the escape character
+     (backslash) from the argument tokens. PR 11793 [Paul J. Reder]
+
+  *) Add APR_PARSE_ARGUMENTS and APR_LAYOUT macros for better layout
+     support. [Thom May]
+
+  *) Add parallel-apr layout which utilizes the major version number in
+     directories and library names.  [Justin Erenkrantz]
+
+  *) Add a version number to the library name (e.g. libapr-1.so) so
+     that apps can do things like: -lapr-1 or -lapr-2, depending on
+     which version they want to use and link against. [Greg Stein]
+
+  *) Add --version to apr-config so that apps can retrieve the version
+     information of the (installed) APR. [Greg Stein]
+
+  *) Remove the APRVARS system; apps should use apr-config. [Greg Stein]
+
+  *) EBCDIC: fix compile failure in strings/apr_strings.c in
+     httpd-2.0.40 with the following error message:
+     CANNOT COMPILE apr_strtoi64(), only ASCII and EBCDIC supported
+     
+  *) In apr_signal_thread() remove synchronous signals from the mask
+     passed to sigwait().  It is never valid for them to be there.
+     Some platforms silently ignore them, some return EINVAL, some
+     don't process it as desired.  [Jeff Trawick]
+
+  *) Change config.nice generation to always expand variables.
+     [Justin Erenkrantz]
+
+  *) Renamed apr_strtoll()/apr_atoll() to follow int64 convention,
+     so these new helpers are apr_strtoi64/apr_atoi64(), since
+     'll' (long long) is a nonportable and aspecific construct.
+     Used ac/m4 tests to choose the appropriate fn behind strtoi64.
+     [William Rowe]
+
+  *) don't perform a strlen on that name value without checking for NULL 
+     first (in getopt)
+     [David Waite <ma...@akuma.org>, Ian Holsman]
+
+  *) Added apr_strtoll() and apr_atoll() to strings lib.
+     [Shantonu Sen <ss...@apple.com>, Wilfredo Sanchez]
+
+  *) Added a lightweight internal index to apr_table_t to speed up
+     table lookup operations  [Brian Pane]
+
+  *) initalize handle members to invalid before calling createprocess
+     on win32 [Rob Saccoccio <ro...@fastcgi.com>]
+
+  *) Removed apr/i18n to apr-util/xlate for inclusion of apr-iconv
+     as required by missing libiconv.  [William Rowe]
+
+  *) Removed apr/md5 and apr/uuid into apr-util/crypto.  [William Rowe]
+
+  *) Add APR_BUFFERED support to apr_os_file_put().  [Justin Erenkrantz]
+
+  *) Fix misinterpretation of timeout for select() on Win32/Netware.
+     Identified by [TANAKA Koichi <ta...@ariel-networks.com>]
+
+  *) Re-write apr_poll() on Unix.  This improves the performance by
+     giving the user back control over the memory in the pollset.
+     [Ryan Bloom]
+
+  *) Added APR_LIMIT_NOFILE option to apr_procattr_limit_set() to
+     control the file descriptor limit on platforms that support
+     RLIMIT_NOFILE.  [Brian Pane]
+
+  *) FreeBSD: change apr_sendfile to accomodate a 4.6 kernel patch.
+     [Greg Ames]
+
+  *) Faster code for the apr_table get/set functions  [Brian Pane]
+
+  *) Fix the userid functions on Irix to handle the way that Irix 
+     reports a failure from getpwnam_r().  PR 10095.
+     [Robert I. Cowles <ri...@cs.uregina.ca>, Jeff Trawick]
+
+  *) apr_table_do() and apr_table_vdo() now return an int rather than
+     void to indicate whether or not any of its iterations returned 0.
+     [Cliff Woolley]
+
+  *) Fix the definition of union semun so that it is valid on systems
+     where sizeof(long) != sizeof(int).  This resolves a hang on
+     HP-UX/Itanium.  
+     [Madhusudan Mathihalli <ma...@hp.com>]
+
+  *) Correct shared library support on Darwin to not fatally error out
+     when a shared library does not exist.  [Justin Erenkrantz]
+
+  *) Added optimized atomic CAS support for Linux/x86 (available only
+     when APR is configured with --enable-nonportable-atomics=yes)
+     [Brian Pane]
+
+  *) Fix a compile error in the EGD support in rand.c on older Solaris
+     versions.  PR 9976  [Jim Morris <jm...@sunflower.com>]
+
+  *) Fixed apr_file_seek() to unset the eof_hit flag.  [Stas Bekman]
+
+  *) Removed --disable-atomics flag and added --enable-nonportable-atomics,
+     thereby defaulting to portable binaries on those systems that could
+     be optimized at the expense of portability. PR: 9507  [Aaron Bannert]
+
+  *) Added 2 additional lock functions: apr_proc_mutex_name and
+     apr_proc_mutex_defname which returns the type name of the mutex
+     (eg: "sysvsem") as well as the default mutex type (APR_LOCK_DEFAULT).
+     Mostly useful under Unix were the locktypes are selectable.
+     [Jim Jagielski]
+
+  *) Fixed apr_generate_random_bytes() for Win32 on Win NT or 9x by
+     dropping the 0x40 bit (CRYPT_SILENT) for earlier OS'es.
+     PR 9286  [William Rowe]
+
+  *) Added --with-devrandom=[DEV] configure flag which allows a particular
+     "/dev/random"-compatible device to be specified, overriding the
+     default search path (/dev/random then /dev/arandom then /dev/urandom).
+     Also, if --with-egd=<path> is specified, it now implies
+     --without-devrandom.  [Cliff Woolley]
+
+  *) Darwin/Mac OS X: Don't leave zombie processes when the app calls
+     apr_signal(SIGCHLD, SIG_IGN).  This fixes a problem with Apache's
+     mod_cgid.  PR 9168.  [Jeff Trawick]
+
+  *) Win32: Fix bug where apr_sendfile() was incorrectly returning
+     APR_SUCCESS on a TransmitFile call that was interrupted by
+     the client closing its end of the connection. Always call 
+     GetOverlappedResults() to get results of async TransmitFile()
+     completion notification. [Bill Stoddard] 
+
+  *) Renamed APR_XtOffset -> APR_OFFSET and APR_XtOffsetOf -> APR_OFFSETOF.
+     [Cliff Woolley]
+
+  *) Cygwin: the unix version of apr_file_open() must respect the
+     APR_BINARY flag if the underlying platform requires it (in
+     which case we assume O_BINARY is defined).  PR 9185.
+     [Cliff Woolley]
+
+  *) Linux, AIX: Use crypt_r() instead of crypt() because the native
+     crypt() is not thread-safe.  The misuse of crypt() led to   
+     intermittent failures with Apache basic authentication when crypt 
+     passwords were being used.  [Jeff Trawick]
+
+  *) AIX: Global mutexes don't need an intraprocess mutex when SysV
+     sems are used for the crossprocess mutex.
+     Darwin: The same optimization was applied for Posix sems.
+     [Jeff Trawick]
+
+  *) Fix a problem with global mutexes on OS/390 when something other
+     than the default mechanism (SysV sem) was used.  The mutexes didn't
+     necessarily block out other threads in the same process.
+     [Jeff Trawick]
+
+  *) Fixed apr_strfsize formatting of values over 1 gig
+     [Matsuzaki Yoshinobu <ma...@iij.ad.jp>]
+
+  *) Renamed --disable-atomics as --disable-optimized-atomics,
+     since it doesn't really disable the atomics.  [Aaron Bannert]
+
+  *) Converted apr_pcalloc to a macro  [Brian Pane]
+
+  *) Fixed APR_STATUS_IS_ETIMEDOUT macro.
+     [Dagfinn Aarvaag <da...@beepscience.com>]
+
+  *) Add --disable-atomics switch to override our handcoded assembly
+     optimizations.  Note that this has no effect if your operating
+     system has a userspace atomic interface.  [Justin Erenkrantz]
+
+  *) Remove Linux atomic support since it does not have a usable
+     userspace atomic interface.  [Justin Erenkrantz]
+
+  *) Don't require that the DNS can map 127.0.0.1 when checking for
+     the presence/usability of getnameinfo().  PR 7642.  [Jeff Trawick]
+
+  *) Remove APR_WANT_SIGNAL from apr_want.h because code must include
+     apr_signal.h in order to get consistent definitions. [Roy Fielding]
+
+  *) Don't try to use /dev/zero and mmap on platforms that don't
+     support that (such as HP-UX).  PR 8537.  [Justin Erenkrantz]
+
+  *) Reduce the number of apr_sendfile calls on AIX and OS/390 by
+     remembering when the kernel tells us the next one will block.
+     [Jeff Trawick]
+
+  *) Reduce the number of apr_sendfile calls on FreeBSD by remembering
+     when the kernel tells us the next one will block.  [Greg Ames]
+
+  *) To support modules like PHP, which implement their own
+     loaded extensions, Darwin needs to place their public
+     symbols in the global table. [Marko Karppinen <ma...@php.net>,
+     Jim Jagielski]
+
+  *) Rename apr_get_groupname to apr_group_name_get.
+     [Thom May <th...@planetarytramp.net>]
+     
+  *) Allow VPATH builds to properly build dependencies and switch to
+     a .deps dependency model to mimic httpd-2.0.  [Justin Erenkrantz]
+
+  *) Tru64: Stop leaving zombies in APR apps like mod_cgid which
+     tell APR to ignore SIGCHLD.  
+     [Dave Hill <Da...@Compaq.com>]
+
+  *) Ensure that the ATOMIC_HASH can not be negative.
+     [Joe Orton <jo...@redhat.com>]
+
+  *) Fix a problem with eof reporting with Unix file I/O on 
+     unbuffered files.  [Stas Bekman <st...@stason.org>]
+
+  *) Rename apr_explode_time to apr_time_exp_tz.
+     [Thom May <th...@planetarytramp.net>]
+
+  *) Rename apr_explode_localtime to apr_time_exp_lt.
+     [Thom May <th...@planetarytramp.net>]
+
+  *) Set precompiler for Solaris atomics when using GNU binutils.
+     PR 7876.  [solomon@conceptshopping.com (Marvin Solomon)]
+
+  *) AIX: Fix breakage with 64-bit builds on versions of AIX prior
+     to 5L.  PR 7957  [Jeff Trawick]
+
+  *) On socket write functions (apr_sendfile, apr_send, apr_sendv),
+     added a select to wait for writability on the socket if the
+     previous write was incomplete.  [Jeff Trawick, Brian Pane]
+
+  *) Deprecated the apr_lock.h API. Please see the following files
+     for the improved thread and process locking and signaling:
+     apr_proc_mutex.h, apr_thread_mutex.h, apr_thread_rwlock.h,
+     apr_thread_cond.h, and apr_global_mutex.h.  [Aaron Bannert]
+
+  *) Fix some daylight savings time breakage on (at least) AIX, 
+     Solaris, and HP-UX.  [Jeff Trawick]
+
+  *) Added support for Posix semaphores (sem_open, et.al.) for mutex
+     locking. We use named semaphores in this implementation. The
+     default priority is between pthread and sysvsem.
+     [Jim Jagielski]
+
+  *) Get flock-based mutexes to work in apps like Apache.  Use the
+     same permissions on flock- and fcntl-based mutexes as Apache
+     1.3.  [Jeff Trawick]
+
+  *) Fix apr-config so that it will not attempt to cd to a non-existent
+     directory.  [Justin Erenkrantz]
+
+  *) Change the ordering of the apr_lock implementation method to
+     better match what's done in Apache 1.3. The ordering is
+     now (highest to lowest): pthread -> sysvsem -> fcntl -> flock.
+     [Jim Jagielski]
+
+  *) Improve detection of the INT64_C macro to prevent problems
+     with HP-UX's ANSI C compiler.  PR 8932.  [Justin Erenkrantz]
+
+  *) Make sure gethostbyname() can handle 255.255.255.255 if we
+     are to trust it to handle numeric address strings in
+     apr_sockaddr_info_get().  This fixes a problem on HP-UX
+     which led to an assertion failure at Apache startup when
+     using vhosts.  [Jeff Trawick]
+
+  *) Don't mask SIGUSR2 [Jin Hong <ji...@cnet.com>]  
+
+  *) Load libraries if they not MH_BUNDLE, but if they are not, it 
+     just attempts to link them as shared libs.
+     [Pier Fumagalli <pi...@betaversion.org>]
+
+  *) apr_atomic_dec now returns a zero value if the value of 
+     the atomic is zero, non-zero otherwise [Ian Holsman]
+
+  *) When opening a file, only create an internal thread mutex
+     if APR_XTHREAD is set.  [Brian Pane]
+
+  *) Move the kill_conditions enum in apr_thread_proc.h into the
+     APR namespace. kill_after_timeout et al have been renamed
+     appropriately (e.g., APR_KILL_AFTER_TIMEOUT).  [Jeff Trawick]
+
+  *) Fix a segfault in apr_thread_rwlock_destroy() on Win32.
+     [INOUE Seiichiro <in...@ariel-networks.com>]
+  
+  *) configure now checks to see if we can change DNS timeout values
+     [Ian Holsman]
+
+  *) Fix a bug in apr_file_seek() on Unix when using buffered
+     files.  PR 10003 [Jeff Trawick]
+
+  *) Small table performance optimization: eliminate the
+     zero-fill of newly allocated elements when expanding
+     a table's size. [Brian Pane]
+
+  *) Allow APR to install its generated libtool(s) via the 
+     --with-installbuilddir option (defaults to ${datadir}/build).
+     [Justin Erenkrantz]
+
+  *) renames: apr_ansi_time_to_apr_time becomes apr_time_ansi_put
+     ap_exploded_time_t becomes apr_time_exp_t
+     [Thom May <th...@planetarytramp.net>]
+
+  *) Add the APR_FILE_NOCLEANUP flag to apr_file_open().
+     Adding the flag will prevent the file from being closed 
+     when the pool passed in on apr_file_open() is destroyed.
+     This feature is useful when using apr_os_file_get|put()
+     to manage the apr_os_file_t in apr_file_t (ie, file handle
+     caching in the HTTP server) [Bill Stoddard]
+
+  *) Win32: Fix APR_XTHREAD problems in apr_file_read()
+     and apr_file_write(). Multiple threads were using the
+     same overlapped structure and io event handle created
+     in the open call, which could cause unpredictable
+     file i/o results. [Bill Stoddard]
+
+  *) Win32: apr_proc_mutex_trylock and apr_proc_mutex_lock were 
+     incorrectly returning APR_BUSY if the lock was previously
+     held by a thread that exited before releasing the lock 
+     (ie, if the process holding the lock segfaults). The MSDN
+     doc says when WaitForSingleObject returns WAIT_ABANDONED,
+     the calling thread takes ownership of the mutex, so these
+     two routines should return APR_SUCCESS in this case, not
+     APR_BUSY. [Bill Stoddard]
+
+  *) Added a new m4 function APR_EXPAND_VAR that will iteratively
+     interpolate the contents of a variable, such as $sysconfdir,
+     for use in a borne script.  [Aaron Bannert]
+
+  *) apr-atomic support for old-sparc's and gas on solaris
+     [Dale Ghent <da...@elemental.org>,  jean-frederic clere, Ian Holsman]
+
+  *) Change apr_proc_detach to take a parameter that can enable/disable
+     automatic forking (aka, to "daemonize").
+     [Jos Backus <jo...@cncdsl.com>, Aaron Bannert]
+
+  *) Implement apr_global_lock_foo() on Win32
+     [Bill Stoddard]
+
+  *) Fix select() argument call when waiting for IO.  PR 9674.
+     [David MacKenzie <dj...@pix.net>]
+
+  *) Add a new lock API (apr_global_mutex_t) to provide guaranteed
+     cross-process AND cross-thread mutual exclusion.  [Aaron Bannert]
+
+  *) Note: We are in the process of deprecating the apr_lock.h API.
+     The new and improved lock/synchronization APIs now reside
+     in apr_thread_mutex.h, apr_proc_mutex.h, apr_thread_rwlock.h,
+     and apr_thread_cond.h.  [Aaron Bannert]
+
+  *) Enable autoconf 2.52{f,g} build support.
+     [Blair Zajac <bl...@orcaware.com>]
+
+  *) Added new functions for atomic operations. These are experimental
+     at the moment, so use in apps is discouraged [Ian Holsman]
+
+  *) Correct serious problems with the Win32 apr_file_dup2 
+     and apr_file_open_stdxxx() fns.  [William Rowe]
+
+  *) Begin implementation of the WinCE port.
+     [Mladen Turk <mt...@mappingsoft.com>]
+
+  *) Disable SHMEM_MMAP_ZERO on HPUX 11.x where it is not supported.
+     Use SHMEM_SHMGET_ANON instead.  [Aaron Bannert]
+
+  *) Fix a few attempts to add to a void * ptr in the Unix shared
+     memory support code.  PR #9710  Per Ekman [pek@pdc.kth.se]
+
+  *) In the Linux apr_sendfile(), fix the types of some parameters 
+     to apr_send() and apr_recv().  Breakage was seen in 64-bit mode
+     on s/390.  PR #9712  [Neale.Ferguson@SoftwareAG-usa.coom]
+
+  *) added APR_PROGRAM_ENV and APR_PROGRAM_PATH options for starting
+     processes via apr_proc_create() [Greg Stein]
+
+  *) Deprecated apr_pool_free_blocks_num_bytes() [Sander Striker]
+
+  *) Add --enable-pool-debug to make it easier for people to
+     enable pool debug mode.  Removed the APR_POOL_DEBUG_VERBOSE
+     define that was previously being used. [Sander Striker]
+     
+  *) Changed the apr_file_dup2() function prototype. It can only
+     take and reuse an apr_file_t*, and will no longer create one
+     if *new_file == NULL (use apr_file_dup() for that).  [Aaron Bannert]
+
+  *) Implemented name-based shared memory on Unix.  [Aaron Bannert]
+
+  *) Fix spelling mistakes in APRDesign.  
+     [Blair Zajac <bl...@orcaware.com>]
+
+  *) Ensure that apr_file_mktemp creates the temp file if it isn't there.
+     [John Sterling <st...@covalent.net>]
+
+  *) Make sure to pre-mark anon SysV shared memory segments as
+     removed. [Jim Jagielski]
+
+  *) Add --with-efence to allow usage of Electric Fence.
+     [Justin Erenkrantz]
+
+  *) Updated the pools debug code.  Check if a pool is still
+     valid on the most common apr_pool_xxx functions.
+     Fix the way APR_POOL_DEBUG_VERBOSE was using stderr.
+     Make the output somewhat nicer in this debug mode. [Sander Striker]
+
+  *) Add new define APR_POOL_DEBUG_VERBOSE which spits out info
+     about pool creation/destruction [Ian Holsman]
+
+  *) Fix GMT offset adjustments for platforms that do not have native
+     GMT offset adjustments.  [Jon Travis <jt...@covalent.net>]
+
+  *) Add new apr_shm_t API and remove old apr_shmem_t API. The new
+     API handles both anonymous and name-based shared memory. Anonymous
+     shared memory segments are only usable on systems with process
+     inheritance, and so the new API with name-based segments is
+     usable on platforms like Win32.  [Aaron Bannert and William Rowe
+     with much help from Justin Erenkrantz and Sander Striker]
+
+  *) Add --with-egd to support EGD-compatible entropy gatherers for 
+     those platforms without native support.  [Justin Erenkrantz]
+
+  *) apr_lock_create() and apr_proc_mutex_create() now have an
+     additional parameter for specifying the lock mechanism.  
+     apr_lock_create_np() and apr_proc_mutex_create_np() have been
+     removed.  [Jeff Trawick]
+
+  *) Change the prototype of apr_thread_exit() so that the apr_status_t
+     is no longer a pointer. It was difficult and sometimes hazardous
+     to return a apr_status_t* at times, and this allows us to return
+     the APR_* error codes directly.  [Aaron Bannert]
+
+  *) Add apr_sockaddr_equal() for comparing APR sockaddrs.
+     [Jeff Trawick]
+
+  *) Win32: apr_sendfile() should return APR_ENOTIMPL if
+     oslevel < WINNT. [Bill Stoddard]
+
+  *) Put new pools code in place which allows applications to
+     switch off locking on pools operations in case a pool is
+     guaranteed to never being used in more than one thread
+     at the same time.  We've seen a significant performance
+     improvement over the old code. [Sander Striker]
+
+  *) Add apr-config - a shell script to allow third-party programs
+     easy access to APR configuration parameters.  [Justin Erenkrantz]
+
+  *) Add find_apr.m4 to allow third-party programs that use APR to
+     have a standard m4 macro for detection.  [Greg Stein]
+
+  *) SEGV in apr_table_overlap [Brian Pane]
+
+  *) apr_array_copy speedup by removing the zero-fill [Brian Pane]
+
+  *) Fix build breakage on systems with getaddrinfo() but not 
+     gai_strerror() (e.g., RedHat 5.2).  [Jeff Trawick]
+
+  *) Fix a problem in Unix apr_file_dup() which caused 0 to be returned
+     by the first read.  [Stas Bekman <st...@stason.org>]
+
+  *) Fix a buglet that caused APR_FILE_BASED_SHM to be set inadvertently 
+     on some platforms (e.g., Linux, AIX).  [Jeff Trawick]
+
+  *) Speed up apr_table operations by using a cache/checksum and a
+     red-black tree in the overlay.
+     [Brian Pane <bp...@pacbell.net>, Cliff Woolley]
+
+  *) Speed up apr_pool_userdata_set[n] by letting hash_set figure out
+     the strings length.  [Brian Pane <bp...@pacbell.net>]
+
+  *) New function apr_mmap_dup. This is called in the mmap_setaside.
+     [Brian Pane <bp...@pacbell.net>]
+
+  *) Speed up the apr_hash_t implementation's handling of APR_HASH_KEY_STRING.
+     [Brian Pane <bp...@pacbell.net>]
+
+  *) Tweak apr_gethostname() so that it detects truncation of the
+     name and returns an error.  [Jeff Trawick]
+
+  *) Fix bug in Darwin DSO code.  [Sander Temme]
+
+  *) Fix apr_setup_signal_thread() to grab the right error code from
+     a sigprocmask() failure.  This only affects platforms that use
+     sigprocmask() in lieu of pthread_sigmask().  [Jeff Trawick]
+
+  *) Fix the Unix HAVE_POLL flavor of apr_poll_socket_mask() so that
+     it doesn't segfault.  Avoid some wasted storage in a poll-related
+     APR structure.  [INOUE Seiichiro <in...@ariel-networks.com>]
+
+  *) Fix apr_setup_signal_thread() so that threads don't block
+     synchronous signals (e.g., SIGSEGV).  It is a programming error
+     to do so, and some platforms (e.g., Solaris, AIX) don't call any
+     registered signal handler when such signals are blocked.
+     [Jeff Trawick]
+
+  *) Change the apr_table_elts macro so that it provides access via
+     a const pointer instead of a non-const pointer.
+     [Brian Pane <bp...@pacbell.net>]
+
+  *) Use strerror_r() where available, since strerror() isn't always
+     thread-safe.  Example systems where strerror() isn't thread-safe:
+     Linux+glibc, AIX  [Jeff Trawick]
+
+  *) Fix some file cleanup problems in apr_proc_create() which could
+     result in the pipes for stdin/stdout/stderr being closed
+     immediately.  [Jeff Trawick]
+
+  *) New functions apr_hash_[merge|copy], change to overlay fn
+     so that it calls merge, which does a inline iteration instead
+     of calling the iterator function. [Brian Pane <bp...@pacbell.net>]
+
+  *) Introduce the apr_pool_userdata_setn() variant that doesn't 
+     strdup the key.  Allows both the _setn() and _set() variant to 
+     accept NULL for the cleanup.  [Brian Pane <bp...@pacbell.net>]
+
+  *) Re-vamp the apr_proc_wait and apr_proc_wait_all functions.  We
+     now return the exit code from the program and a reason that the
+     program died, either normal exit or signalled.
+     [Jeff Trawick and Ryan Bloom]
+
+  *) Implement portable accessors for proc mutex. These are equivalent
+     to apr_os_lock_get/set, but they work for apr_proc_mutex_t types
+     instead.   [Aaron Bannert]
+
+  *) Added a new parameter to apr_thread_mutex_init(). Now, by default,
+     thread mutexes are not nested (sometimes called "recursive"). To
+     enable nested mutexes, a flag must be passed to the init script.
+     Non-nested mutexes are much faster than nested ones.
+     [Aaron Bannert]
+
+  *) read_with_timeout in apr/file_io/win32/readwrite.c incorrectly 
+     returned APR_SUCCESS instead of APR_EOF when PeekNamedPipe failed
+     and the result from GetLastError() was ERROR_BROKEN_PIPE. Because 
+     of this, the pipe wasn't closed as soon as it could be.
+     [Tim Costello <ti...@zcmgroup.com.au>]
+
+  *) Fix a problem in the Win32 pipe creation code called by 
+     apr_proc_create():  It didn't register cleanups for either the 
+     read or the write ends of the pipe, so file handles (and event 
+     handles for pipes with asynchronous I/O mode set) are never 
+     closed.  [Tim Costello <ti...@zcmgroup.com.au>]
+
+  *) Add support for QNX 6.  [J.T. Conklin <jt...@acorntoolworks.com>]
+
+  *) We now create exports.c and export_vars.h, which in turn create
+     exports.c.  From this we generate two more files with different
+     purposes: apr.exp - list of exported symbols; and exports.lo
+     (exports.o) - an object file that can be linked with an executable
+     to force resolution of all apr symbols.   [Aaron Bannert]
+
+  *) Add the apr_thread_cond_timedwait function to the condition
+     variable API.   [Aaron Bannert]
+
+  *) Fixed apr_file_mktemp on systems without mkstemp (Win32, etc).
+     [Mladen Turk, Cliff Woolley]
+
+  *) Fix a segfault in apr_poll_clear on Unix.   Also fix the logic 
+     for the case where there are multiple events ORed together in 
+     the events list.   [Jamshid Mahdavi <ma...@volera.com>]
+
+  *) Files opened on Unix with the flag APR_DELONCLOSE are now
+     not unlinked until they are actually closed, rather than as
+     soon as they're opened.  The old approach worked but made
+     handling temp files harder.  [Cliff Woolley]
+
+  *) Fix potential segfault when closing a file on Unix.  If
+     apr_file_close() was called and it failed, it would not
+     deregister the file cleanup.  Therefore the cleanup would
+     be run again later on a now-invalid descriptor.  [Cliff Woolley]
+
+  *) Introduce apr_pool_lock for debugging, in combination with
+     ALLOC_USE_MALLOC + DEBUG_WITH_MPROTECT.  Only implemented
+     on Win32 today, very effective for debugging pool constness.
+     [William Rowe]
+
+  *) Optimize apr_pstrcat by caching lengths of first 6 strings
+     [Brian Pane <bp...@pacbell.net>]
+
+  *) Add pool accessors to the apr_thread_mutex_t datatype.
+     [Aaron Bannert <aa...@clove.org>]
+
+  *) Add the apr_file_mktemp function.  This creates and opens a 
+     temporary file, for use by the program.  This file is created
+     delete_on_close.  The initial implementation only works on
+     Unix, but Windows is coming soon.  [Ryan Bloom]
+
+  *) Make the unix version of apr_proc_wait_all_procs a simple wrapper 
+     around apr_proc_wait, and which extracts the exit code from the 
+     status returned by waitpid.  
+     [Kevin Pilch-Bisson <ke...@pilch-bisson.net>]
+
+  *) Add process locking API to APR. [Aaron Bannert <aa...@clove.org>]
+
+  *) Add condition variables for Windows.  [Ryan Bloom]
+
+  *) Add condition variables to the APR set of locking functions.
+     This does Unix, and provides stubs for all other platforms.
+     [Aaron Bannert <aa...@clove.org>]
+
+  *) Don't search for IPv6 names in apr_sockaddr_info_get() if the 
+     application doesn't specify the family (i.e., the application
+     passes in AF_UNSPEC) and APR isn't built with IPv6 support.  
+     [Jeff Trawick]
+
+  *) Fix the API for the apr_proc_create() call on Win32.  Several
+     bad assumptions are gone, including a mismatch between unix and
+     win32, where win32 was defaulting to create detached.  Also fixes
+     the apr_proc_t's pid member to a real pid (identity that works
+     across processes) instead of the handle (which is a new hproc
+     member value.)  [William Rowe]
+
+  *) Modify the external apr_filepath_get() fn to take a flags arg,
+     currently only for APR_FILEPATH_NATIVE.  This returns c:\foo
+     format on Win32, and should do the same on OS2, or sys\vol:\foo
+     on Netware.  Primarily for internals, but possibly useful to
+     others (and it mirrors some of the other apr_filepath_*() calls.)
+     [William Rowe]
+
+  *) Add the new thread read/write lock API to APR.
+     [Aaron Bannert <aa...@clove.org>]
+
+  *) Add the new thread mutex lock API to APR.
+     [Aaron Bannert <aa...@clove.org>]
+  
+  *) Cache GMT offset on platforms that don't store it in the tm struct.
+     This offset is normalized to be independent of daylight savings
+     time.  [Brian Pane <bp...@pacbell.net>]
+
+  *) Initial support for cygwin.  [Stipe Tolj <to...@wapme-systems.de>]
+
+  *) Fix a problem with buffered files on Unix.  [Brian Havard]
+
+  *) Fix the bungling of getaddrinfo() error codes.  [Jeff Trawick]
+
+  *) Add an apr_thread_once function to APR.  This allows a
+     program to ensure that a function is only called once.
+     [Ryan Bloom]
+
+  *) APR Documentation is now in Doxygen format.
+     [Ian Holsman]
+
+  *) Get apr_ungetc() to work with buffered files on Unix.
+     [Jeff Trawick]
+
+  *) Fixed apr_filepath_root on Unix [William Rowe, Cliff Woolley].
+
+  *) Rename XtOffset to APR_XtOffset.  This namespace protection
+     is important to keep from conflicting with other packages.
+     [Perl]
+
+  *) Introduce a new --disable-ipv6 option to disable IPv6 support.
+     [Sterling Hughes <st...@designmultimedia.com>, Jeff
+     Trawick]
+
+  *) Fix the new shared memory code.  We need to pass a pointer to
+     an apr_file_t to apr_file_open.  Also, apr_os_file_get returns
+     a status value, not the OS file descriptor.  [Ryan Bloom]
+
+  *) Fix the new shared memory configure script.  The APR_DECIDE
+     macros go in order, so the last set of dependancies that are
+     met are the ones used.  That means that when using those macros,
+     options should be listed with the least desirable option first,
+     and the most desirable last.  The new shared memory routines did
+     the opposite, so we chose the wrong shared memory option on Linux.
+     [Ryan Bloom]
+
+  *) Move the necessary shared memory code from MM into APR and remove
+     our dependency upon MM.  [Justin Erenkrantz]
+
+  *) Get apr_lock_file and apr_unlock_file working on Windows 9x.
+     [Mladen Turk, Bill Stoddard]
+
+  *) Make all APR pools be allocated out of the permanent pool.
+     This brings APR pools back to a tree structure.  There are
+     no longer any way to create a pool that is not a decendant
+     of the permanent_pool.  [Ryan Bloom]
+
+  *) Wrap all functions in APR_DECLARE macro. 
+     [Sterling Hughes <st...@designmultimedia.com>]
+
+  *) Non-blocking connects shouldn't be calling connect a second
+     time.  According to Single Unix, a non-blocking connect has
+     succeeded when the select pops successfully.  It has failed
+     if the select failed.  The second connect was causing 502's
+     in the httpd-proxy.  [John Barbee barbee@veribox.net]
+
+  *) Fix apr_dir_rewind() for Win32 to avoid returning a bogus error.
+     [Jeff Trawick, William Rowe]
+
+  *) Detect required libraries first.  This minimizes the libraries
+     needed in apr_hints.m4.  [Justin Erenkrantz]
+
+  *) Support the AIX, glibc2, and Solaris variants of gethostby{name|addr}_r.
+     Use gethostbyaddr_r function when available.
+     [Sterling Hughes <st...@designmultimedia.com>]
+
+  *) Add new socket option, APR_INCOMPLETE_READ, that should be
+     set when you expect the first non-blocking read to fail with
+     EAGAIN. Setting APR_INCOMPLETE_READ prior to calling apr_read
+     will cause select() to be called first to wait for bytes
+     to read. [Brian Pane, Dean Gaudet]
+
+  *) Better installation.  This makes us install the APRVARS file,
+     as well as MM.  [Ryan Bloom]
+
+  *) Provide new number conversion functions apr_itoa, apr_ltoa, and 
+     apr_off_t_toa, and inline code in inet_ntop4, to reduce CPU
+     consumption. [Brian Pane]
+
+  *) Updated APR to pass the thread worker_function prototype 
+     (apr_thread_start_t) two parameters, the apr private data 
+     (apr_thread_t*) and the application private data (void*).  
+     Applications' worker_thread() routines may use apr_thread_pool_get
+     to access the pool (implemented using APR_POOL_*_ACCESSOR() macros.)
+     [Aaron Bannert <aa...@ebuilt.com>]
+
+  *) Add Solaris 8's sendfilev() support.  This requires the following 
+     patches from Sun: 111297 (Sparc), 111298 (x86).  You'll need the
+     other patches listed in the patch description.  [Justin Erenkrantz]
+
+  *) Close file descriptor when we are done with fcntl or flock-based
+     cross-process lock.  Otherwise, we leak descriptors.
+     [Justin Erenkrantz]
+ 
+  *) Fix a possible data corruption problem with the use of getpwnam_r() on 
+     all platforms where that function is used.
+     Use getpwnam_r() and getgrgid_r() instead of getpwnam() and getgrgid()
+     with threaded builds on glibc (2.1, at least) to avoid thread safety
+     issues.  [Jeff Trawick]
+
+  *) Added apr_lock_tryacquire.  It will attempt to acquire the lock, but 
+     will not block if it can not acquire the lock.  Returns APR_EBUSY if 
+     acquistion can not happen.  [Justin Erenkrantz]
+
+  *) Added an inherit flag to apr_socket_create and other socket creation
+     functions.  This allows APR programs to specify that a socket should
+     be passed to any child processes that are created.  The inherit flag
+     is only meaningful if programs use apr_process_create().  This
+     also adds a couple of macros that allow APR types to set and unset
+     the inherit flag.  [Ryan Bloom]
+
+  *) apr_connect()on Windows: Handle timeouts and returning the proper
+     status code when a connect is in progress. [Bill Stoddard]
+
+  *) apr_connect() on Unix: Handle EINTR during connect().  Handle timeouts.
+     [Jeff Trawick]
+
+  *) Handle the weird case where getpwnam() returns NULL but errno is zero.
+     [Jeff Trawick]
+
+  *) Add apr_file_flags_get() which returns the flags that were originally
+     passed in to apr_file_open().  [Cliff Woolley]
+
+  *) Added APR_HAS_XTHREAD_FILES macro that indicates whether or not the
+     platform handles files opened in APR_XTHREAD mode natively.  Currently
+     only Win32 has such native support.  [Cliff Woolley]
+
+  *) Fix gmt offset handling on Solaris.  Apache log messages now show
+     local time again. PR #7902 [Taketo Kabe <ka...@sra-tohoku.co.jp>]
+
+  *) apr_pstrcat() optimizations [Doug MacEachern, Jeff Trawick]
+
+  *) Make the apr_pool_is_ancestor logic public.  This is required for 
+     some new logic that is going into HTTPD.  I have left the join logic
+     in that function debug only.  [Ryan Bloom]
+
+  *) Clean up Win32 locks when the pool goes away.
+     [Justin Erenkrantz, Jeff Trawick]
+
+  *) Implement apr_get_home_directory for Win32.  [William Rowe]
+
+  *) Complete the implementation of LARGEFILE support on Win32, although
+     the mmap semantics still need a touch of work.  [William Rowe]
+
+  *) Fix the APR_XTHREAD support, and apr_sendfile mechanics, so we can
+     handle cross-threaded file handles on Win32.  [William Rowe]
+
+  *) Implement APR_READWRITE locks on Unix with POSIX rwlocks.
+     Introduce new apr_lock_acquire_rw() function which takes in 
+     APR_READER or APR_WRITER.  [Justin Erenkrantz]
+
+  *) Add apr_open_stdin.  This mirrors apr_open_stderr, except it works
+     on stdin.  [Aaron Bannert <ab...@ebuilt.com>]
+
+  *) Add apr_strtok(), a thread-safe flavor of strtok() which has the
+     same interface as strtok_r().  [Jeff Trawick]
+     
+  *) Add other child support to Win32 [Bill Stoddard]
+
+  *) Other-child registrations are automatically removed when the
+     associated pool is destroyed.  This avoids garbage in the list
+     of registrations when a pool with a registration is freed.
+     [Jeff Trawick]
+
+  *) Allow LTFLAGS to be overridden by the configure command-line 
+     (default="--silent") and introduce LT_LDFLAGS.  [Roy Fielding]
+
+  *) Add memory code kindly donated to APR by  
+       Elrond  <el...@samba-tng.org> 
+       Luke Kenneth Casson Leighton <lk...@samba-tng.org>
+       Sander Striker <st...@samba-tng.org>
+     [David Reid]
+
+  *) Fix a problem with the FreeBSD flavor of apr_sendfile() where we 
+     could return APR_EAGAIN+bytes_sent.  [Jeff Trawick]
+
+  *) Fix a problem on unixware where clearing h_errno wouldn't work.
+     Use set_h_errno() instead.  PR #7651  [Jeff Trawick]
+
+  *) Add the test and build directories (when present) to the recursive
+     make process, being sure that they are run last.  test is only done
+     recursively for make *clean targets.  [Roy Fielding]
+
+  *) Make the apr_mmap_create() function use the native_flags variable.
+     This allows us to actually create WRITEABLE MMAPs.
+     [Ed Korthof <ed...@apache.org>]
+
+  *) 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.  [Roy Fielding]
+ 
+  *) Fix DSO code on HP/UX.  We have to use == not =, and it makes more
+     sense to actually return errno, so that the return code means 
+     something.  [Ryan Bloom]
+
+  *) Clean up conditionals in unix DSO code so that we decide based on
+     the dynamic loading implementation, which we noticed at configure
+     time, instead of by operating system.
+     [Wilfredo Sanchez]
+
+  *) Add DSO support for dyld platforms (Darwin/Mac OS and OpenStep).
+     [Wilfredo Sanchez]
+
+  *) Amend the time code to better deal with time zones.
+     [David Reid]
+
+  *) Carefully select an appropriate native type for apr_int64_t and
+     define its format as APR_INT64_T_FMT and literal using APR_INT64_C().
+     [Justin Erenkrantz, William Rowe]
+
+  *) Make clean, distclean, and extraclean consistently according to the
+     Gnu makefile guidelines.  [Justin Erenkrantz <je...@ebuilt.com>]
+
+  *) Initial implementation of of apr_filepath (get/set/parse_root and 
+     merge) for Windows.  [William Rowe]
+
+  *) Cleaned up implementation of of apr_filepath (get/set/parse_root
+     and merge) for Unix.  [Greg Stein, William Rowe]
+
+  *) Fixup the --enable-libtool option.  This allows the test directory
+     to compile again.  The test directory still doesn't work when
+     APR is configured without libtool.  [Ryan Bloom]
+
+  *) If we don't have sigwait() in the system, see if sigsuspend() is
+     available, and use that instead. [Wilfredo Sanchez]
+
+  *) Make libtool optional at configure time.  This is done with 
+     --disable-libtool.  [Ryan Bloom]
+
+  *) Recognize systems where the TCP_NODELAY setting is inherited from
+     the listening socket, and optimize apr_setsockopt(APR_TCP_NODELAY)
+     accordingly.  [Jeff Trawick]
+
+  *) Recognize the presence of getnameinfo() on Tru64.  [David Reid]
+
+  *) Allow APR to be installed. [Ryan Bloom]
+
+  *) Generate config.nice for easy re-run of configure. [Roy Fielding]
+
+  *) Define preprocessor flags in CPPFLAGS instead of CFLAGS and
+     bring some sanity to the compiler command-lines. [Roy Fielding]
+
+  *) Use the dso/aix subdirectory for older versions of AIX and fix 
+     a number of bugs in the dso code in that directory.
+     [Victor Orlikowski]
+
+  *) Allow libtool 1.3b to be used.  [Victor Orlikowski]
+
+  *) Misc. Win32 fixes: Set the pool pointer in apr_sockaddr_t 
+     structures created with the apr_socket_t to prevent segfault 
+     in certain apps.  Flush unwritten buffered data when the file 
+     is closed.  [Jeff Trawick]
+
+  *) Win32: Get APR to compile with MSVC 5.0 (a.k.a. VC97).
+     PR #7489  [Jeff Trawick]
+
+  *) First draft implementation of apr_filepath (get/set/parse_root
+     and merge) for Unix.  [William Rowe]
+
+  *) Add apr_ipsubnet_create() and apr_ipsubnet_test() for testing
+     whether or not an address is within a subnet.  [Jeff Trawick]
+
+  *) Add apr_sendto and apr_recvfrom for Unix.  Start of adding UDP
+     support.  [David Reid]
+
+  *) Add a method to get the password from the system for a given
+     user.  [John Barbee <jb...@covalent.net>]
+
+  *) Change the include path order, so that we look for included files
+     in the APR paths first, and the system paths second.
+     [jean-frederic clere <jf...@fujitsu-siemens.com>]
+
+  *) Add a with-sendfile option, so that people on platforms without a
+     sendfile implementation for APR can easily disable it from the 
+     configure line.  [Ryan Bloom]
+
+  *) Change the check for netinet/tcp.h to work around an issue with
+     that header file on IRIX 6.5 which prevented it from being
+     detected.  PR #6459  [Jeff Trawick]
+
+  *) Introduce apr_get_userid to return a named user's apr_uid_t and
+     apr_gid_t across platforms [Cliff Woolley, William Rowe]
+
+  *) In apr_shm_init(), check the retcode from mm_malloc().  Previously,
+     we segfaulted here if mm_malloc() failed to get a lock.  An example
+     error scenario is when the lock file lives on a filesystem which
+     doesn't support locking.  [Jeff Trawick]
+
+  *) Name protected the autoconf macros defined by APR.  Moved the
+     REENTRANCY_FLAGS settings into apr_hints.m4. Inlined the
+     APR_PREPARE_MM_DIR macro because it could only be used once.
+     Removed the unused macros MY_TRY_RUN, MY_TRY_RUN_NATIVE, and
+     AC_USE_FUNCTION.  Added some macro comments.  [Roy Fielding]
+
+  *) Cope with BSDi installations where the default make has been
+     replaced with GNU make.  [Joe Orton <jo...@manyfish.co.uk>]
+
+  *) Changed apr/helpers to apr/build to be consistent with other Apache
+     source trees.  Added make variables to rules.mk.in that point to the
+     builders directory and its scripts.  Updated buildconf, configure.in,
+     and Makefile.in files to create and use the new scripts.  Moved scandoc
+     to scandoc.pl and its default.pl template to scandoc_template.pl.
+     [Roy Fielding]
+
+  *) Updated config.guess and config.sub to GNU libtool 1.3.5 features,
+     with the Apache additions for OS/390 and OS/2 emx.  [Roy Fielding]
+
+  *) Moved hints.m4, apr_common.m4, and helpers/apr-conf.m4 into the
+     new build directory as apr_hints.m4, apr_common.m4, apr_network.m4,
+     and apr_threads.m4.  [Roy Fielding]
+
+  *) Get apr_sendfile() working on HP-UX.  This gets APR to build on
+     HP-UX without having to turn off APR_HAS_SENDFILE.  [Jeff Trawick]
+
+  *) Force FreeBSD to compile without threads by default.  To enable
+     threads, use --enable-threads on the configure line.
+     [Ryan Bloom]
+
+  *) Purge system password buffer before returning from apr_password_get.
+     No longer abuses bufsize argument on return.  [William Rowe]
+
+  *) Moved the prototypes for apr_snprintf and apr_vsnprintf to the
+     apr_strings.h header, from apr_lib.h.  This location makes more
+     sense.  [Ryan Bloom]
+
+  *) Added the APR_TRY_COMPILE_NO_WARNING configure macro for testing a
+     compile with -Werror as well as the APR_CHECK_ICONV_INBUF macro to
+     test for annoying iconv prototype differences.
+     [Jeff Trawick, Roy Fielding]
+
+  *) Fix a problem with configure on NetBSD.  We must include sys/types.h
+     for some platforms.  [jun-ichiro hagino <it...@kame.net>]
+
+  *) Some fixes in the Win32 time support.
+     (IsLeapYear): New macro for quickly figgerin' out if a given year is a 
+     leap year. (SystemTimeToAprExpTime): Perform the calculation of
+     tm_yday.  Also, negate the sign of the tm_gmtoff field to be
+     consistent with Unix platforms and APR header file comments.
+     [Mike Pilato]
+
+  *) Implement WinNT Unix'ish permissions. [William Rowe]
+
+  *) Corrected an OS2'ism of apr_get_home_directory.  OS2 now returns the
+     proper directory, including the user's name.
+
+  *) Removed private os2errno.h and integrated the OS2 network error codes
+     into apr_errno.h for optimized error tests (APR_STATUS_IS_EFOO(rv)).
+     [William Rowe]
+
+  *) Moved inclusion of <os2.h> header from multiple modules into apr.h
+     [William Rowe]
+
+  *) Added apr_compare_users() and apr_compare_groups() for more complex
+     apr_uid_t and apr_gid_t structures.  Enabled both .user and .group
+     results from WinNT/2000 stat/getfileinfo, but expect to find that 
+     .group is 'None' in most cases.  [William Rowe]
+
+  *) Replace configure --with-optim option by using the environment
+     variable OPTIM instead.  This is needed because configure options
+     do not support multiple flags separated by spaces.  [Roy Fielding]
+
+  *) Eliminate the APR_SIG* aliases for standard signal names,
+     since they serve no useful purpose.  [Roy Fielding]
+
+  *) Abstracted apr_get_username and apr_get_groupname for unix and win32.
+     Modified Win32 apr_uid_t and apr_gid_t to use PSIDs, and elimintated
+     the uid_t and gid_t definitions.  [William Rowe]
+
+  *) Radically refactored apr_stat/lstat/getfileinfo/dir_read for Win32
+     to assure we are retrieving what we expect to retrieve, and reporting
+     the correct result (APR_SUCCESS or APR_INCOMPLETE).  The potential
+     for a bit more optimization still remains.  [William Rowe]
+
+  *) While we have the future opportunity to cache the apr_stat'ed file
+     handle for a very fast open (dup handle) on Win32, patched to close
+     that file after a stat always.  Needs a new semantic before we leave
+     handles dangling when the user intends to rm.  [William Rowe]
+
+  *) Correct Win32 apr_stat/lstat/getfileinfo/dir_read to all zero out
+     the finfo buffer on success (or incomplete success).  [William Rowe]
+
+  *) Fix Win32/Unix apr_lstat to throw the .valid bit APR_FINFO_LINK to
+     indicate we attempted to open the link.  Only the .filetype APR_LNK
+     reflects if the file found was, in fact, a link.   [William Rowe]
+
+  *) Fixed apr_open and apr_rename to function on Win9x.
+     [Mike Pilato <cm...@collab.net>] 
+  
+  *) Add apr_open_stdout.  This mirrors apr_open_stderr, except it works
+     on stdout.  [Mike Pilato <cm...@collab.net>]
+
+  *) Fix bug in file_io/unix/dir.c.  There is no such thing as a dirent,
+     it must be a struct dirent.  
+     [Kevin Pilch-Bisson <ke...@pilch-bisson.net>]
+
+  *) Fix the configure script so that we can build from a different
+     directory.  [Kevin Pilch-Bisson <ke...@pilch-bisson.net>]
+
+  *) Introduce the wanted flag argument to the apr_stat/lstat/getfileinfo
+     family of functions.  This change allows the user to determine what
+     platform-specific file information is retrieved, to optimize both
+     portability and performance.  [William Rowe]
+
+  *) Fix make depend.  [Ryan Bloom]
+
+  *) All dso implementations now register a cleanup to unload the DSO
+     when it is loaded.  If the pool is removed, we really do need to
+     remove the DSO.  In the past, different platforms behaved differently
+     it this respect.  [Ryan Bloom]
+
+  *) Add linkage declarations to the DSO code.
+     [Gregory Nicholls <gn...@level8.com>]
+
+  *) Some adjustment of hints.m4 setting flags (used to check if null
+     first) and added some verbosity. [Jim Jagielski]
+
+  *) Specify APR_DECLARE to some of the APR functions.  This helps linking
+     on some operating systems.  [Gregory Nicholls <gn...@level8.com>]
+
+  *) Libtool'ized APR and converted all the makefiles to share rules
+     from helpers/rules.mk. [Greg Stein]
+
+  *) Remove a warning on FreeBSD.  FreeBSD defines TCP_NO_PUSH, but we
+     don't actually use it.  This causes os_cork to be defined but not
+     used.  This patch keeps us from defining os_cork and os_uncork on
+     FreeBSD.  [Ryan Bloom]
+
+  *) Keep apr_terminate from seg faulting on terminate.  This is
+     happening on systems that do not NULL out locks when they are
+     destroyed.  To keep this from happening, we set the locks to
+     NULL after destroying them in apr_terminate, and we have to 
+     check for NULL in free_blocks.  
+     [Allan Edwards and Gregory Nicholls <gn...@level8.com>]
+
+  *) Remove the ability to allocate memory out of a NULL pool.
+     [Ryan Bloom]
+
+  *) Add an APR_GET_POOL macro to get a pool from any APR type that has
+     a pool.  This requires that ALL apr types put the pool as the first
+     field in their structure. [Ryan Bloom]
+
+  *) Begin to remove the ability to allocate out of NULL pools.  The first
+     problem to solve, is that we need an apr_lock in order to allocate
+     pools, so that we can lock things out when allocating.  So, how do we
+     allocate locks without a pool to allocate from?  The answer is to create
+     a global_apr_pool, which is a bootstrapping pool.  There should NEVER
+     be a sub-pool off this pool, and it is static to an APR file.  This is
+     only used to allow us to allocate the locks cleanly, without using the
+     NULL pool hack.  [Ryan Bloom]
+
+  *) Fix a logic error in the poll code when implemented using select.
+     [Nick Caruso <nc...@gamesville.com>]
+
+  *) FreeBSD does not support sendfile() in combination with threads
+     before version 4.2.  We no longer even try to support it.
+     [Ryan Bloom]
+
+  *) On FreeBSD, it is possible for the first call to sendfile to
+     get EAGAIN, but still send some data.  This means that we cannot
+     call sendfile and then check for EAGAIN, and then wait and call
+     sendfile again.  If we do that, then we are likely to send the
+     first chunk of data twice, once in the first call and once in the
+     second.  If we are using a timed write, then we check to make sure
+     we can send data before trying to send it. [Ryan Bloom]
+
+  *) Cleanup to help Apache support programs build cleanly.
+     [Cliff Woolley <cl...@yahoo.com>]
+
+  *) Cleanup some compiler warnings on Solaris
+     [Dale Ghent <da...@elemental.org>]
+
+  *) apr_getaddrinfo() can now return multiple addresses for a host
+     via the next field in apr_sockaddr_t.  [Jeff Trawick]
+
+  *) Tighten up the check for getaddrinfo().  If it can't figure out
+     the appropriate address family for 127.0.0.1, it fails.  
+     Unfortunately, Tru64 fails this test so we won't do IPv6 on
+     Tru64.  [Jeff Trawick]
+
+  *) Rename apr_opendir to apr_dir_open.  [Ryan Bloom]
+
+  *) apr_snprintf()'s %pI format string now takes apr_sockaddr_t *
+     instead of sockaddr_in *.  [Jeff Trawick]
+
+  *) Fix a bug in apr_accept() for Win32 and Unix where the local 
+     apr_sockaddr_t in the new connected socket was not initialized
+     properly.  This could result in a bad string for apr_get_ipaddr(),
+     among other things.  [Jeff Trawick]
+
+  *) Add apr_getnameinfo(), a replacement for apr_get_hostname() which
+     supports IPv6 and will be friendlier for use with eventual 
+     SOCK_DGRAM support.  apr_get_hostname() is gone.  [Jeff Trawick]
+
+
+Changes with APR a9
+
+  *) Removed the iconv implementation from the i18n/unix/iconv branch.
+     This now resides in the apr-iconv repository, and will be ported
+     over time to use native apr types (e.g. apr_dso) for portability.
+
+  *) Only support IPv6 if we have sockaddr_in and a working 
+     getaddrinfo().  [Jeff Trawick]
+
+  *) Add apr_parse_addr_port() for parsing the hostname:port portion
+     of URLs and similar strings.  [Jeff Trawick]
+
+  *) Add Win32 MMAP support [William Rowe]
+
+  *) Allow the APR programmer to specify if the MMAP is read-only or
+     write-able.
+     [Ryan Bloom and Will Rowe]
+
+  *) Check more carefully for getaddrinfo().  Accept those that
+     require <netdb.h> to be included (e.g., Tru64).  Reject those that 
+     fail a very basic operational test (e.g., AIX).  [Jeff Trawick]
+
+  *) Add apr_make_os_sock() for constructing a fully-capable APR
+     socket.  [Jeff Trawick]
+
+  *) Make APR's shared memory routines always allocate enough memory
+     for the requested segment, the MM internal types, and the APR
+     internal types.
+     [Ryan Bloom]
+
+  *) Add APR_SIZE_T_FMT.  Get the other APR_xx_T_FMT variables
+     defined properly on AIX.  [Jeff Trawick]
+
+  *) network API changes: get rid of apr_get_socket_inaddr(), 
+     apr_get_remote_name(), and apr_get_local_name()  [Jeff Trawick]
+
+  *) Add a step at configure time to create a file at the top-level,
+     apr.exports, which lists every function exported by APR.  The
+     file is generated by a script in helpers, that reads each header
+     file.
+     [Ryan Bloom]
+
+  *) Lock config changes: Detect SysV sem capability by the presence of
+     sempaphore functions, not by the presence of union semun.  New
+     config variable apr_lock_method can override autodetection of the 
+     apr_lock implementation method.  For now, hints.m4 uses it to select 
+     SysV semaphores for OS/390.  New config variable 
+     apr_process_lock_is_global specifies that the selected inter-process
+     lock method is sufficient for APR_LOCKALL (i.e., it blocks all
+     threads and processes).  For now, hints.m4 turns on this flag for
+     OS/390.  [Jeff Trawick]
+     
+  *) Get APR_OFF_T_FMT defined properly on Solaris Sparc.
+     [Jeff Trawick]
+
+
+Changes with APR a8
+
+  *) Change the name of the sa_len field in apr_sockaddr_t to salen.
+     Some platforms have a macro named sa_len.
+     [Tony Finch]
+
+  *) apr_set_port(), apr_get_port(), apr_set_ipaddr(), and apr_get_ipaddr()
+     now take apr_sockaddr_t as a parameter instead of apr_socket_t +
+     apr_interface_e.  This will allow the same routines to be used with
+     datagram APIs to be added later.  Note that code which calls 
+     apr_set_ipaddr() should probably be changed to call apr_getaddrinfo()
+     for protocol independence.  [Jeff Trawick]
+
+  *) apr_create_tcp_socket() has been removed.  Use apr_create_socket()
+     instead.  [Jeff Trawick]
+
+  *) Source was moved from the apache-2.0 repository.  For all CHANGES
+     prior to this time, please see the apache-2.0 repository