| Changes with APR-util 0.9.5 |
| |
| *) Guarantee and require default address alignment for block offsets |
| within segments in the apr_rmm interface. PR 29873. [Joe Orton] |
| |
| *) SECURITY: CAN-2004-0786 (cve.mitre.org) |
| Fix input validation in apr_uri_parse() to avoid passing negative |
| length to memcpy for malformed IPv6 literal addresses. |
| [Joe Orton] |
| |
| *) Fix build issues in paths containing symlinks. PR 8867. |
| [Joe Orton] |
| |
| *) Fix corrupt output from the apr_xlate_* interfaces on AIX 4.x. |
| [Joe Orton] |
| |
| *) Change the order in which ldap.h and lber.h are defined, to fix |
| a compile bug in Solaris v2.8 which requires lber.h then ldap.h. |
| PR 27379. [Andrew Connors <andy.connors idea.com>] |
| |
| *) Restore support for SHA1 passwords in apr_validate_password. |
| PR 17343. [Paul Querna <chip force-elite.com>] |
| |
| *) Fix DESTDIR install for bundled expat library. PR 14076 |
| [David S. Madole <david madole.net>] |
| |
| *) Fix occasional crash in apr_rmm_realloc(). PR 22915. |
| [Jay Shrauner <shrauner inktomi.com>] |
| |
| *) Fix apr_dbm_exists() for sdbm when sizeof(int) != sizeof(size_t). |
| [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] |
| |
| *) Fix xlate.c compile failure on AIX 5.2. PR 25701. [Jeff Trawick] |
| |
| *) Fixed a bug in apr_rmm that would cause it to mishandle blocks of |
| a size close to the one requested from the allocator. |
| [Kevin Wang <xwang_tech yahoo.com>] |
| |
| Changes with APR-util 0.9.4 |
| |
| *) Changed apr_bucket_alloc_create() so that it uses the allocator |
| from the pool that was passed in rather than creating its own. |
| Also, the bucket_allocator is now allocated from the apr_allocator_t |
| rather than using apr_palloc(). Added apr_bucket_alloc_create_ex() |
| which takes an apr_allocator_t* directly rather than an apr_pool_t*. |
| [Cliff Woolley, Jean-Jacques Clar] |
| |
| *) Added debugging consistency checks to the buckets code. Add |
| -DAPR_BUCKET_DEBUG to the build flags to enable. |
| [Cliff Woolley] |
| |
| *) Make the version of the db library APU built against visible. |
| [Thom May] |
| |
| *) Fix a problem with VPATH builds copying the APR rules.mk into the |
| source directory rather than the build directory. [Justin Erenkrantz] |
| |
| *) SECURITY [httpd incident CAN-2003-0189] Address a thread safety |
| issue with apr_password_validate() on AIX, Linux, Mac OS X, and |
| possibly other platforms. [Jeff Trawick, Justin Erenkrantz] |
| |
| *) Fix a problem with LDAP configuration which caused subsequent |
| configure tests to fail since LIBS contained LDAP libraries for |
| subsequent tests but LDFLAGS no longer included the path to such |
| LDAP libraries. [Jeff Trawick] |
| |
| *) Fix a problem preventing the use of the bundled Expat when APR-util |
| is built stand-alone. [Jeff Trawick] |
| |
| *) Use the same compiler and preprocessor for the APR-util config tests |
| which were used by APR. The user can override this via CC and CPP. |
| This was done all along for the actual build, but not necessarily |
| for the config tests. [Jeff Trawick] |
| |
| *) Fix apr_uuid_parse() on EBCDIC machines. [Jeff Trawick] |
| |
| *) Fix alignment problem when allocating memory using apr_rmm. The problem |
| showed up while trying to write a double in the memory allocated. |
| [Madhusudan Mathihalli] |
| |
| Changes with APR-util 0.9.3 |
| |
| *) Allow apr_date_parse_rfc to parse 'Sun, 06-Nov-1994 08:49:37 GMT' as a |
| valid date. [Dmitri Tikhonov <dmitri@netilla.com>] |
| |
| *) Fix error in apu-config when symlinks are involved. |
| [Garrett Rooney <rooneg@electricjellyfish.net>] |
| |
| Changes with APR-util 0.9.2 |
| |
| *) Fix the APR_BUCKET_IS_foo() macros so they parenthesize their parameter. |
| This fixes compile problems with some types of parameters. |
| [Jim Carlson <jcarlson@jnous.com>] |
| |
| *) Queue overwrite, we now return the item pushed, not a reference to it. |
| [Paul Marquis <PMarquis@pobox.com, Jacob Lewallen <jlwalle@cs.ucr.edu>] |
| |
| *) Remove include/apr_ldap.h on distclean. PR 15592. [Justin Erenkrantz] |
| |
| *) Fix race conditions in apr_queue. |
| [Jacob Lewallen <jlwalle@cs.ucr.edu>] |
| |
| *) Stop buildconf copying rules.mk, copy it at configure time. |
| [Thom May] |
| |
| *) Make buildconf copy rules.mk as well. |
| [Garrett Rooney <rooneg@electricjellyfish.net>] |
| |
| *) Add --includedir flag to apu-config. [Justin Erenkrantz] |
| |
| *) Fix brokenness in sdbm when sizeof(int) != sizeof(size_t) |
| (e.g., 64-bit AIX, 64-bit Solaris). PR 14861. [Jeff Trawick] |
| |
| *) Have buildconf copy required files from apr so that apr-util can build |
| on its own. [Craig Rodrigues <rodrigc@attbi.com>] |
| |
| *) Detect OpenLDAP when used with Solaris 9. PR 13427. |
| [Gary Algier <gaa@ulticom.com>] |
| |
| *) Detect Berkeley DB 4.1 when compiled with --with-uniquenames |
| [Thom May] |
| |
| *) Allow apu-config to work in symlinked install directories when |
| 'realpath' is available. [Justin Erenkrantz] |
| |
| *) Fix bug in apr_strmatch when used with case-insensitive patterns. |
| [Justin Erenkrantz] |
| |
| *) Allow apr_queue to have greater than int number of elements. |
| [Justin Erenkrantz] |
| |
| *) Detect Berkeley DB 4.0 compiled with --with-uniquenames. |
| [Philip Martin <philip@codematters.co.uk>] |
| |
| *) Allocate brigades from a bucket allocator rather than a pool. [Brian Pane] |
| |
| *) Update with the latest APR renames [Thom May] |
| |
| *) Update doxygen tags. [Justin Erenkrantz] |
| |
| *) Add apr_ldap.hw for Windows build. |
| [Andre Schild <A.Schild@aarboard.ch>] |
| |
| *) Add IPv6 literal address support to apr_uri_parse(), apr_uri_unparse(), |
| and apr_uri_parse_hostinfo(). PR 11887 [Jeff Trawick] |
| |
| *) Add apr_brigade_writev() [Brian Pane] |
| |
| *) Add support for Berkeley DB 4.1. [Justin Erenkrantz] |
| |
| *) Add --bindir option to apu-config. [Justin Erenkrantz] |
| |
| Changes with APR-util 0.9.1 |
| |
| *) Add versioning infrastructure. |
| [Justin Erenkrantz] |
| |
| *) Running "make check" in the toplevel directory or the test/ directory |
| will build and run all test programs. [Aaron Bannert] |
| |
| *) Bug #9789 : NDBM support |
| [Toomas Soome <tsoome@muhv.pri.ee>, Ian Holsman] |
| |
| *) Added a Thread safe FIFO bounded buffer (apr_queue) [Ian Holsman] |
| |
| *) Changed file_bucket_setaside() to use apr_file_setaside() instead |
| of turning the file bucket into an mmap bucket. [Brian Pane] |
| |
| *) Install libaprutil support libraries before installing libaprutil |
| itself, since on some platforms libaprutil is relinked during |
| make install and the support libraries need to exist already. |
| [Jeff Trawick] |
| |
| *) Added a Resource List API for threadsafe access to persistent |
| and dynamically created user-defined resources. [Aaron Bannert] |
| |
| *) Adopted apr-util/xlate from apr/i18n for inclusion of apr-iconv |
| as required by missing libiconv. [William Rowe] |
| |
| *) Adopted apr-util/crypto/ uuid and md5 from apr. [William Rowe] |
| |
| *) Look for expat in lib64 directories. [Peter Poeml <poeml@suse.de>] |
| |
| *) Faster implementation of apr_brigade_puts() [Brian Pane] |
| |
| *) Fixed a segfault in apr_date_parse_rfc() for some date formats |
| where it was trying to overlay a potentially static input |
| string even though it didn't really need to. |
| [Cliff Woolley, Doug MacEachern] |
| |
| *) Ensure that apu-config does not print libtool libraries when |
| using --libs. [Justin Erenkrantz] |
| |
| *) Added apr_bucket_file_enable_mmap() function to the bucket |
| API to let an application control whether a file bucket may |
| be turned into an mmap bucket upon read. (The default remains |
| to do the mmap, but this function lets the app prevent the |
| mmap in contexts where mmap would be a bad idea. Examples |
| include multiprocessors where mmap doesn't scale well and |
| NFS-mounted filesystems where a bus error can result if |
| a memory-mapped file is removed or truncated.) [Brian Pane] |
| |
| *) Added string-matching API (apr_strmatch.h) [Brian Pane] |
| |
| *) Rearrange INCLUDES so that APRUTIL_PRIV_INCLUDES is always |
| first. [Garrett Rooney <rooneg@electricjellyfish.net>] |
| |
| *) Add --old-expat option to apu-config to allow users of apr-util to |
| determine what expat it should expect to be installed. If the |
| flag is set to yes, it should include xmlparse.h. If it is set to |
| no, it should include expat.h. [Justin Erenkrantz] |
| |
| *) Fix exporting of includes in apu-config. [Justin Erenkrantz] |
| |
| *) Change bucket brigades API to allow a "bucket allocator" to be |
| passed in at certain points. This allows us to implement freelists |
| so that we can stop using malloc/free so frequently. |
| [Cliff Woolley, Brian Pane] |
| |
| *) add apr_rmm_realloc() function |
| [Madhusudan Mathihalli <madhusudan_mathihalli@hp.com>] |
| |
| *) renames: apr_ansi_time_to_apr_time becomes apr_time_ansi_put |
| ap_exploded_time_t becomes apr_time_exp_t |
| [Thom May <thom@planetarytramp.net>] |
| |
| *) Add detection support for FreeBSD's expat and expat2 ports. |
| [Justin Erenkrantz] |
| |
| *) Deprecate check_brigade_flush(), which had several nasty bugs, and |
| which was causing apr_brigade_write()'s logic to be less than obvious. |
| Everything is now done in a slightly rearranged apr_brigade_write(). |
| [Cliff Woolley] |
| |
| *) Don't add /usr/include to the INCLUDES variable on expat's account. |
| [Joe Orton <joe@manyfish.co.uk>] |
| |
| *) Remove the autoconf 2.5x cache directory in buildconf. |
| [Joe Orton <joe@manyfish.co.uk>] |
| |
| *) BerkleyDB should NULL out the key if it is @EOF in vt_db_nextkey |
| [Ian Holsman] |
| |
| *) Add ability to natively fetch and split brigades based on LF lines. |
| [Justin Erenkrantz] |
| |
| *) add --with-berkeley-db=DIR & --with-gdbm configure flags |
| [Ian Holsman/Justin Erenkrantz] |
| |
| *) Fix expat detection to recognize installed versions. |
| [Eric Gillespie, Jr. <epg@pretzelnet.org>] |
| |
| *) Add find_apu.m4 to allow third-party programs that use APR-util |
| to have a standard m4 macro for detection. [Justin Erenkrantz] |
| |
| *) Add apu-config - a shell script to allow third-party programs |
| easy access to APR configuration parameters. [Justin Erenkrantz] |
| |
| *) Add GMT offset calculation to apr_date_parse_rfc(). |
| [Justin Erenkrantz] |
| |
| *) Introduce the apr_rmm api, to allow relocatable memory management |
| of address-independent data stores, such as shared memory. |
| [William Rowe] |
| |
| *) Rework and fix VPATH-build support. [Justin Erenkrantz] |
| |
| *) Add support for Berkeley DB4. [Justin Erenkrantz] |
| |
| *) Improve testdbm help. [Justin Erenkrantz] |
| |
| *) Improve autoconf detection of DBMs. [Justin Erenkrantz] |
| |
| *) BerkeleyDBM v2 now checks minor level for cursor ops [Ian Holsman] |
| |
| *) Reading a file bucket bigger than APR_MMAP_LIMIT (4MB) now yields |
| a string of 4MB mmap buckets, rather than a string of 8KB heap buckets |
| plus a 4MB mmap bucket. To accomodate this, the mmap bucket destroy |
| function explicitly deletes the apr_mmap_t after last reference |
| to avoid having too much of a large file mapped at once if possible. |
| [Cliff Woolley] |
| |
| *) Multi-DBM support (via apr_dbm_open_ex). [Ian Holsman] |
| |
| *) Use apr_mmap_dup in mmap_setaside(). [Brian Pane <bpane@pacbell.net>] |
| |
| *) Dropped the "w" parameter from apr_bucket_heap_create() and |
| apr_bucket_heap_make(). That parameter was originally intended |
| to return the amount of data copied into the bucket, but it |
| ended up being unnecessary because that amount is invariant from |
| the size of the data and is available as b->length in the |
| resulting bucket anyway. [Cliff Woolley] |
| |
| *) Fix Makefile conversion for BSD/OS. [Cliff Woolley] |
| |
| *) Use APR_XtOffsetOf instead of offsetof() in the ring macros for |
| portability. [Cliff Woolley] |
| |
| *) 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: aprutil.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-util symbols. [Aaron Bannert] |
| |
| *) Fix Berkley DBM support [Ian Holsman <ianh@apache.org>] |
| |
| *) Fix apr_brigade_vprintf so that it can handle more than |
| 4k of data at one time. [Cody Sherr <csherr@covalent.net>] |
| |
| *) prefix UNP_* flags with APR_URI_ |
| |
| rename: |
| apr_uri_components -> apr_uri_t |
| apr_uri_unparse_components -> apr_uri_unparse |
| apr_uri_parse_components -> apr_uri_parse |
| apr_uri_parse_hostinfo_components -> apr_uri_parse_hostinfo |
| |
| s/APU_URI_/APR_URI_/g |
| [Perl] |
| |
| *) Landed the link-to-LDAP to the build process, and the LDAP v2/v3 |
| compatibility functions. |
| [Dave Carrigan <dave@rudedog.org>, Graham Leggett] |
| |
| *) Fix URI unparse function to handle the case where it would place a @ |
| when both the username and password were present but omitted. |
| [Jon Travis <jtravis@covalent.net] |
| |
| *) Added apr_xml_parse_file() routine and a testxml program. |
| [Ian Holsman <ianh@cnet.com>] |
| |
| *) Extend apr_bucket struct to add a pointer to a function used |
| to free the bucket. This change enables custom buckets to |
| completely specify how they are to be allocated and freed. |
| Before this change, custom buckets were required to use the |
| same memory allocation scheme as the standard APR buckets. |
| [Saeid Sakhitab, Bill Stoddard, Cliff Woolley, Roy Fielding] |
| |
| *) Install Expat when installing APR-util. [Justin Erenkrantz] |
| |
| *) Make APR-util configure script rely on APR. This removes the locally |
| generated copy of libtool and uses the one in APR. Fix up how we |
| call the expat configure script. Generate config.nice file. |
| [Justin Erenkrantz] |
| |
| *) The apr_bucket lengths are now consistently apr_size_t, while any |
| apr_brigade lengths (short of a read) are consistently apr_off_t. |
| This is required for APR_HAS_LARGE_FILES handling. [William Rowe] |
| |
| *) apr_bucket_file_create() and apr_bucket_file_make() now take a pool |
| parameter which is the pool into which any needed data structures |
| should be created during file_read(). This is used for MMAPing the |
| file and reopening the file if the original apr_file_t is in XTHREAD |
| mode. [Cliff Woolley] |
| |
| *) apr_brigade_partition() now returns an apr_status_t. [Cliff Woolley] |
| |
| *) Add MD4 implementation in crypto. [Sander Striker, Justin Erenkrantz] |
| |
| *) Moved httpd 2.0.18's util_date to apr_date and enhanced its parsing |
| capabilities. [Justin Erenkrantz] |
| |
| *) Moved httpd 2.0.18's util_uri to apr_uri and name-protected its |
| symbols and functions. [Justin Erenkrantz, Roy Fielding] |
| |
| *) Rename field "private" in struct apr_xml_elem to "priv" for C++ |
| compatibility. PR #7727 [Joshua MacDonald <jmacd@cs.berkeley.edu>] |
| |
| *) Make APR_IMPLEMENT_EXTERNAL_HOOK_BASE generate a |
| ${namespace}_hook_get_${hookname} function to fetch the |
| list of registered hooks [Doug MacEachern] |
| |
| *) Allow LTFLAGS to be overridden by the configure command-line |
| (default="--silent") and introduce LT_LDFLAGS. [Roy Fielding] |
| |
| *) Add APR_SHARELOCK support to apr_sdbm_open(), locking read operations |
| with a shared lock and all write ops with an excl lock. [Will Rowe] |
| |
| *) Namespace protect apr_sdbm, and normalize the return values (including |
| the apr_sdbm_fetch, apr_sdbm_firstkey and apr_sdbm_nextkey functions). |
| Normalized the get/clear error function names, and stores the actual |
| apr error for apr_sdbm_error_get. [Will Rowe] |
| |
| *) Introduce an apr_fileperms_t argument to apr_dbm_open(). [Will Rowe] |
| |
| *) Removed apr_bucket_do_create() macro, which was causing warnings |
| about unreachable code in some compilers (notably MSVC). What |
| used to be done by this macro is now done inline in the various |
| apr_bucket_foo_create() functions. [Cliff Woolley] |
| |
| *) Make clean, distclean, and extraclean consistently according to the |
| Gnu makefile guidelines. [Justin Erenkrantz <jerenkrantz@ebuilt.com>] |
| |
| *) Migrate the --disable-libtool changes from APR to APR-util. |
| This cleans things up, and allows more flexibility when building |
| programs. [Ryan Bloom] |
| |
| *) Allow APR-util to be compiled without libtool. The default is |
| to use libtool, but it can turned off with --disable-libtool |
| on the configure command. [Ryan Bloom] |
| |
| *) Repair calling convention for apr_register_optional_fn to |
| eliminate GP fault on Win32. [William Rowe] |
| |
| *) Substantial changes to correct linkage and declarations for |
| generic hooks on dso architectures. [Ben Laurie, Will Rowe] |
| |
| *) apr_bucket_shared_destroy() now returns a boolean value. |
| [Cliff Woolley] |
| |
| *) We have to initialize the heap buckets to the correct length. |
| we were seeing heap buckets with 17 chars in them reporting |
| a length of 9017, because they were initialized to the amount |
| of memory allocated, instead of the amount of memory used. |
| This was only an issue for heap buckets created by the |
| apr_brigade_* functions. [Ryan Bloom] |
| |
| *) apr_bucket_init_types() and apr_bucket_insert_type() have been |
| removed... they're not needed anymore. [Cliff Woolley] |
| |
| *) The apr_bucket_shared and apr_bucket_simple structures have been |
| removed as an API simplification/optimization. This should be |
| transparent outside APR-util except to callers who attempt to |
| directly manipulate the buckets' internal structure (which is |
| not recommended anyway) and to callers who create their own |
| bucket types. [Cliff Woolley] |
| |
| *) apr_bucket_simple_split() and apr_bucket_simple_copy() are now |
| exported functions, which could be helpful in implementing |
| external bucket types. [Cliff Woolley] |
| |
| *) The third parameter to apr_bucket_shared_make() is now |
| 'apr_off_t length' rather than 'apr_off_t end', since the |
| end usually had to be computed by the caller and all we |
| really want is the length anyway. [Cliff Woolley] |
| |