-*- coding: utf-8 -*- Changes for APR 1.2.13 *) apr_mcast_hops: Fix EINVAL for IPv6 sockets caused by using byte instead integer for setsockopt. [Mladen Turk] *) Fix flag character '#' in combination with format character 'x' in apr snprintf implementations. [Rainer Jung] *) Fix return value when apr_pollset_poll interrupted. PR 42580 [Basant Kumar Kukreja ] *) z/OS: return standard apr_status_t codes from apr_dso_load() and apr_dso_sym(). [David Jones ] *) Fix the make test target in the spec file. [Graham Leggett] Changes for APR 1.2.12 *) Numerous fixes to the test/ framework, including better handling of long size_t comparisons and more consistent Makefile.(in|win) setup for authoring new tests. [William Rowe] *) Win32 build fixes including a Makefile.win scheme, fixes for 64P model x86_64 compiles and VC8 builds. [William Rowe] *) Fix --disable-ipv6 build on platforms with getifaddrs(). PR 39199. [Joe Orton] *) Fix DSO-related crash on z/OS caused by incorrect memory allocation. [David Jones ] *) 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 ] *) Implement apr_atomic_casptr() for z/OS. [David Jones ] *) Fill in apr_fileinfo_t member st_csize on Netware and Unix (PR 41678), and refine the file times down to apr_time_t resolution if supported by a st_atimensec or st_atim.tv_nsec value by the OS. Additional msec implementations are possible if exposed through autoconf. [William Rowe, Nicklas Edmundsson ] *) Fix apr_socket_recvfrom() to ensure the peer's port and address is returned through the "from" parameter on Unix and Win32. [Joe Orton, William Rowe] *) The WIN32 cleanup routine for shared memory segments could wrongly return unknown errors and leak a open handle. [Joe Mudd ] *) apr_procattr_io_set() on Windows: Set non-blocking pipe handles to a default timeout of 0, following the Unix default. No effect on pipe handles configured to block. PR 43522. [Eric Covener ] *) apr_file_write() on Windows: Fix return code when writing to a non- blocking pipe would have blocked. PR 43563. [Eric Covener ] *) 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 1.2.8 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 for APR 1.2.11 *) Fix handling of EINTR from read() in apr_generate_random_bytes() on platforms with /dev/random. PR 39790. [Joe Orton] *) Win32 apr_file_read: Correctly handle completion-based read-to-EOF. [Steven Naim ] *) Fixed Win32 regression of stdout inheritance in apr_proc_create. [William Rowe] Changes for APR 1.2.10 *) 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). [Erik Huelsmann ] *) Fix day of year (tm_day) calculation for July. The bug only affects Windows builds. PR 42953. [Davi Arnaut] *) Fix LFS detection when building over NFS. The mode must be specified when O_CREAT is in the flags to open(). PR 42821. [Rainer Jung ] *) Avoid overwriting the hash_mutex table for applications that incorrectly calls apr_atomic_init(). PR 42760. [Davi Arnaut] *) Allow IPv6 connectivity test to fail, avoiding a potentially fatal error. [Davi Arnaut] *) The MinGW Windows headers effectively redefines WINADVAPI from __stdcall to empty which results in a link failure when wincrypt.h is placed after an include to apr_private.h. PR 42293. [Curt Arnold] *) Define SEM_FAILED if it isn't already defined, as the proc mutex code already does it. Also search for the sem_open function in the realtime library. (This fixes HP-UX sem_open detection). [Davi Arnaut] *) Define the _HPUX_SOURCE feature test macro to obtain maximum functionality. Fixes broken sendfile with LFS support on HP-UX. PR 42261. [Davi Arnaut] Changes for APR 1.2.9 *) Stop invoking the testshm* helpers upon 'make test' invocation. [Kurt Miller ] *) Register a cleanup only if APR_FILE_NOCLEANUP was not flagged in apr_file_mktemp. [Brian J. France ] *) Numerous build fixes for non-GCC builds and GCC builds on Win32, as well as WinCE builds. [Davi Arnaut , Curt Arnold , John Mark Vandenberg, Kouhei Sutou , William Rowe] *) Discard file buffers when running cleanups for exec. PR 41119. [Davi Arnaut , Bojan Smojver] *) If apr_proc_create() fails to exec in the fork()ed child, call _exit() not exit() to avoid running atexit()-registered functions in the child. PR 30913. [Joe Orton] *) Improve thread safety of assorted file_io functions. PR 42400. [Davi Arnaut ] *) Fix file pointer position calculation in apr_file_writev() on buffered file. PR 40963. [Davi Arnaut ] *) Fix formatting of unsigned integers larger than 2^63 in the vformatter/apr_*printf. PR 42250. [Wynn Wilkes ] *) Fix possible EFAULT failures in apr_socket_sendfile() on 32-bit Solaris with LFS enabled. PR 39463. [Joe Orton, Joseph Tam ] *) Fix deadlock in apr_file_gets() for a file opened with both the APR_BUFFERED and APR_XTHREAD flags. [Bojan Smojver, Joe Orton] Changes for APR 1.2.8 *) Correctly retrieve 'empty' environment values with apr_env_get on Win32 (e.g. "VAR="), and added validation to testall suite. PR 40764. [Issac Goldstand ] *) APR_FIND_APR macro no longer checks /usr/local/apache2/. PR 40842. [Colm MacCárthaigh] *) Portably check for EEXIST in mktemp code. PR 40818 [Kenneth Golomb ] *) Fix apr_snprintf/apr_vsnprintf return value to not count the NUL terminator in the overflow case. PR 39996. [Michal Luczaj ] *) Provide folding in autogenerated .manifest files for Win32 builders using VisualStudio 2005 [William Rowe] *) Fix detection of pthread cross-process robust mutexes. PR 39833. [Tsuyoshi SASAMOTO ] *) NetBSD: Avoid leaving zombie process when using apr_signal() to ignore SIGCHLD. PR 36750. [Todd Vierling ] *) Fix apr_socket_sendv() for platforms without writev. PR 38822. [Joe Orton] *) Avoid issues using >2Gb of data per call with sendfile() on 64-bit Linux platforms. [Joe Orton] Changes for APR 1.2.7 *) Netware - add missing apu_version.c parsing for apu_version_string() to the Netware specific builds. Unix platforms support this API since 0.9.1. [Brad Nicholes] *) Fix a regression in the updated win32 apr_file_read with timeouts since 1.2.6 which would fail to return the bytes read in specific edge cases. [William Rowe] Changes for APR 1.2.6 *) Fully test the detected libuuid or libc based uuid_create or uuid_generate function against the detected uuid.h, uuid/uuid.h, or sys/uuid.h (using only the first-found .h examined in that order) for correct compilation. Resolves various apr_os_uuid issues on multiple environments. [William Rowe] *) Prevent detection of robust mutex support with glibc 2.4, fixing APR_LOCK_PROC_PTHREAD locks. PR 38442. [Joe Orton] *) Correct bug in kqueue backend for apr_pollset where we would erroneously indicate that a socket was readable or writeable. [Garrett Rooney] *) Make the filePtr in apr_file_t an apr_off_t on Unix, to avoid issues truncating offsets down to 32 bits on large file systems. [Garrett Rooney] *) Fix seeks with files opened in xthread mode for append on win32. [M Joonas Pihlaja , 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 [] *) Fix assertion from double close of a handle with a rwlock on win32. [Evgueni Brevnov ] *) Fix EOF handling for unbuffered reads on win32. [Konstantin Sharenkov ] *) 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 *) Bugfix for apr_pollset_poll() on systems that implement pollsets using select(2): properly compute the number of signalled desciptors when one or more of them are both readable and writable. [Dror Shilo , Gerry ] *) Fix apr_file_seek() to catch write failures when flushing pending writes for a buffered file. [Joe Orton] Changes for APR 1.2.2 *) 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 ] *) Fix apr_socket_opt_set() issue where TCP_NODELAY would be set when TCP_DEFER_ACCEPT was set. [Brian Pane] *) Allow TCP_NODELAY and TCP_CORK to be set concurrently on Linux 2.6 and later. [Joe Orton] *) Fix apr_socket_addr_get(,APR_REMOTE,) after a non-blocking connection is completed. PR 32737. [Joe Orton] *) Fix apr_file_gets() and 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 ] *) Fix error handling where apr_uid_* and apr_gid_* could return APR_SUCCESS in failure cases. PR 34053 continued. [Joe Orton] Changes for APR 1.2.1 *) Refactor Win32 condition variables code to address bugs 27654, 34336. [Henry Jen , E Holyat ] Changes for APR 1.2.0 *) If getpwuid_r or getgrgid_r set their results to NULL, it is an error. PR 34053. [Paul Querna] *) Switch to lazy initialization of the pollset that's used within apr_file_t on platforms where apr_wait_for_io_or_timeout() doesn't use poll(2). (This fixes a performance problem observed in httpd-2.x on OS X due to the use of poll now being disabled by default on that platform.) [Brian Pane] *) Fix Pollset corruption on Solaris 10. [Paul Querna] *) Add %pt support to apr_snprintf() for printing an apr_os_thread_t in hex format. [Jeff Trawick] *) Support APR_SO_SNDBUF and APR_SO_RCVBUF on Windows. PR 32177. [Sim , Jeff Trawick] *) Fix apr_table_overlap()'s handling of tables allocated from different pools. [Joe Schaefer ] *) Add support for uuid_generate on OS X 10.4. [Paul Querna] *) Include the C preprocessor flags in --cflags for pkg-config. [Paul Querna] *) Fix issue with poll() followed by net I/O yielding EAGAIN on Mac OS 10.4 (Darwin 8). [Wilfredo Sanchez] Changes for APR 1.1.x and later: *) http://svn.apache.org/viewvc/apr/apr/branches/1.1.x/CHANGES?view=markup Changes for APR 1.0.x and later: *) http://svn.apache.org/viewvc/apr/apr/branches/1.0.x/CHANGES?view=markup Changes for APR 0.9.x and later/earlier: *) http://svn.apache.org/viewvc/apr/apr/branches/0.9.x/CHANGES?view=markup