Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 28 Jul 2013 05:14:54 +0000 (UTC)
From:      Peter Wemm <peter@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org
Subject:   svn commit: r253732 - in vendor/apr-util: . dist dist/buckets dist/crypto dist/dbd dist/dbm dist/hooks dist/include dist/include/private dist/ldap dist/memcache dist/misc dist/test dist/uri
Message-ID:  <201307280514.r6S5EsA7097707@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: peter
Date: Sun Jul 28 05:14:54 2013
New Revision: 253732
URL: http://svnweb.freebsd.org/changeset/base/253732

Log:
  Import Apache apr-util-1.5.2 into vendor staging area.

Added:
  vendor/apr-util/dist/crypto/apr_passwd.c
  vendor/apr-util/dist/crypto/crypt_blowfish.c
  vendor/apr-util/dist/crypto/crypt_blowfish.h
Deleted:
  vendor/apr-util/dist/aprutil.dsp
  vendor/apr-util/dist/crypto/apr_crypto_nss.dsp
  vendor/apr-util/dist/crypto/apr_crypto_openssl.dsp
  vendor/apr-util/dist/dbd/apr_dbd_freetds.dsp
  vendor/apr-util/dist/dbd/apr_dbd_mysql.dsp
  vendor/apr-util/dist/dbd/apr_dbd_odbc.dsp
  vendor/apr-util/dist/dbd/apr_dbd_oracle.dsp
  vendor/apr-util/dist/dbd/apr_dbd_pgsql.dsp
  vendor/apr-util/dist/dbd/apr_dbd_sqlite2.dsp
  vendor/apr-util/dist/dbd/apr_dbd_sqlite3.dsp
  vendor/apr-util/dist/dbm/apr_dbm_db.dsp
  vendor/apr-util/dist/dbm/apr_dbm_gdbm.dsp
  vendor/apr-util/dist/ldap/apr_ldap.dsp
  vendor/apr-util/dist/libaprutil.dsp
  vendor/apr-util/dist/test/testutildll.dsp
  vendor/apr-util/dist/test/testutillib.dsp
Modified:
  vendor/apr-util/FREEBSD-Xlist
  vendor/apr-util/dist/CHANGES
  vendor/apr-util/dist/Makefile.win
  vendor/apr-util/dist/NWGNUmakefile
  vendor/apr-util/dist/apr-util.spec
  vendor/apr-util/dist/buckets/apr_brigade.c
  vendor/apr-util/dist/buckets/apr_buckets_alloc.c
  vendor/apr-util/dist/build-outputs.mk
  vendor/apr-util/dist/build.conf
  vendor/apr-util/dist/configure
  vendor/apr-util/dist/configure.in
  vendor/apr-util/dist/crypto/apr_crypto.c
  vendor/apr-util/dist/crypto/apr_crypto_nss.c
  vendor/apr-util/dist/crypto/apr_crypto_openssl.c
  vendor/apr-util/dist/crypto/apr_md5.c
  vendor/apr-util/dist/dbd/NWGNUdbdmysql
  vendor/apr-util/dist/dbd/apr_dbd_freetds.c
  vendor/apr-util/dist/dbd/apr_dbd_mysql.c
  vendor/apr-util/dist/dbd/apr_dbd_pgsql.c
  vendor/apr-util/dist/dbd/apr_dbd_sqlite2.c
  vendor/apr-util/dist/hooks/apr_hooks.c
  vendor/apr-util/dist/include/apr_base64.h
  vendor/apr-util/dist/include/apr_buckets.h
  vendor/apr-util/dist/include/apr_md5.h
  vendor/apr-util/dist/include/apr_queue.h
  vendor/apr-util/dist/include/apu.h.in
  vendor/apr-util/dist/include/apu_version.h
  vendor/apr-util/dist/include/private/apr_crypto_internal.h
  vendor/apr-util/dist/memcache/apr_memcache.c
  vendor/apr-util/dist/misc/apr_thread_pool.c
  vendor/apr-util/dist/test/Makefile.in
  vendor/apr-util/dist/test/Makefile.win
  vendor/apr-util/dist/test/NWGNUmakefile
  vendor/apr-util/dist/test/testbuckets.c
  vendor/apr-util/dist/test/testmd5.c
  vendor/apr-util/dist/test/testmemcache.c
  vendor/apr-util/dist/test/testpass.c
  vendor/apr-util/dist/test/testuri.c
  vendor/apr-util/dist/test/testutil.c
  vendor/apr-util/dist/test/testutil.h
  vendor/apr-util/dist/uri/apr_uri.c

Modified: vendor/apr-util/FREEBSD-Xlist
==============================================================================
--- vendor/apr-util/FREEBSD-Xlist	Sun Jul 28 05:07:11 2013	(r253731)
+++ vendor/apr-util/FREEBSD-Xlist	Sun Jul 28 05:14:54 2013	(r253732)
@@ -1,2 +1,5 @@
 build
 xml/expat
+*.mak
+*.dep
+*.dsp

Modified: vendor/apr-util/dist/CHANGES
==============================================================================
--- vendor/apr-util/dist/CHANGES	Sun Jul 28 05:07:11 2013	(r253731)
+++ vendor/apr-util/dist/CHANGES	Sun Jul 28 05:14:54 2013	(r253732)
@@ -1,45 +1,100 @@
                                                      -*- coding: utf-8 -*-
-Changes with APR-Util 1.4.1
+Changes with APR-util 1.5.2
 
-  *) Apply Windows build fixes for the apr_crypto API. [Mladen Turk]
+  *) Windows: Add command line makefiles. [Gregg Smith]
 
-Changes with APR-util 1.4.0
+  *) apr_uri_parse(): Do not accept invalid characters in the scheme.
+     Per RFC 3986 3.3, enforce that the first segment of a relative path does
+     not contain a colon. PR 52479. [Stefan Fritsch]
 
-  *) apr_ldap_init: Pass secure=1 to ldapssl_init() with Solaris LDAP SDK.
-     PR: 42682 [Stefan Fritsch]
+  *) Fix memory leak in hook sorting function. PR 51256.
+     [<horowity checkpoint com>]
 
-  *) apr_memcache_server_create: Fix possible segfault. PR 51064.
-     [Michajlo Matijkiw <michajlo_matijkiw comcast com>]
+  *) Speedup md5 calculation by avoiding some copying on little endian
+     architectures. PR 49011. [Stefan Fritsch, Stefan Fuhrmann
+     <stefanfuhrmann alice-dsl de>]
 
-  *) apr_thread_pool: Fix thread unsafe pool usage. [Stefan Fritsch]
+  *) Use heap memory for crypt in apr_password_validate(), to reduce stack
+     usage. PR 54572. [Stefan Fritsch]
 
-  *) Do not include apr.h and apr_errno.h from system search path in
-     apu_errno.h. PR 46487 [Rainer Jung]
+  *) Fix password validation failure for all crypt and crypt_r based
+     algorithms. PR 54603.  [Harvey Eneman <harvey.eneman oracle.com>]
 
-  *) Add optional dbm, openssl and nss subpackages to the RPM spec file.
-     [Graham Leggett]
+  *) Fix syntax error in crypto/apr_passwd.c on non-glibc systems. PR 54275.
+     [Stefan Fritsch]
 
-  *) apr_dbd_freetds: The sybdb.h header file might be freetds/sybdb.h
-     or sybdb.h. [Graham Leggett]
+  *) Fix potential data corruption in apr_brigade_write() and friends if
+     the last bucket of the brigade is a heap bucket that has been split,
+     and there are still references to the next part of the original bucket
+     in use. [Stefan Fritsch]
 
-  *) Add apr_crypto implementations for OpenSSL and Mozilla NSS. Add a unit
-     test to verify the interoperability of the two modules. Builds default
-     to disabled unless explicitly enabled.
-     [Graham Leggett]
+  *) Remove duplicated logic in apr_brigade_puts(). PR 53740. [Christophe
+     Jaillet <christophe jaillet wanadoo fr>]
 
-  *) Add the apr_crypto interface, a rewrite of the earlier apr_ssl code,
-     based on the modular dso interface used for dbd and ldap. Initially,
-     the interface supports symmetrical encryption and decryption. The
-     purpose of the interface is to offer portable and interoperable
-     access to basic crypto using the native crypto libraries present on
-     each platform.  [Graham Leggett]
+  *) apr_crypto: If --with-crypto is passed to configure but no crypto
+     libraries are enabled, autodetect available libraries.  [Jeff Trawick]
 
-  *) Add trace probes to hooks, making it easier to inspect APR Hook based
-     applications with DTrace or other such mechanisms.
-     [Theo Schlossnagle <jesus omniti.com>, generalized by Jeff Trawick]
+  *) memcache: Fix dead server retry logic.  [Gavin Shelley <columbusmonkey me.com>]
 
-  *) Implement resource list when threads are unavailable. PR 24325
-     [Bojan Smojver]
+Changes with APR-util 1.5.1
+
+  *) testmemcache: Fix crash. PR 52705. [Peter Poeml <peter poeml de>]
+
+  *) MinGW: Support shared builds of apr-util when apr is shared.
+     PR 46175.  [Carlo Bramini <carlo.bramix libero.it>, Jeff Trawick]
+
+  *) Add support for Berkeley DB 5.2 and 5.3. Simplify detection script.
+     PR 53684.  [Rainer Jung]
+
+  *) configure: Allow to specify library specific custom linker flags
+     via the LDADD_XXX variables. [Rainer Jung]
+
+  *) apr_password_validate(): Fix intermittent errors on systems
+     such as FreeBSD where the crypt() function is used.
+     (Broken only in 1.5.0)  [Jeff Trawick]
+
+  *) Improve platform detection for bundled expat by updating
+     config.guess and config.sub. [Rainer Jung]
+
+Changes with APR-util 1.5.0
+
+  *) dbd_pgsql_escape: Use PQescapeStringConn. [Nick Kew]
+
+  *) apr_password_validate, apr_bcrypt_encode: Add support for bcrypt encoded
+     passwords. The bcrypt implementation uses code from crypt_blowfish
+     written by Solar Designer <solar openwall com>. apr_bcrypt_encode creates
+     hashes with "$2y$" prefix, but apr_password_validate also accepts the old
+     prefix "$2a$". PR 49288. [Stefan Fritsch]
+
+  *) APR dbd: Allow to use apr_dbd_get_row() with a different pool than
+     apr_dbd_select(). PR 53533. [<arthur echo gmail com>]
+
+  *) APR dbd FreeTDS support: Fix spurious API errors caused by uninitialized
+     fields.  [TROY.LIU 劉春偉 <TROY.LIU deltaww.com.cn>]
+
+  *) apr_password_validate: Increase maximum hash string length to allow
+     more than 9999 rounds with sha512-crypt. PR 53410. [Stefan Fritsch]
+
+  *) Fix segfaults in crypt() and crypt_r() failure modes.
+     PR 47272.  [Arkadiusz Miskiewicz <arekm pld-linux.org>]
+
+  *) apr_crypto: Ensure that the if/else that governs the static
+     initialisation of each crypto driver works when the first driver
+     isn't in use. [Graham Leggett]
+
+  *) apr_crypto: Ensure the *driver variable is initialised when a statically
+     compiled library is initialised for the first time. [Graham Leggett]
+
+  *) apr_crypto: Ensure the *driver variable is initialised when the library
+     has already been loaded. Fix ported from apr_dbd. [Graham Leggett]
+
+  *) apr_crypto: Move the static initialisation of DRIVER_LOAD from
+     apr_crypto_init() to apr_crypto_get_driver(), so that we don't lose
+     the parameters. [Graham Leggett]
+
+Changes with APR-util 1.4.x and later:
+
+  *) http://svn.apache.org/viewvc/apr/apr-util/branches/1.4.x/CHANGES?view=markup
 
 Changes for APR-util 1.3.x and later:
 

Modified: vendor/apr-util/dist/Makefile.win
==============================================================================
--- vendor/apr-util/dist/Makefile.win	Sun Jul 28 05:07:11 2013	(r253731)
+++ vendor/apr-util/dist/Makefile.win	Sun Jul 28 05:14:54 2013	(r253732)
@@ -7,7 +7,7 @@
 #     install  - compile everything
 #     clean    - mop up everything
 #
-# You can override the build mechansim, choose only one;
+# You can override the build mechanism, choose only one;
 #
 #     USEMAK=1 - compile from exported make files
 #     USEDSW=1 - compile from .dsw / .dsp VC6 projects

Modified: vendor/apr-util/dist/NWGNUmakefile
==============================================================================
--- vendor/apr-util/dist/NWGNUmakefile	Sun Jul 28 05:07:11 2013	(r253731)
+++ vendor/apr-util/dist/NWGNUmakefile	Sun Jul 28 05:14:54 2013	(r253732)
@@ -259,6 +259,7 @@ FILES_lib_objs = \
 	$(OBJDIR)/apr_md4.o \
 	$(OBJDIR)/apr_md5.o \
 	$(OBJDIR)/apr_memcache.o \
+	$(OBJDIR)/apr_passwd.o \
 	$(OBJDIR)/apr_queue.o \
 	$(OBJDIR)/apr_reslist.o \
 	$(OBJDIR)/apr_rmm.o \
@@ -269,6 +270,7 @@ FILES_lib_objs = \
 	$(OBJDIR)/apr_strmatch.o \
 	$(OBJDIR)/apr_thread_pool.o \
 	$(OBJDIR)/apr_uri.o \
+	$(OBJDIR)/crypt_blowfish.o \
 	$(OBJDIR)/sdbm.o \
 	$(OBJDIR)/sdbm_hash.o \
 	$(OBJDIR)/sdbm_lock.o \

Modified: vendor/apr-util/dist/apr-util.spec
==============================================================================
--- vendor/apr-util/dist/apr-util.spec	Sun Jul 28 05:07:11 2013	(r253731)
+++ vendor/apr-util/dist/apr-util.spec	Sun Jul 28 05:14:54 2013	(r253732)
@@ -3,7 +3,7 @@
 
 Summary: Apache Portable Runtime Utility library
 Name: apr-util
-Version: 1.4.1
+Version: 1.5.2
 Release: 1
 License: Apache Software License
 Group: System Environment/Libraries

Modified: vendor/apr-util/dist/buckets/apr_brigade.c
==============================================================================
--- vendor/apr-util/dist/buckets/apr_brigade.c	Sun Jul 28 05:07:11 2013	(r253731)
+++ vendor/apr-util/dist/buckets/apr_brigade.c	Sun Jul 28 05:14:54 2013	(r253732)
@@ -391,17 +391,30 @@ APU_DECLARE(apr_status_t) apr_brigade_vp
                                                void *ctx,
                                                va_list va)
 {
+#define MAX_VECS    8
+    struct iovec vec[MAX_VECS];
+    apr_size_t i = 0;
+
     for (;;) {
-        const char *str = va_arg(va, const char *);
+        char *str = va_arg(va, char *);
         apr_status_t rv;
 
         if (str == NULL)
             break;
 
-        rv = apr_brigade_write(b, flush, ctx, str, strlen(str));
-        if (rv != APR_SUCCESS)
-            return rv;
+        vec[i].iov_base = str;
+        vec[i].iov_len = strlen(str);
+        i++;
+
+        if (i == MAX_VECS) {
+            rv = apr_brigade_writev(b, flush, ctx, vec, i);
+            if (rv != APR_SUCCESS)
+                return rv;
+            i = 0;
+        }
     }
+    if (i != 0)
+       return apr_brigade_writev(b, flush, ctx, vec, i);
 
     return APR_SUCCESS;
 }
@@ -422,7 +435,12 @@ APU_DECLARE(apr_status_t) apr_brigade_wr
     apr_size_t remaining = APR_BUCKET_BUFF_SIZE;
     char *buf = NULL;
 
-    if (!APR_BRIGADE_EMPTY(b) && APR_BUCKET_IS_HEAP(e)) {
+    /*
+     * If the last bucket is a heap bucket and its buffer is not shared with
+     * another bucket, we may write into that bucket.
+     */
+    if (!APR_BRIGADE_EMPTY(b) && APR_BUCKET_IS_HEAP(e)
+        && ((apr_bucket_heap *)(e->data))->refcount.refcount == 1) {
         apr_bucket_heap *h = e->data;
 
         /* HEAP bucket start offsets are always in-memory, safe to cast */
@@ -512,10 +530,11 @@ APU_DECLARE(apr_status_t) apr_brigade_wr
     i = 0;
 
     /* If there is a heap bucket at the end of the brigade
-     * already, copy into the existing bucket.
+     * already, and its refcount is 1, copy into the existing bucket.
      */
     e = APR_BRIGADE_LAST(b);
-    if (!APR_BRIGADE_EMPTY(b) && APR_BUCKET_IS_HEAP(e)) {
+    if (!APR_BRIGADE_EMPTY(b) && APR_BUCKET_IS_HEAP(e)
+        && ((apr_bucket_heap *)(e->data))->refcount.refcount == 1) {
         apr_bucket_heap *h = e->data;
         apr_size_t remaining = h->alloc_len -
             (e->length + (apr_size_t)e->start);
@@ -591,29 +610,7 @@ APU_DECLARE(apr_status_t) apr_brigade_pu
                                            apr_brigade_flush flush, void *ctx,
                                            const char *str)
 {
-    apr_size_t len = strlen(str);
-    apr_bucket *bkt = APR_BRIGADE_LAST(bb);
-    if (!APR_BRIGADE_EMPTY(bb) && APR_BUCKET_IS_HEAP(bkt)) {
-        /* If there is enough space available in a heap bucket
-         * at the end of the brigade, copy the string directly
-         * into the heap bucket
-         */
-        apr_bucket_heap *h = bkt->data;
-        apr_size_t bytes_avail = h->alloc_len - bkt->length;
-
-        if (bytes_avail >= len) {
-            char *buf = h->base + bkt->start + bkt->length;
-            memcpy(buf, str, len);
-            bkt->length += len;
-            return APR_SUCCESS;
-        }
-    }
-
-    /* If the string could not be copied into an existing heap
-     * bucket, delegate the work to apr_brigade_write(), which
-     * knows how to grow the brigade
-     */
-    return apr_brigade_write(bb, flush, ctx, str, len);
+    return apr_brigade_write(bb, flush, ctx, str, strlen(str));
 }
 
 APU_DECLARE_NONSTD(apr_status_t) apr_brigade_putstrs(apr_bucket_brigade *b, 

Modified: vendor/apr-util/dist/buckets/apr_buckets_alloc.c
==============================================================================
--- vendor/apr-util/dist/buckets/apr_buckets_alloc.c	Sun Jul 28 05:07:11 2013	(r253731)
+++ vendor/apr-util/dist/buckets/apr_buckets_alloc.c	Sun Jul 28 05:14:54 2013	(r253732)
@@ -65,12 +65,20 @@ APU_DECLARE_NONSTD(apr_bucket_alloc_t *)
     /* may be NULL for debug mode. */
     if (allocator == NULL) {
         if (apr_allocator_create(&allocator) != APR_SUCCESS) {
+            apr_abortfunc_t fn = apr_pool_abort_get(p);
+            if (fn)
+                (fn)(APR_ENOMEM);
             abort();
         }
     }
 #endif
-
     list = apr_bucket_alloc_create_ex(allocator);
+    if (list == NULL) {
+            apr_abortfunc_t fn = apr_pool_abort_get(p);
+            if (fn)
+                (fn)(APR_ENOMEM);
+            abort();
+    }
     list->pool = p;
     apr_pool_cleanup_register(list->pool, list, alloc_cleanup,
                               apr_pool_cleanup_null);
@@ -131,6 +139,7 @@ APU_DECLARE_NONSTD(void *) apr_bucket_al
             if (endp >= active->endp) {
                 list->blocks = apr_allocator_alloc(list->allocator, ALLOC_AMT);
                 if (!list->blocks) {
+                    list->blocks = active;
                     return NULL;
                 }
                 list->blocks->next = active;

Modified: vendor/apr-util/dist/build-outputs.mk
==============================================================================
--- vendor/apr-util/dist/build-outputs.mk	Sun Jul 28 05:07:11 2013	(r253731)
+++ vendor/apr-util/dist/build-outputs.mk	Sun Jul 28 05:14:54 2013	(r253732)
@@ -15,8 +15,10 @@ buckets/apr_buckets_simple.lo: buckets/a
 buckets/apr_buckets_socket.lo: buckets/apr_buckets_socket.c .make.dirs include/apr_buckets.h
 crypto/apr_crypto.lo: crypto/apr_crypto.c .make.dirs include/apr_crypto.h include/apu_errno.h include/apu_version.h include/private/apr_crypto_internal.h include/private/apu_internal.h
 crypto/apr_md4.lo: crypto/apr_md4.c .make.dirs include/apr_md4.h include/apr_xlate.h
-crypto/apr_md5.lo: crypto/apr_md5.c .make.dirs include/apr_md5.h include/apr_sha1.h include/apr_xlate.h
+crypto/apr_md5.lo: crypto/apr_md5.c .make.dirs include/apr_md5.h include/apr_xlate.h
+crypto/apr_passwd.lo: crypto/apr_passwd.c .make.dirs include/apr_md5.h include/apr_sha1.h include/apr_xlate.h
 crypto/apr_sha1.lo: crypto/apr_sha1.c .make.dirs include/apr_base64.h include/apr_sha1.h include/apr_xlate.h
+crypto/crypt_blowfish.lo: crypto/crypt_blowfish.c .make.dirs 
 crypto/getuuid.lo: crypto/getuuid.c .make.dirs include/apr_md5.h include/apr_uuid.h include/apr_xlate.h
 crypto/uuid.lo: crypto/uuid.c .make.dirs include/apr_uuid.h
 dbd/apr_dbd.lo: dbd/apr_dbd.c .make.dirs include/apr_dbd.h include/apu_version.h include/private/apr_dbd_internal.h include/private/apu_internal.h
@@ -43,7 +45,7 @@ uri/apr_uri.lo: uri/apr_uri.c .make.dirs
 xlate/xlate.lo: xlate/xlate.c .make.dirs include/apr_xlate.h
 xml/apr_xml.lo: xml/apr_xml.c .make.dirs include/apr_xlate.h include/apr_xml.h
 
-OBJECTS_all = buckets/apr_brigade.lo buckets/apr_buckets.lo buckets/apr_buckets_alloc.lo buckets/apr_buckets_eos.lo buckets/apr_buckets_file.lo buckets/apr_buckets_flush.lo buckets/apr_buckets_heap.lo buckets/apr_buckets_mmap.lo buckets/apr_buckets_pipe.lo buckets/apr_buckets_pool.lo buckets/apr_buckets_refcount.lo buckets/apr_buckets_simple.lo buckets/apr_buckets_socket.lo crypto/apr_crypto.lo crypto/apr_md4.lo crypto/apr_md5.lo crypto/apr_sha1.lo crypto/getuuid.lo crypto/uuid.lo dbd/apr_dbd.lo dbm/apr_dbm.lo dbm/apr_dbm_sdbm.lo dbm/sdbm/sdbm.lo dbm/sdbm/sdbm_hash.lo dbm/sdbm/sdbm_lock.lo dbm/sdbm/sdbm_pair.lo encoding/apr_base64.lo hooks/apr_hooks.lo ldap/apr_ldap_stub.lo ldap/apr_ldap_url.lo memcache/apr_memcache.lo misc/apr_date.lo misc/apr_queue.lo misc/apr_reslist.lo misc/apr_rmm.lo misc/apr_thread_pool.lo misc/apu_dso.lo misc/apu_version.lo strmatch/apr_strmatch.lo uri/apr_uri.lo xlate/xlate.lo xml/apr_xml.lo
+OBJECTS_all = buckets/apr_brigade.lo buckets/apr_buckets.lo buckets/apr_buckets_alloc.lo buckets/apr_buckets_eos.lo buckets/apr_buckets_file.lo buckets/apr_buckets_flush.lo buckets/apr_buckets_heap.lo buckets/apr_buckets_mmap.lo buckets/apr_buckets_pipe.lo buckets/apr_buckets_pool.lo buckets/apr_buckets_refcount.lo buckets/apr_buckets_simple.lo buckets/apr_buckets_socket.lo crypto/apr_crypto.lo crypto/apr_md4.lo crypto/apr_md5.lo crypto/apr_passwd.lo crypto/apr_sha1.lo crypto/crypt_blowfish.lo crypto/getuuid.lo crypto/uuid.lo dbd/apr_dbd.lo dbm/apr_dbm.lo dbm/apr_dbm_sdbm.lo dbm/sdbm/sdbm.lo dbm/sdbm/sdbm_hash.lo dbm/sdbm/sdbm_lock.lo dbm/sdbm/sdbm_pair.lo encoding/apr_base64.lo hooks/apr_hooks.lo ldap/apr_ldap_stub.lo ldap/apr_ldap_url.lo memcache/apr_memcache.lo misc/apr_date.lo misc/apr_queue.lo misc/apr_reslist.lo misc/apr_rmm.lo misc/apr_thread_pool.lo misc/apu_dso.lo misc/apu_version.lo strmatch/apr_strmatch.lo uri/apr_uri.lo xlate/xlate.lo xml/apr_xml.lo
 
 OBJECTS_unix = $(OBJECTS_all)
 

Modified: vendor/apr-util/dist/build.conf
==============================================================================
--- vendor/apr-util/dist/build.conf	Sun Jul 28 05:07:11 2013	(r253731)
+++ vendor/apr-util/dist/build.conf	Sun Jul 28 05:14:54 2013	(r253732)
@@ -10,9 +10,11 @@ paths =
   crypto/apr_crypto.c
   crypto/apr_md4.c
   crypto/apr_md5.c
+  crypto/apr_passwd.c
   crypto/apr_sha1.c
   crypto/getuuid.c
   crypto/uuid.c
+  crypto/crypt_blowfish.c
   dbm/apr_dbm_sdbm.c
   dbm/apr_dbm.c
   dbm/sdbm/*.c

Modified: vendor/apr-util/dist/configure
==============================================================================
--- vendor/apr-util/dist/configure	Sun Jul 28 05:07:11 2013	(r253731)
+++ vendor/apr-util/dist/configure	Sun Jul 28 05:14:54 2013	(r253732)
@@ -1,11 +1,9 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.68.
+# Generated by GNU Autoconf 2.69.
 #
 #
-# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
-# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software
-# Foundation, Inc.
+# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
 #
 #
 # This configure script is free software; the Free Software Foundation
@@ -134,6 +132,31 @@ export LANGUAGE
 # CDPATH.
 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
 
+# Use a proper internal environment variable to ensure we don't fall
+  # into an infinite loop, continuously re-executing ourselves.
+  if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
+    _as_can_reexec=no; export _as_can_reexec;
+    # We cannot yet assume a decent shell, so we have to provide a
+# neutralization value for shells without unset; and this also
+# works around shells that cannot unset nonexistent variables.
+# Preserve -v and -x to the replacement shell.
+BASH_ENV=/dev/null
+ENV=/dev/null
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+case $- in # ((((
+  *v*x* | *x*v* ) as_opts=-vx ;;
+  *v* ) as_opts=-v ;;
+  *x* ) as_opts=-x ;;
+  * ) as_opts= ;;
+esac
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
+# Admittedly, this is quite paranoid, since all the known shells bail
+# out after a failed `exec'.
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+as_fn_exit 255
+  fi
+  # We don't want this to propagate to other subprocesses.
+          { _as_can_reexec=; unset _as_can_reexec;}
 if test "x$CONFIG_SHELL" = x; then
   as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
   emulate sh
@@ -167,7 +190,8 @@ if ( set x; as_fn_ret_success y && test 
 else
   exitcode=1; echo positional parameters were not saved.
 fi
-test x\$exitcode = x0 || exit 1"
+test x\$exitcode = x0 || exit 1
+test -x / || exit 1"
   as_suggested="  as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
   as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
   eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
@@ -212,21 +236,25 @@ IFS=$as_save_IFS
 
 
       if test "x$CONFIG_SHELL" != x; then :
-  # We cannot yet assume a decent shell, so we have to provide a
-	# neutralization value for shells without unset; and this also
-	# works around shells that cannot unset nonexistent variables.
-	# Preserve -v and -x to the replacement shell.
-	BASH_ENV=/dev/null
-	ENV=/dev/null
-	(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
-	export CONFIG_SHELL
-	case $- in # ((((
-	  *v*x* | *x*v* ) as_opts=-vx ;;
-	  *v* ) as_opts=-v ;;
-	  *x* ) as_opts=-x ;;
-	  * ) as_opts= ;;
-	esac
-	exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"}
+  export CONFIG_SHELL
+             # We cannot yet assume a decent shell, so we have to provide a
+# neutralization value for shells without unset; and this also
+# works around shells that cannot unset nonexistent variables.
+# Preserve -v and -x to the replacement shell.
+BASH_ENV=/dev/null
+ENV=/dev/null
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
+case $- in # ((((
+  *v*x* | *x*v* ) as_opts=-vx ;;
+  *v* ) as_opts=-v ;;
+  *x* ) as_opts=-x ;;
+  * ) as_opts= ;;
+esac
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
+# Admittedly, this is quite paranoid, since all the known shells bail
+# out after a failed `exec'.
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+exit 255
 fi
 
     if test x$as_have_required = xno; then :
@@ -328,6 +356,14 @@ $as_echo X"$as_dir" |
 
 
 } # as_fn_mkdir_p
+
+# as_fn_executable_p FILE
+# -----------------------
+# Test if FILE is an executable regular file.
+as_fn_executable_p ()
+{
+  test -f "$1" && test -x "$1"
+} # as_fn_executable_p
 # as_fn_append VAR VALUE
 # ----------------------
 # Append the text in VALUE to the end of the definition contained in VAR. Take
@@ -449,6 +485,10 @@ as_cr_alnum=$as_cr_Letters$as_cr_digits
   chmod +x "$as_me.lineno" ||
     { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
 
+  # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
+  # already done that, so ensure we don't try to do so again and fall
+  # in an infinite loop.  This has already happened in practice.
+  _as_can_reexec=no; export _as_can_reexec
   # Don't try to exec as it changes $[0], causing all sort of problems
   # (the dirname of $[0] is not the place where we might find the
   # original and so on.  Autoconf is especially sensitive to this).
@@ -483,16 +523,16 @@ if (echo >conf$$.file) 2>/dev/null; then
     # ... but there are two gotchas:
     # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
     # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
-    # In both cases, we have to default to `cp -p'.
+    # In both cases, we have to default to `cp -pR'.
     ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
-      as_ln_s='cp -p'
+      as_ln_s='cp -pR'
   elif ln conf$$.file conf$$ 2>/dev/null; then
     as_ln_s=ln
   else
-    as_ln_s='cp -p'
+    as_ln_s='cp -pR'
   fi
 else
-  as_ln_s='cp -p'
+  as_ln_s='cp -pR'
 fi
 rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
 rmdir conf$$.dir 2>/dev/null
@@ -504,28 +544,8 @@ else
   as_mkdir_p=false
 fi
 
-if test -x / >/dev/null 2>&1; then
-  as_test_x='test -x'
-else
-  if ls -dL / >/dev/null 2>&1; then
-    as_ls_L_option=L
-  else
-    as_ls_L_option=
-  fi
-  as_test_x='
-    eval sh -c '\''
-      if test -d "$1"; then
-	test -d "$1/.";
-      else
-	case $1 in #(
-	-*)set "./$1";;
-	esac;
-	case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #((
-	???[sx]*):;;*)false;;esac;fi
-    '\'' sh
-  '
-fi
-as_executable_p=$as_test_x
+as_test_x='test -x'
+as_executable_p=as_fn_executable_p
 
 # Sed expression to map a string onto a valid CPP name.
 as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
@@ -1245,8 +1265,6 @@ target=$target_alias
 if test "x$host_alias" != x; then
   if test "x$build_alias" = x; then
     cross_compiling=maybe
-    $as_echo "$as_me: WARNING: if you wanted to set the --build type, don't use --host.
-    If a cross compiler is detected then cross compile mode will be used" >&2
   elif test "x$build_alias" != "x$host_alias"; then
     cross_compiling=yes
   fi
@@ -1422,7 +1440,8 @@ Optional Packages:
   --with-ldap-lib=path    path to ldap lib file
   --with-ldap=library     ldap library to use
   --with-dbm=DBM          choose the DBM type to use.
-                          DBM={sdbm,gdbm,ndbm,db,db1,db185,db2,db3,db4,db41,db42,db43,db44,db45,db46,db47,db48,db50,db51}
+                          DBM={sdbm,gdbm,ndbm,db,db1,db185,db2,db3,db4,db4X,db5X}
+                          for some X=0,...,9
   --with-gdbm=DIR         enable GDBM support
   --with-ndbm=PATH        Find the NDBM header and library in `PATH/include'
                           and `PATH/lib'. If PATH is of the form `HEADER:LIB',
@@ -1526,9 +1545,9 @@ test -n "$ac_init_help" && exit $ac_stat
 if $ac_init_version; then
   cat <<\_ACEOF
 configure
-generated by GNU Autoconf 2.68
+generated by GNU Autoconf 2.69
 
-Copyright (C) 2010 Free Software Foundation, Inc.
+Copyright (C) 2012 Free Software Foundation, Inc.
 This configure script is free software; the Free Software Foundation
 gives unlimited permission to copy, distribute and modify it.
 _ACEOF
@@ -1604,7 +1623,7 @@ $as_echo "$ac_try_echo"; } >&5
 	 test ! -s conftest.err
        } && test -s conftest$ac_exeext && {
 	 test "$cross_compiling" = yes ||
-	 $as_test_x conftest$ac_exeext
+	 test -x conftest$ac_exeext
        }; then :
   ac_retval=0
 else
@@ -1937,7 +1956,7 @@ This file contains any messages produced
 running configure, to aid debugging if configure makes a mistake.
 
 It was created by $as_me, which was
-generated by GNU Autoconf 2.68.  Invocation command line was
+generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
 
@@ -2491,19 +2510,6 @@ ac_configure="$SHELL $ac_aux_dir/configu
 
 
 
-
-
-
-
-
-
-
-
-
-
-
-
-
   rm -f config.nice
   cat >config.nice<<EOF
 #! /bin/sh
@@ -2729,7 +2735,7 @@ case $as_dir/ in #((
     # by default.
     for ac_prog in ginstall scoinst install; do
       for ac_exec_ext in '' $ac_executable_extensions; do
-	if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then
+	if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
 	  if test $ac_prog = install &&
 	    grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
 	    # AIX install.  It has an incompatible calling convention.
@@ -2786,13 +2792,20 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCR
 test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
 
 
-# Use -no-install to link the test programs on all platforms
-# but Darwin, where it would cause the programs to be linked
-# against installed versions of libapr instead of those just
-# built.
+# Use -no-install or -no-fast-install to link the test
+# programs on all platforms but Darwin, where it would cause
+# the programs to be linked against installed versions of
+# libapr instead of those just built.
 case $host in
-*-apple-darwin*) LT_NO_INSTALL="" ;;
-*) LT_NO_INSTALL="-no-install" ;;
+    *-apple-darwin*)
+        LT_NO_INSTALL=""
+        ;;
+    *-mingw*)
+        LT_NO_INSTALL="-no-fast-install"
+        ;;
+    *)
+        LT_NO_INSTALL="-no-install"
+        ;;
 esac
 
 
@@ -3060,7 +3073,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="${ac_tool_prefix}gcc"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -3100,7 +3113,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_CC="gcc"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -3153,7 +3166,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="${ac_tool_prefix}cc"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -3194,7 +3207,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
        ac_prog_rejected=yes
        continue
@@ -3252,7 +3265,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -3296,7 +3309,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_CC="$ac_prog"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -3742,8 +3755,7 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_
 /* end confdefs.h.  */
 #include <stdarg.h>
 #include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
+struct stat;
 /* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
 struct buf { int x; };
 FILE * (*rcsopen) (struct buf *, struct stat *, int);
@@ -4480,7 +4492,7 @@ do
     for ac_prog in grep ggrep; do
     for ac_exec_ext in '' $ac_executable_extensions; do
       ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
-      { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue
+      as_fn_executable_p "$ac_path_GREP" || continue
 # Check for GNU ac_path_GREP and select it if it is found.
   # Check for GNU $ac_path_GREP
 case `"$ac_path_GREP" --version 2>&1` in
@@ -4546,7 +4558,7 @@ do
     for ac_prog in egrep; do
     for ac_exec_ext in '' $ac_executable_extensions; do
       ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
-      { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue
+      as_fn_executable_p "$ac_path_EGREP" || continue
 # Check for GNU ac_path_EGREP and select it if it is found.
   # Check for GNU $ac_path_EGREP
 case `"$ac_path_EGREP" --version 2>&1` in
@@ -4725,6 +4737,8 @@ done
 
 
   apu_have_crypto=0
+  apu_have_openssl=0
+  apu_have_nss=0
 
   old_libs="$LIBS"
   old_cppflags="$CPPFLAGS"
@@ -4734,9 +4748,35 @@ done
 # Check whether --with-crypto was given.
 if test "${with_crypto+set}" = set; then :
   withval=$with_crypto;
+    cryptolibs="openssl nss"
+
     if test "$withval" = "yes"; then
 
-  apu_have_openssl=0
+      crypto_library_enabled=0
+      for cryptolib in $cryptolibs; do
+        eval v=\$with_$cryptolib
+        if test "$v" != "" -a "$v" != "no"; then
+          crypto_library_enabled=1
+        fi
+      done
+
+      if test "$crypto_library_enabled" = "0"; then
+        for cryptolib in $cryptolibs; do
+          eval v=\$with_$cryptolib
+          if test "$v" != "no"; then
+            eval with_$cryptolib=yes
+            crypto_library_enabled=1
+          fi
+        done
+	if test "$crypto_library_enabled" = "1"; then
+          { $as_echo "$as_me:${as_lineno-$LINENO}: Crypto was requested but no crypto library was found; autodetecting possible libraries" >&5
+$as_echo "$as_me: Crypto was requested but no crypto library was found; autodetecting possible libraries" >&6;}
+        else
+          as_fn_error $? "Crypto was requested but all possible crypto libraries were disabled." "$LINENO" 5
+	fi
+      fi
+
+
   openssl_have_headers=0
   openssl_have_libs=0
 
@@ -5196,7 +5236,27 @@ fi
 
 
       if test "$apu_have_openssl" = "1"; then
+
+  if test "x$LDADD_crypto_openssl" = "x"; then
+    test "x$silent" != "xyes" && echo "  setting LDADD_crypto_openssl to \"$openssl_LDFLAGS -lssl -lcrypto\""
     LDADD_crypto_openssl="$openssl_LDFLAGS -lssl -lcrypto"
+  else
+    apr_addto_bugger="$openssl_LDFLAGS -lssl -lcrypto"
+    for i in $apr_addto_bugger; do
+      apr_addto_duplicate="0"
+      for j in $LDADD_crypto_openssl; do
+        if test "x$i" = "x$j"; then
+          apr_addto_duplicate="1"
+          break
+        fi
+      done
+      if test $apr_addto_duplicate = "0"; then
+        test "x$silent" != "xyes" && echo "  adding \"$i\" to LDADD_crypto_openssl"
+        LDADD_crypto_openssl="$LDADD_crypto_openssl $i"
+      fi
+    done
+  fi
+
     apu_have_crypto=1
 
     { $as_echo "$as_me:${as_lineno-$LINENO}: checking for const input buffers in OpenSSL" >&5
@@ -5243,8 +5303,6 @@ rm -f core conftest.err conftest.$ac_obj
   LDFLAGS="$old_ldflags"
 
 
-  apu_have_nss=0
-  nss_have_headers=0
   nss_have_libs=0
 
   old_libs="$LIBS"
@@ -5255,7 +5313,6 @@ rm -f core conftest.err conftest.$ac_obj
 # Check whether --with-nss was given.
 if test "${with_nss+set}" = set; then :
   withval=$with_nss;
-
     if test "$withval" = "yes"; then
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
@@ -5276,7 +5333,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -5319,7 +5376,7 @@ do
   IFS=$as_save_IFS
   test -z "$as_dir" && as_dir=.
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then
+  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
     ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
     $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
     break 2
@@ -5401,7 +5458,35 @@ fi
   fi
 
       fi
-      for ac_header in prerror.h nss/nss.h nss.h nss/pk11pub.h pk11pub.h
+      nss_have_prerrorh=0
+      nss_have_nssh=0
+      nss_have_pk11pubh=0
+      for ac_header in prerror.h
+do :
+  ac_fn_c_check_header_mongrel "$LINENO" "prerror.h" "ac_cv_header_prerror_h" "$ac_includes_default"
+if test "x$ac_cv_header_prerror_h" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_PRERROR_H 1
+_ACEOF
+ nss_have_prerrorh=1
+fi
+
+done
+
+      for ac_header in nss/nss.h nss.h
+do :
+  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
+if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
+  cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+ nss_have_nssh=1
+fi
+
+done
+
+      for ac_header in nss/pk11pub.h pk11pub.h
 do :
   as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
 ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
@@ -5409,11 +5494,12 @@ if eval test \"x\$"$as_ac_Header"\" = x"
   cat >>confdefs.h <<_ACEOF
 #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
 _ACEOF
- nss_have_headers=1
+ nss_have_pk11pubh=1
 fi
 
 done
 
+      nss_have_headers=${nss_have_prerrorh}${nss_have_nssh}${nss_have_pk11pubh}
       { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PR_Initialize in -lnspr4" >&5
 $as_echo_n "checking for PR_Initialize in -lnspr4... " >&6; }
 if ${ac_cv_lib_nspr4_PR_Initialize+:} false; then :
@@ -5493,7 +5579,7 @@ fi
 
 fi
 
-      if test "$nss_have_headers" != "0" && test "$nss_have_libs" != "0"; then
+      if test "$nss_have_headers" = "111" && test "$nss_have_libs" != "0"; then
         apu_have_nss=1
       fi
     elif test "$withval" = "no"; then
@@ -5548,7 +5634,35 @@ fi
 
       { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nss in $withval" >&5
 $as_echo "$as_me: checking for nss in $withval" >&6;}
-      for ac_header in prerror.h nss/nss.h nss.h nss/pk11pub.h pk11pub.h
+      nss_have_prerrorh=0
+      nss_have_nssh=0
+      nss_have_pk11pubh=0
+      for ac_header in prerror.h
+do :
+  ac_fn_c_check_header_mongrel "$LINENO" "prerror.h" "ac_cv_header_prerror_h" "$ac_includes_default"
+if test "x$ac_cv_header_prerror_h" = xyes; then :
+  cat >>confdefs.h <<_ACEOF
+#define HAVE_PRERROR_H 1
+_ACEOF
+ nss_have_prerrorh=1
+fi
+
+done
+
+      for ac_header in nss/nss.h nss.h
+do :
+  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
+if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
+  cat >>confdefs.h <<_ACEOF
+#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+ nss_have_nssh=1
+fi
+
+done
+
+      for ac_header in nss/pk11pub.h pk11pub.h
 do :
   as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
 ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
@@ -5556,11 +5670,12 @@ if eval test \"x\$"$as_ac_Header"\" = x"
   cat >>confdefs.h <<_ACEOF
 #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
 _ACEOF
- nss_have_headers=1
+ nss_have_pk11pubh=1
 fi
 
 done
 
+      nss_have_headers=${nss_have_prerrorh}${nss_have_nssh}${nss_have_pk11pubh}
       { $as_echo "$as_me:${as_lineno-$LINENO}: checking for PR_Initialize in -lnspr4" >&5
 $as_echo_n "checking for PR_Initialize in -lnspr4... " >&6; }
 if ${ac_cv_lib_nspr4_PR_Initialize+:} false; then :
@@ -5640,7 +5755,7 @@ fi
 
 fi
 
-      if test "$nss_have_headers" != "0" && test "$nss_have_libs" != "0"; then
+      if test "$nss_have_headers" = "111" && test "$nss_have_libs" != "0"; then
         apu_have_nss=1
       fi
 
@@ -5679,7 +5794,27 @@ fi
 
 
       if test "$apu_have_nss" = "1"; then
+
+  if test "x$LDADD_crypto_nss" = "x"; then
+    test "x$silent" != "xyes" && echo "  setting LDADD_crypto_nss to \"$nss_LDFLAGS -lnspr4 -lnss3\""
     LDADD_crypto_nss="$nss_LDFLAGS -lnspr4 -lnss3"
+  else
+    apr_addto_bugger="$nss_LDFLAGS -lnspr4 -lnss3"
+    for i in $apr_addto_bugger; do
+      apr_addto_duplicate="0"
+      for j in $LDADD_crypto_nss; do
+        if test "x$i" = "x$j"; then
+          apr_addto_duplicate="1"
+          break
+        fi
+      done
+      if test $apr_addto_duplicate = "0"; then
+        test "x$silent" != "xyes" && echo "  adding \"$i\" to LDADD_crypto_nss"
+        LDADD_crypto_nss="$LDADD_crypto_nss $i"
+      fi
+    done
+  fi
+
     apu_have_crypto=1
   fi
 
@@ -5689,7 +5824,10 @@ fi
   CPPFLAGS="$old_cppflags"
   LDFLAGS="$old_ldflags"
 
-          fi
+            if test "$apu_have_crypto" = "0"; then
+        as_fn_error $? "Crypto was requested but no crypto library could be enabled; specify the location of a crypto library using --with-openssl, --with-nss, etc." "$LINENO" 5
+      fi
+    fi
 
 else
 
@@ -5702,38 +5840,134 @@ fi
 
 
 
-  apu_have_openssl=0
-  openssl_have_headers=0
-  openssl_have_libs=0
 
-  old_libs="$LIBS"
-  old_cppflags="$CPPFLAGS"
-  old_ldflags="$LDFLAGS"
+echo $ac_n "${nl}checking for ldap support..."
+
+apu_has_ldap="0";
+apu_has_ldapssl_client_init="0"
+apu_has_ldapssl_client_deinit="0"
+apu_has_ldapssl_add_trusted_cert="0"
+apu_has_ldap_start_tls_s="0"
+apu_has_ldapssl_init="0"
+apu_has_ldap_sslinit="0"
+apu_has_ldapssl_install_routines="0"
+apu_has_ldap_openldap="0"

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201307280514.r6S5EsA7097707>