]> git.sur5r.net Git - openldap/blobdiff - configure.in
ITS#897 Internal connection that is closed on one end and about to
[openldap] / configure.in
index 1658bd15766a4dcee044106fc1daf0c4de556887..da6b70922214f19bc2d0d0095cb12278ada8974f 100644 (file)
@@ -1,6 +1,6 @@
 dnl $OpenLDAP$
 dnl
 dnl $OpenLDAP$
 dnl
-dnl Copyright 1998,1999 The OpenLDAP Foundation.  All Rights Reserved.
+dnl Copyright 1998-2000 The OpenLDAP Foundation.  All Rights Reserved.
 dnl 
 dnl Redistribution and use in source and binary forms are permitted only
 dnl as authorized by the OpenLDAP Public License.  A copy of this
 dnl 
 dnl Redistribution and use in source and binary forms are permitted only
 dnl as authorized by the OpenLDAP Public License.  A copy of this
@@ -15,15 +15,15 @@ define([AC_INIT_BINSH],
 # $]OpenLDAP[$
 # from] translit([$OpenLDAP$], $")] [
 
 # $]OpenLDAP[$
 # from] translit([$OpenLDAP$], $")] [
 
-# Copyright 1998,1999 The OpenLDAP Foundation.  All Rights Reserved.
+# Copyright 1998-2000 The OpenLDAP Foundation.  All Rights Reserved.
 # 
 # Redistribution and use in source and binary forms are permitted only
 # as authorized by the OpenLDAP Public License.  A copy of this
 # license is available at http://www.OpenLDAP.org/license.html or
 # in file LICENSE in the top-level directory of the distribution.
 
 # 
 # Redistribution and use in source and binary forms are permitted only
 # as authorized by the OpenLDAP Public License.  A copy of this
 # license is available at http://www.OpenLDAP.org/license.html or
 # in file LICENSE in the top-level directory of the distribution.
 
-echo "Copyright 1998-1999 The OpenLDAP Foundation,  All Rights Reserved."
-echo "Copying restrictions apply, see COPYRIGHT file."
+echo "Copyright 1998-2000 The OpenLDAP Foundation,  All Rights Reserved."
+echo "Restrictions apply, see COPYRIGHT and LICENSE files."
 ])dnl
 dnl ----------------------------------------------------------------
 dnl Disable config.cache!
 ])dnl
 dnl ----------------------------------------------------------------
 dnl Disable config.cache!
@@ -31,26 +31,44 @@ define([AC_CACHE_LOAD], )dnl
 define([AC_CACHE_SAVE], )dnl
 dnl ================================================================
 dnl Configure.in for OpenLDAP
 define([AC_CACHE_SAVE], )dnl
 dnl ================================================================
 dnl Configure.in for OpenLDAP
-AC_INIT(build/version)dnl
+AC_INIT(build/version.sh)dnl
+
+# set unset (borrowed from autoconf 2.14a)
+if (unset FOO) >/dev/null 2>&1; then
+  ol_unset=unset
+else
+  ol_unset=false
+fi
+# unset CDPATH
+$ol_unset CDPATH || test "${CDPATH+set}" != set || CDPATH=: && export CDPATH
+
 AC_CONFIG_AUX_DIR(build)dnl
 
 AC_CONFIG_AUX_DIR(build)dnl
 
-OL_VERSION=`cat $ac_aux_dir/version`
-if test -z "$OL_VERSION"; then
+eval `$ac_aux_dir/version.sh`
+if test -z "$OL_STRING"; then
        AC_MSG_ERROR([could not determine version])
 fi
 
        AC_MSG_ERROR([could not determine version])
 fi
 
-echo "Configuring OpenLDAP $OL_VERSION ..."
+echo "Configuring $OL_STRING ..."
 
 dnl Determine host platform
 dnl            we try not to use this for much
 AC_CANONICAL_SYSTEM
 
 
 dnl Determine host platform
 dnl            we try not to use this for much
 AC_CANONICAL_SYSTEM
 
-AM_INIT_AUTOMAKE(OpenLDAP,[$OL_VERSION], [no defines])dnl
+AM_INIT_AUTOMAKE([$OL_PACKAGE],[$OL_VERSION], [no defines])dnl
 AC_SUBST(PACKAGE)
 AC_SUBST(VERSION)
 AC_DEFINE_UNQUOTED(OPENLDAP_PACKAGE,"$PACKAGE",Package)
 AC_DEFINE_UNQUOTED(OPENLDAP_VERSION,"$VERSION",Version)
 
 AC_SUBST(PACKAGE)
 AC_SUBST(VERSION)
 AC_DEFINE_UNQUOTED(OPENLDAP_PACKAGE,"$PACKAGE",Package)
 AC_DEFINE_UNQUOTED(OPENLDAP_VERSION,"$VERSION",Version)
 
+AC_DEFINE_UNQUOTED(LDAP_VENDOR_VERSION,$OL_API_INC,Version)
+AC_DEFINE_UNQUOTED(LDAP_VENDOR_VERSION_MAJOR,$OL_MAJOR,Major)
+AC_DEFINE_UNQUOTED(LDAP_VENDOR_VERSION_MINOR,$OL_MINOR,Minor)
+AC_DEFINE_UNQUOTED(LDAP_VENDOR_VERSION_PATCH,$OL_PATCH,Patch)
+
+OPENLDAP_LIBVERSION=$OL_API_LIB
+AC_SUBST(OPENLDAP_LIBVERSION)
+
 dnl We use autoconf features new to 2.13.
 dnl aclocal.m4 should be built using aclocal from automake 1.4
 dnl libtool 1.3.3 should be installed.
 dnl We use autoconf features new to 2.13.
 dnl aclocal.m4 should be built using aclocal from automake 1.4
 dnl libtool 1.3.3 should be installed.
@@ -90,90 +108,93 @@ AC_SUBST(ldap_subdir)dnl
 
 dnl ----------------------------------------------------------------
 dnl General "enable" options
 
 dnl ----------------------------------------------------------------
 dnl General "enable" options
-OL_ARG_ENABLE(debug,[  --enable-debug  enable debugging], yes)dnl
-OL_ARG_ENABLE(syslog,[  --enable-syslog        enable syslog support], auto)dnl
-OL_ARG_ENABLE(proctitle,[  --enable-proctitle  enable proctitle support], yes)dnl
-OL_ARG_ENABLE(cache,[  --enable-cache  enable caching], yes)dnl
-OL_ARG_ENABLE(dns,[  --enable-dns              enable V2 DX Referrals extension], no)dnl
-OL_ARG_ENABLE(referrals,[  --enable-referrals  enable V2 Referrals extension], yes)dnl
-OL_ARG_ENABLE(cldap,[  --enable-cldap  enable connectionless ldap], no)dnl
-OL_ARG_ENABLE(x_compile,[  --enable-x-compile  enable cross compiling],
+OL_ARG_ENABLE(debug,[  --enable-debug    enable debugging], yes)dnl
+OL_ARG_ENABLE(syslog,[  --enable-syslog          enable syslog support], auto)dnl
+OL_ARG_ENABLE(proctitle,[  --enable-proctitle    enable proctitle support], yes)dnl
+OL_ARG_ENABLE(cache,[  --enable-cache    enable caching], yes)dnl
+OL_ARG_ENABLE(referrals,[  --enable-referrals    enable V2 Referrals extension], yes)dnl
+OL_ARG_ENABLE(kbind,[  --enable-kbind    enable V2 Kerberos IV bind], no)dnl
+OL_ARG_ENABLE(ipv6,[  --enable-ipv6      enable IPv6 support], auto)dnl
+OL_ARG_ENABLE(local,[  --enable-local    enable AF_LOCAL (AF_UNIX) socket support], auto)dnl
+OL_ARG_ENABLE(x_compile,[  --enable-x-compile    enable cross compiling],
        no, [yes no])dnl
 
 dnl ----------------------------------------------------------------
 dnl General "with" options
        no, [yes no])dnl
 
 dnl ----------------------------------------------------------------
 dnl General "with" options
-OL_ARG_ENABLE(dmalloc,[  --enable-dmalloc      enable debug malloc support], no)dnl
+dnl OL_ARG_ENABLE(dmalloc,[  --enable-dmalloc    enable debug malloc support], no)dnl
 
 
-OL_ARG_WITH(cyrus_sasl,[  --with-cyrus-sasl    with Cyrus SASL support],
+OL_ARG_WITH(cyrus_sasl,[  --with-cyrus-sasl      with Cyrus SASL support],
        auto, [auto yes no] )
        auto, [auto yes no] )
-OL_ARG_WITH(fetch,[  --with-fetch              with fetch URL support],
+OL_ARG_WITH(fetch,[  --with-fetch                with fetch URL support],
        auto, [auto yes no] )
        auto, [auto yes no] )
-OL_ARG_WITH(kerberos,[  --with-kerberos        with Kerberos support],
-       auto, [auto k5 kth k4 afs yes no])
-OL_ARG_WITH(readline,[  --with-readline        with readline support],
+OL_ARG_WITH(kerberos,[  --with-kerberos          with support],
+       auto, [auto k5 k5only k425 kth k4 afs yes no])
+OL_ARG_WITH(readline,[  --with-readline          with readline support],
        auto, [auto yes no] )
        auto, [auto yes no] )
-OL_ARG_WITH(threads,[  --with-threads  use threads],
+OL_ARG_WITH(threads,[  --with-threads    with threads],
        auto, [auto nt posix mach pth lwp yes no manual] )
        auto, [auto nt posix mach pth lwp yes no manual] )
-OL_ARG_WITH(tls,[  --with-tls          with TLS/SSL support],
+OL_ARG_WITH(tls,[  --with-tls            with TLS/SSL support],
        auto, [auto ssleay openssl yes no] )
        auto, [auto ssleay openssl yes no] )
-OL_ARG_WITH(yielding_select,[  --with-yielding-select  with implicitly yielding select],
+OL_ARG_WITH(yielding_select,[  --with-yielding-select  with implicitly yielding select],
        auto, [auto yes no manual] )
 
 dnl ----------------------------------------------------------------
 dnl Server options
 dnl ----------------------------------------------------------------
        auto, [auto yes no manual] )
 
 dnl ----------------------------------------------------------------
 dnl Server options
 dnl ----------------------------------------------------------------
-dnl LDAPD OPTIONS
-AC_ARG_WITH(xxldapdoptions,[LDAPD (X.500-to-LDAP Gateway) Options:])
-OL_ARG_ENABLE(ldapd,[  --enable-ldapd  enable building ldapd], no)dnl
 
 dnl ----------------------------------------------------------------
 dnl SLAPD OPTIONS
 AC_ARG_WITH(xxslapdoptions,[SLAPD (Standalone LDAP Daemon) Options:])
 
 dnl ----------------------------------------------------------------
 dnl SLAPD OPTIONS
 AC_ARG_WITH(xxslapdoptions,[SLAPD (Standalone LDAP Daemon) Options:])
-OL_ARG_ENABLE(slapd,[  --enable-slapd  enable building slapd], yes)dnl
-OL_ARG_ENABLE(cleartext,[    --enable-cleartext        enable cleartext passwords], yes)dnl
-OL_ARG_ENABLE(crypt,[    --enable-crypt        enable crypt(3) passwords], auto)dnl
-OL_ARG_ENABLE(modules,[    --enable-modules    enable dynamic module support], no)dnl
-OL_ARG_ENABLE(multimaster,[    --enable-multimaster    enable multimaster replication], no)dnl
-OL_ARG_ENABLE(phonetic,[    --enable-phonetic  enable phonetic/soundex], no)dnl
-OL_ARG_ENABLE(quipu,[    --enable-quipu        build quipu migration tools], no)dnl
-OL_ARG_ENABLE(rlookups,[    --enable-rlookups  enable reverse lookups], auto)dnl
-OL_ARG_ENABLE(aci,[    --enable-aci    enable per-object ACIs], no)dnl
-OL_ARG_ENABLE(discreteaci,[    --enable-discreteaci    enable discrete rights in ACIs], no)dnl
-OL_ARG_ENABLE(wrappers,[    --enable-wrappers  enable tcp wrapper support], no)dnl
-OL_ARG_ENABLE(dynamic,[    --enable-dynamic    enable linking built binaries with dynamic libs], no)dnl
+OL_ARG_ENABLE(slapd,[  --enable-slapd    enable building slapd], yes)dnl
+OL_ARG_ENABLE(cleartext,[    --enable-cleartext          enable cleartext passwords], yes)dnl
+OL_ARG_ENABLE(crypt,[    --enable-crypt          enable crypt(3) passwords], auto)dnl
+OL_ARG_ENABLE(kpasswd,[    --enable-kpasswd      enable Kerberos password verification], no)dnl
+OL_ARG_ENABLE(spasswd,[    --enable-spasswd      enable (Cyrus) SASL password verification], no)dnl
+OL_ARG_ENABLE(modules,[    --enable-modules      enable dynamic module support], no)dnl
+OL_ARG_ENABLE(multimaster,[    --enable-multimaster  enable multimaster replication], no)dnl
+OL_ARG_ENABLE(phonetic,[    --enable-phonetic    enable phonetic/soundex], no)dnl
+OL_ARG_ENABLE(rlookups,[    --enable-rlookups    enable reverse lookups], auto)dnl
+OL_ARG_ENABLE(aci,[    --enable-aci      enable per-object ACIs], no)dnl
+OL_ARG_ENABLE(wrappers,[    --enable-wrappers    enable tcp wrapper support], no)dnl
+OL_ARG_ENABLE(dynamic,[    --enable-dynamic      enable linking built binaries with dynamic libs], no)dnl
 
 dnl SLAPD Backend options
 
 dnl SLAPD Backend options
-OL_ARG_ENABLE(bdb2,[    --enable-bdb2  enable bdb2 backend], no)dnl
-OL_ARG_WITH(bdb2_module,[      --with-bdb2-module      module type], static,
+OL_ARG_ENABLE(bdb,[    --enable-bdb      enable Berkeley DB backend], no)dnl
+OL_ARG_WITH(bdb_module,[    --with-bdb-module  module type], static,
        [static dynamic])
        [static dynamic])
-OL_ARG_ENABLE(ldap,[    --enable-ldap  enable ldap backend], no)dnl
-OL_ARG_WITH(ldap_module,[      --with-ldap-module      module type], static,
+OL_ARG_ENABLE(dnssrv,[    --enable-dnssrv        enable dnssrv backend], no)dnl
+OL_ARG_WITH(dnssrv_module,[    --with-dnssrv-module  module type], static,
        [static dynamic])
        [static dynamic])
-OL_ARG_ENABLE(ldbm,[    --enable-ldbm  enable ldbm backend], yes)dnl
-OL_ARG_WITH(ldbm_api,[      --with-ldbm-api    use LDBM API], auto,
-       [auto db2 db mdbm gdbm ndbm manual])
-OL_ARG_WITH(ldbm_module,[      --with-ldbm-module      module type], static,
+OL_ARG_ENABLE(ldap,[    --enable-ldap    enable ldap backend], no)dnl
+OL_ARG_WITH(ldap_module,[    --with-ldap-module          module type], static,
        [static dynamic])
        [static dynamic])
-OL_ARG_WITH(ldbm_type,[      --with-ldbm-type  use LDBM type], auto,
+OL_ARG_ENABLE(ldbm,[    --enable-ldbm    enable ldbm backend], yes)dnl
+OL_ARG_WITH(ldbm_api,[    --with-ldbm-api       with LDBM API], auto,
+       [auto berkeley bcompat mdbm gdbm])
+OL_ARG_WITH(ldbm_module,[    --with-ldbm-module          module type], static,
+       [static dynamic])
+OL_ARG_WITH(ldbm_type,[    --with-ldbm-type      use LDBM type], auto,
        [auto btree hash])
        [auto btree hash])
-
-OL_ARG_ENABLE(passwd,[    --enable-passwd      enable passwd backend], no)dnl
-OL_ARG_WITH(passwd_module,[      --with-passwd-module  module type], static,
+OL_ARG_ENABLE(passwd,[    --enable-passwd        enable passwd backend], no)dnl
+OL_ARG_WITH(passwd_module,[    --with-passwd-module  module type], static,
+       [static dynamic])
+OL_ARG_ENABLE(perl,[    --enable-perl    enable perl backend], no)dnl
+OL_ARG_WITH(perl_module,[    --with-perl-module          module type], static,
        [static dynamic])
        [static dynamic])
-OL_ARG_ENABLE(perl,[    --enable-perl  enable perl backend], no)dnl
-OL_ARG_WITH(perl_module,[      --with-perl-module      module type], static,
+OL_ARG_ENABLE(shell,[    --enable-shell          enable shell backend], no)dnl
+OL_ARG_WITH(shell_module,[    --with-shell-module        module type], static,
        [static dynamic])
        [static dynamic])
-OL_ARG_ENABLE(shell,[    --enable-shell        enable shell backend], no)dnl
-OL_ARG_WITH(shell_module,[      --with-shell-module    module type], static,
+OL_ARG_ENABLE(sql,[    --enable-sql      enable sql backend], no)dnl
+OL_ARG_WITH(sql_module,[    --with-sql-module    module type], static,
        [static dynamic])
        [static dynamic])
-OL_ARG_ENABLE(tcl,[    --enable-tcl    enable tcl backend], no)dnl
-OL_ARG_WITH(tcl_module,[      --with-tcl-module        module type], static,
+OL_ARG_ENABLE(tcl,[    --enable-tcl      enable tcl backend], no)dnl
+OL_ARG_WITH(tcl_module,[    --with-tcl-module    module type], static,
        [static dynamic])
 
 dnl ----------------------------------------------------------------
 dnl SLURPD OPTIONS
 AC_ARG_WITH(xxslurpdoptions,[SLURPD (Replication Daemon) Options:])
        [static dynamic])
 
 dnl ----------------------------------------------------------------
 dnl SLURPD OPTIONS
 AC_ARG_WITH(xxslurpdoptions,[SLURPD (Replication Daemon) Options:])
-OL_ARG_ENABLE(slurpd,[  --enable-slurpd        enable building slurpd], auto)dnl
+OL_ARG_ENABLE(slurpd,[  --enable-slurpd          enable building slurpd], auto)dnl
 
 dnl ----------------------------------------------------------------
 AC_ARG_WITH(xxliboptions,[Library Generation & Linking Options])
 
 dnl ----------------------------------------------------------------
 AC_ARG_WITH(xxliboptions,[Library Generation & Linking Options])
@@ -185,20 +206,13 @@ dnl ----------------------------------------------------------------
 
 dnl General "enable" options
 # validate options
 
 dnl General "enable" options
 # validate options
-if test $ol_enable_dns = yes ; then
-       if test $ol_enable_referrals = no ; then
-               AC_MSG_ERROR([DNS requires --enable-referrals])
-       fi
-       if test $ol_enable_referrals = auto ; then
-               AC_MSG_WARN([DNS requires referrals, adding --enable-referrals])
-               ol_enable_referrals=yes
-       fi
-fi
-
 if test $ol_enable_slapd = no ; then
        dnl SLAPD was specificallly disabled
 if test $ol_enable_slapd = no ; then
        dnl SLAPD was specificallly disabled
-       if test $ol_enable_bdb2 = yes ; then
-               AC_MSG_WARN([slapd disabled, ignoring --enable-bdb2 argument])
+       if test $ol_enable_bdb = yes ; then
+               AC_MSG_WARN([slapd disabled, ignoring --enable-bdb argument])
+       fi
+       if test $ol_enable_dnssrv = yes ; then
+               AC_MSG_WARN([slapd disabled, ignoring --enable-dnssrv argument])
        fi
        if test $ol_enable_ldap = yes ; then
                AC_MSG_WARN([slapd disabled, ignoring --enable-ldap argument])
        fi
        if test $ol_enable_ldap = yes ; then
                AC_MSG_WARN([slapd disabled, ignoring --enable-ldap argument])
@@ -218,6 +232,9 @@ if test $ol_enable_slapd = no ; then
        if test $ol_enable_tcl = yes ; then
                AC_MSG_WARN([slapd disabled, ignoring --enable-tcl argument])
        fi
        if test $ol_enable_tcl = yes ; then
                AC_MSG_WARN([slapd disabled, ignoring --enable-tcl argument])
        fi
+       if test $ol_enable_sql = yes ; then
+               AC_MSG_WARN([slapd disabled, ignoring --enable-sql argument])
+       fi
        if test $ol_enable_modules = yes ; then
                AC_MSG_WARN([slapd disabled, ignoring --enable-modules argument])
        fi
        if test $ol_enable_modules = yes ; then
                AC_MSG_WARN([slapd disabled, ignoring --enable-modules argument])
        fi
@@ -230,26 +247,23 @@ if test $ol_enable_slapd = no ; then
        if test $ol_enable_phonetic = yes ; then
                AC_MSG_WARN([slapd disabled, ignoring --enable-phonetic argument])
        fi
        if test $ol_enable_phonetic = yes ; then
                AC_MSG_WARN([slapd disabled, ignoring --enable-phonetic argument])
        fi
-       if test $ol_enable_quipu = yes ; then
-               AC_MSG_WARN([slapd disabled, ignoring --enable-quipu argument])
-       fi
        if test $ol_enable_rlookups = yes ; then
                AC_MSG_WARN([slapd disabled, ignoring --enable-rlookups argument])
        fi
        if test $ol_enable_aci = yes ; then
                AC_MSG_WARN([slapd disabled, ignoring --enable-aci argument])
        fi
        if test $ol_enable_rlookups = yes ; then
                AC_MSG_WARN([slapd disabled, ignoring --enable-rlookups argument])
        fi
        if test $ol_enable_aci = yes ; then
                AC_MSG_WARN([slapd disabled, ignoring --enable-aci argument])
        fi
-       if test $ol_enable_discreteaci = yes ; then
-               AC_MSG_WARN([slapd disabled, ignoring --enable-discreteaci argument])
-       fi
        if test $ol_with_ldbm_api != auto ; then
                AC_MSG_WARN([slapd disabled, ignoring --with-ldbm-api argument])
        fi
        if test $ol_with_ldbm_type != auto ; then
                AC_MSG_WARN([slapd disabled, ignoring --with-ldbm-type argument])
        fi
        if test $ol_with_ldbm_api != auto ; then
                AC_MSG_WARN([slapd disabled, ignoring --with-ldbm-api argument])
        fi
        if test $ol_with_ldbm_type != auto ; then
                AC_MSG_WARN([slapd disabled, ignoring --with-ldbm-type argument])
        fi
-       if test $ol_with_bdb2_module != static ; then
-               AC_MSG_WARN([slapd disabled, ignoring --with-bdb2-module argument])
+       if test $ol_with_bdb_module != static ; then
+               AC_MSG_WARN([slapd disabled, ignoring --with-bdb-module argument])
+       fi
+       if test $ol_with_dnssrv_module != static ; then
+               AC_MSG_WARN([slapd disabled, ignoring --with-dnssrv-module argument])
        fi
        if test $ol_with_ldap_module != static ; then
                AC_MSG_WARN([slapd disabled, ignoring --with-ldap-module argument])
        fi
        if test $ol_with_ldap_module != static ; then
                AC_MSG_WARN([slapd disabled, ignoring --with-ldap-module argument])
@@ -269,39 +283,44 @@ if test $ol_enable_slapd = no ; then
        if test $ol_with_tcl_module != static ; then
                AC_MSG_WARN([slapd disabled, ignoring --with-tcl-module argument])
        fi
        if test $ol_with_tcl_module != static ; then
                AC_MSG_WARN([slapd disabled, ignoring --with-tcl-module argument])
        fi
+       if test $ol_with_sql_module != static ; then
+               AC_MSG_WARN([slapd disabled, ignoring --with-sql-module argument])
+       fi
        if test $ol_enable_slurpd = yes ; then
                AC_MSG_ERROR([slurpd requires slapd])
        fi
 
        # force settings to no
        if test $ol_enable_slurpd = yes ; then
                AC_MSG_ERROR([slurpd requires slapd])
        fi
 
        # force settings to no
-       ol_enable_bdb2=no
+       ol_enable_bdb=no
+       ol_enable_dnssrv=no
        ol_enable_ldap=no
        ol_enable_ldbm=no
        ol_enable_passwd=no
        ol_enable_perl=no
        ol_enable_shell=no
        ol_enable_tcl=no
        ol_enable_ldap=no
        ol_enable_ldbm=no
        ol_enable_passwd=no
        ol_enable_perl=no
        ol_enable_shell=no
        ol_enable_tcl=no
+       ol_enable_sql=no
 
        ol_enable_modules=no
        ol_enable_multimaster=no
        ol_enable_phonetic=no
 
        ol_enable_modules=no
        ol_enable_multimaster=no
        ol_enable_phonetic=no
-       ol_enable_quipu=no
        ol_enable_rlookups=no
        ol_enable_aci=no
        ol_enable_rlookups=no
        ol_enable_aci=no
-       ol_enable_discreteaci=no
        ol_enable_wrappers=no
        ol_enable_dynamic=no
 
        ol_with_ldbm_api=no
        ol_with_ldbm_type=no
 
        ol_enable_wrappers=no
        ol_enable_dynamic=no
 
        ol_with_ldbm_api=no
        ol_with_ldbm_type=no
 
-       ol_with_bdb2_module=static
+       ol_with_bdb_module=static
+       ol_with_dnssrv_module=static
        ol_with_ldap_module=static
        ol_with_ldbm_module=static
        ol_with_passwd_module=static
        ol_with_perl_module=static
        ol_with_shell_module=static
        ol_with_tcl_module=static
        ol_with_ldap_module=static
        ol_with_ldbm_module=static
        ol_with_passwd_module=static
        ol_with_perl_module=static
        ol_with_shell_module=static
        ol_with_tcl_module=static
+       ol_with_sql_module=static
 
        ol_enable_slurpd=no
 
 
        ol_enable_slurpd=no
 
@@ -320,15 +339,14 @@ elif test $ol_enable_ldbm = no ; then
                AC_MSG_WARN([LDBM disabled, ignoring --with-ldbm-module argument])
        fi
 
                AC_MSG_WARN([LDBM disabled, ignoring --with-ldbm-module argument])
        fi
 
-       if test $ol_enable_bdb2 = yes ; then
-               AC_MSG_ERROR([BDB2 requires --enable-ldbm])
-       fi
-
        if test $ol_enable_modules != yes -a \
        if test $ol_enable_modules != yes -a \
+               $ol_enable_bdb = no -a \
+               $ol_enable_dnssrv = no -a \
                $ol_enable_ldap = no -a \
                $ol_enable_passwd = no -a \
                $ol_enable_perl = no -a \
                $ol_enable_shell = no -a \
                $ol_enable_ldap = no -a \
                $ol_enable_passwd = no -a \
                $ol_enable_perl = no -a \
                $ol_enable_shell = no -a \
+               $ol_enable_sql = no -a \
                $ol_enable_tcl = no ; then
                AC_MSG_ERROR([slapd requires a backend])
        fi
                $ol_enable_tcl = no ; then
                AC_MSG_ERROR([slapd requires a backend])
        fi
@@ -337,27 +355,8 @@ elif test $ol_enable_ldbm = no ; then
        ol_with_ldbm_type=no
        ol_with_ldbm_module=static
 
        ol_with_ldbm_type=no
        ol_with_ldbm_module=static
 
-elif test $ol_enable_bdb2 = yes ; then
-       dnl SLAPD with BDB2
-
-       if test $ol_with_ldbm_api != auto -a \
-               $ol_with_ldbm_api != db2 ; then
-               AC_MSG_ERROR([BDB2 requires LDBM API DB2])
-       fi
-
-       ol_with_ldbm_api=db2
-
 else
        dnl SLAPD with LDBM
 else
        dnl SLAPD with LDBM
-
-       if test $ol_enable_bdb2 != no ; then
-               if test $ol_with_ldbm_api != auto -a \
-                       $ol_with_ldbm_api != db2 ; then
-                       AC_MSG_WARN([BDB2 requires LDBM api db2 or auto])
-                       ol_enable_bdb2=no
-               fi
-       fi
-
        if test $ol_with_ldbm_api = gdbm -a \
                $ol_with_ldbm_type = btree ; then
                AC_MSG_ERROR([GDBM only supports LDBM type hash])
        if test $ol_with_ldbm_api = gdbm -a \
                $ol_with_ldbm_type = btree ; then
                AC_MSG_ERROR([GDBM only supports LDBM type hash])
@@ -379,6 +378,25 @@ if test $ol_enable_slurpd = yes ; then
        fi
 fi
 
        fi
 fi
 
+if test $ol_enable_kbind = yes -o $ol_enable_kpasswd = yes ; then
+       if test $ol_with_kerberos = no ; then
+               AC_MSG_ERROR([options require --with-kerberos])
+       fi
+       ol_with_kerberos=yes
+elif test $ol_enable_kbind = no -o $ol_enable_kpasswd = no ; then
+       if test $ol_with_kerberos != no -a $ol_with_kerberos != auto ; then
+               AC_MSG_WARN([Kerberos detection enabled unnecessarily]);
+       fi
+       ol_with_kerberos=no
+fi
+
+if test $ol_enable_spasswd = yes ; then
+       if test $ol_with_cyrus_sasl = no ; then
+               AC_MSG_ERROR([options require --with-cyrus-sasl])
+       fi
+       ol_with_cyrus_sasl=yes
+fi
+
 AC_MSG_RESULT(done)
 
 dnl ----------------------------------------------------------------
 AC_MSG_RESULT(done)
 
 dnl ----------------------------------------------------------------
@@ -389,31 +407,33 @@ LDBM_LIBS=
 LTHREAD_LIBS=
 LUTIL_LIBS=
 
 LTHREAD_LIBS=
 LUTIL_LIBS=
 
-LDAPD_LIBS=
 SLAPD_LIBS=
 SLURPD_LIBS=
 
 SLAPD_LIBS=
 SLURPD_LIBS=
 
-BUILD_LDAPD=no
 BUILD_SLAPD=no
 BUILD_SLURPD=no
 
 BUILD_SLAPD=no
 BUILD_SLURPD=no
 
-BUILD_BDB2=no
+BUILD_THREAD=no
+
+BUILD_BDB=no
+BUILD_DNSSRV=no
 BUILD_LDAP=no
 BUILD_LDBM=no
 BUILD_PASSWD=no
 BUILD_PERL=no
 BUILD_LDAP=no
 BUILD_LDBM=no
 BUILD_PASSWD=no
 BUILD_PERL=no
-BUILD_QUIPU=no
 BUILD_SHELL=no
 BUILD_SHELL=no
+BUILD_SQL=no
 BUILD_TCL=no
 BUILD_TCL=no
-BUILD_THREAD=no
 
 
-BUILD_BDB2_DYNAMIC=static
+BUILD_BDB_DYNAMIC=static
+BUILD_DNSSRV_DYNAMIC=static
 BUILD_LDAP_DYNAMIC=static
 BUILD_LDBM_DYNAMIC=static
 BUILD_PASSWD_DYNAMIC=static
 BUILD_PERL_DYNAMIC=static
 BUILD_SHELL_DYNAMIC=static
 BUILD_TCL_DYNAMIC=static
 BUILD_LDAP_DYNAMIC=static
 BUILD_LDBM_DYNAMIC=static
 BUILD_PASSWD_DYNAMIC=static
 BUILD_PERL_DYNAMIC=static
 BUILD_SHELL_DYNAMIC=static
 BUILD_TCL_DYNAMIC=static
+BUILD_SQL_DYNAMIC=static
 
 SLAPD_MODULES_LDFLAGS=
 SLAPD_MODULES_CPPFLAGS=
 
 SLAPD_MODULES_LDFLAGS=
 SLAPD_MODULES_CPPFLAGS=
@@ -423,13 +443,19 @@ SLAPD_PERL_LDFLAGS=
 MOD_PERL_LDFLAGS=
 PERL_CPPFLAGS=
 
 MOD_PERL_LDFLAGS=
 PERL_CPPFLAGS=
 
+SLAPD_SQL_LDFLAGS=
+SLAPD_SQL_LIBS=
+SLAPD_SQL_INCLUDES=
+
 MOD_TCL_LIB=
 MOD_TCL_LIB=
-KRB_LIBS=
+KRB4_LIBS=
+KRB5_LIBS=
 READLINE_LIBS=
 SASL_LIBS=
 TERMCAP_LIBS=
 TLS_LIBS=
 MODULES_LIBS=
 READLINE_LIBS=
 SASL_LIBS=
 TERMCAP_LIBS=
 TLS_LIBS=
 MODULES_LIBS=
+AUTH_LIBS=
 
 dnl ================================================================
 dnl Checks for programs
 
 dnl ================================================================
 dnl Checks for programs
@@ -522,7 +548,7 @@ if test $ol_enable_perl != no ; then
 
        else
                PERL_CPPFLAGS="`$PERLBIN -MExtUtils::Embed -e ccopts`"
 
        else
                PERL_CPPFLAGS="`$PERLBIN -MExtUtils::Embed -e ccopts`"
-               if test x"$ol_with_perl_module" == "xstatic" ; then
+               if test x"$ol_with_perl_module" = "xstatic" ; then
                        SLAPD_PERL_LDFLAGS="`$PERLBIN -MExtUtils::Embed -e ldopts|sed -e s/-lc//`"
                else
                        MOD_PERL_LDFLAGS="`$PERLBIN -MExtUtils::Embed -e ldopts|sed -e s/-lc//`"
                        SLAPD_PERL_LDFLAGS="`$PERLBIN -MExtUtils::Embed -e ldopts|sed -e s/-lc//`"
                else
                        MOD_PERL_LDFLAGS="`$PERLBIN -MExtUtils::Embed -e ldopts|sed -e s/-lc//`"
@@ -582,6 +608,14 @@ if test "${ol_cv_mkdep}" = no ; then
        AC_MSG_WARN([do not know how to generate dependencies])
 fi
 
        AC_MSG_WARN([do not know how to generate dependencies])
 fi
 
+dnl ----------------------------------------------------------------
+dnl Check for AIX security library
+AC_CHECK_LIB(s, afopen, [
+       AUTH_LIBS=-ls
+       AC_DEFINE(HAVE_AIX_SECURITY,1,[define if you have AIX security lib])
+])
+
+
 dnl ----------------------------------------------------------------
 dnl Check for module support
 ol_link_modules=no
 dnl ----------------------------------------------------------------
 dnl Check for module support
 ol_link_modules=no
@@ -602,13 +636,15 @@ if test $ol_enable_modules != no ; then
        fi
        ol_link_modules=yes
 else
        fi
        ol_link_modules=yes
 else
-       ol_with_bdb2_module=static
+       ol_with_bdb_module=static
+       ol_with_dnssrv_module=static
        ol_with_ldap_module=static
        ol_with_ldbm_module=static
        ol_with_passwd_module=static
        ol_with_perl_module=static
        ol_with_shell_module=static
        ol_with_tcl_module=static
        ol_with_ldap_module=static
        ol_with_ldbm_module=static
        ol_with_passwd_module=static
        ol_with_perl_module=static
        ol_with_shell_module=static
        ol_with_tcl_module=static
+       ol_with_sql_module=static
 fi
 
 dnl ----------------------------------------------------------------
 fi
 
 dnl ----------------------------------------------------------------
@@ -681,25 +717,22 @@ dnl HP-UX requires -lV3
 AC_CHECK_LIB(V3, sigset)
 
 dnl Gotta check for winsock manually
 AC_CHECK_LIB(V3, sigset)
 
 dnl Gotta check for winsock manually
-if test "${ac_cv_header_winsock_h}" = yes; then
-    AC_MSG_CHECKING(for winsock support)
-    AC_TRY_LINK([
-#include <winsock.h>
-    ],[
-socket(0,0,0);
-select(0,NULL,NULL,NULL,NULL);
-closesocket(0);
-gethostname(NULL,0);
-    ],[
-       AC_MSG_RESULT(yes)
-       AC_DEFINE(HAVE_WINSOCK,1,[define if you have winsock])
-       ac_cv_func_socket=yes
-       ac_cv_func_select=yes
-       ac_cv_func_closesocket=yes
-       ac_cv_func_gethostname=yes
-    ],[
-       AC_MSG_RESULT(no)
-    ])
+if test $ac_cv_header_winsock_h = yes; then
+       AC_CACHE_CHECK([for winsock], [ol_cv_winsock], 
+       AC_TRY_LINK([#include <winsock.h>],[
+                       socket(0,0,0);
+                       select(0,NULL,NULL,NULL,NULL);
+                       closesocket(0);
+                       gethostname(NULL,0);
+       ],[ol_cv_winsock=yes],[ol_cv_winsock=no])])
+
+       if test $ol_cv_winsock = yes ; then
+               AC_DEFINE(HAVE_WINSOCK,1,[define if you have winsock])
+               ac_cv_func_socket=yes
+               ac_cv_func_select=yes
+               ac_cv_func_closesocket=yes
+               ac_cv_func_gethostname=yes
+       fi
 fi
 
 dnl Find socket()
 fi
 
 dnl Find socket()
@@ -711,7 +744,6 @@ AC_CHECK_FUNC(socket, :, [
 dnl hopefully we won't include too many libraries
        AC_CHECK_LIB(socket, main)
        AC_CHECK_LIB(net, main)
 dnl hopefully we won't include too many libraries
        AC_CHECK_LIB(socket, main)
        AC_CHECK_LIB(net, main)
-       AC_CHECK_LIB(net, socket)
        AC_CHECK_LIB(nsl_s, main)
        AC_CHECK_LIB(nsl, main)
        AC_CHECK_LIB(inet, socket)
        AC_CHECK_LIB(nsl_s, main)
        AC_CHECK_LIB(nsl, main)
        AC_CHECK_LIB(inet, socket)
@@ -720,7 +752,6 @@ dnl hopefully we won't include too many libraries
 
 dnl require select
 AC_CHECK_FUNC(select, :, AC_MSG_ERROR([select() required.]))
 
 dnl require select
 AC_CHECK_FUNC(select, :, AC_MSG_ERROR([select() required.]))
-dnl AC_CHECK_FUNCS(socketpair)
 
 if test "${ac_cv_header_winsock_h}" != yes; then
     dnl Select arg types
 
 if test "${ac_cv_header_winsock_h}" != yes; then
     dnl Select arg types
@@ -747,103 +778,173 @@ fi
 
 dnl ----------------------------------------------------------------
 dnl Check for resolver routines
 
 dnl ----------------------------------------------------------------
 dnl Check for resolver routines
-AC_CHECK_FUNC(res_search,:)
-if test $ac_cv_func_res_search = no ; then 
-       AC_CHECK_LIB(bind, res_search)
-       ac_cv_func_res_search=$ac_cv_lib_bind_res_search
+ol_link_dnssrv=no
+AC_CHECK_FUNC(res_query,:)
+if test $ac_cv_func_res_query = no ; then 
+       AC_CHECK_LIB(bind, res_query)
+       ac_cv_func_res_query=$ac_cv_lib_bind_res_query
 fi
 
 fi
 
-if test $ac_cv_func_res_search = no ; then 
-       AC_CHECK_LIB(bind, __res_search)
-       ac_cv_func_res_search=$ac_cv_lib_bind___res_search
+if test $ac_cv_func_res_query = no ; then 
+       AC_CHECK_LIB(bind, __res_query)
+       ac_cv_func_res_query=$ac_cv_lib_bind___res_query
 fi
 
 fi
 
-if test $ac_cv_func_res_search = no ; then 
-       AC_CHECK_LIB(resolv, res_search)
-       ac_cv_func_res_search=$ac_cv_lib_resolv_res_search
+if test $ac_cv_func_res_query = no ; then 
+       AC_CHECK_LIB(resolv, res_query)
+       ac_cv_func_res_query=$ac_cv_lib_resolv_res_query
 fi
 
 fi
 
-if test "$ac_cv_func_res_search" = yes ; then
-       AC_DEFINE(HAVE_RES_SEARCH,1,
-               [define if you have res_search()])
-elif test $ol_enable_dns = yes ; then
-       AC_MSG_ERROR([--enable-dns requires res_search])
-elif test $ol_enable_dns != no ; then
-       AC_MSG_WARN([no res_search, disabling DNS support])
+if test "$ac_cv_func_res_query" = yes ; then
+       AC_DEFINE(HAVE_RES_QUERY,1,
+               [define if you have res_query()])
+
+       if test $ol_enable_dnssrv != no ; then
+               ol_link_dnssrv=yes
+       fi
 fi
 
 fi
 
+if test "$ol_enable_dnssrv" = yes -a "$ol_link_dnssrv" = no ; then
+       AC_MSG_ERROR([DNSSRV requires res_query()])
+fi
 
 dnl ----------------------------------------------------------------
 
 dnl ----------------------------------------------------------------
-dnl ISODE tests
-ol_link_isode=no
-if test $ol_enable_ldapd != no ; then
-       AC_MSG_WARN([ldapd is not supported and may suffer from bit rot.])
-
-       dnl look for ISODE libraries
-       AC_CHECK_LIB(xtpp, main, [
-               ol_link_isode=yes
-               AC_DEFINE(HAVE_XTPP,1, [define if you have -lxttp])
-               LDAPD_LIBS="$LDAPD_LIBS -lxtpp -lxtdsap -lxtisode -losi"
-               ],:,[-lxtdsap -lxtisode -losi])
-       AC_CHECK_LIB(dsap, main, [
-               ol_link_isode=yes
-               AC_DEFINE(HAVE_DSAP,1, [define if you have -ldsap])
-               LDAPD_LIBS="$LDAPD_LIBS -ldsap"
-               ],:,[-lisode])
-       AC_CHECK_LIB(isode, main, [
-               ol_link_isode=yes
-               AC_DEFINE(HAVE_ISODE,1, [define if you have -lisode])
-               LDAPD_LIBS="$LDAPD_LIBS -lisode"
-               ],:)
-fi
-
-if test $ol_link_isode != no; then
-       AC_CHECK_LIB(pp, main, [
-               AC_DEFINE(HAVE_PP,1, [define if you have -lpp])
-               LDAPD_LIBS="-lpp $LDAPD_LIBS"
-               ],:)
-
-       AC_PATH_PROG(PEPSY, pepsy)
+dnl PF_INET6 support requires getaddrinfo and INET6_ADDRSTRLEN
+dnl PF_LOCAL may use getaddrinfo in available
+AC_CHECK_FUNCS( getaddrinfo )
+
+ol_link_ipv6=no
+if test $ac_cv_func_getaddrinfo = no ; then
+       if test $ol_enable_ipv6 = yes ; then
+               AC_MSG_ERROR([IPv6 support requires getaddrinfo()])
+       fi
+else
+       AC_CHECK_FUNCS( gai_strerror )
+
+       AC_CACHE_CHECK([INET6_ADDRSTRLEN],[ol_cv_inet6_addrstrlen],[
+               AC_EGREP_CPP(__has_inet6_addrstrlen__,[
+#                      include <netinet/in.h>
+#                      ifdef INET6_ADDRSTRLEN
+                               __has_inet6_addrstrlen__;
+#                      endif
+               ], [ol_cv_inet6_addrstrlen=yes], [ol_cv_inet6_addrstrlen=no])])
+
+       if test $ol_cv_inet6_addrstrlen = yes ; then
+               ol_link_ipv6=yes
+       elif test $ol_enable_ipv6 = yes ; then
+               AC_MSG_ERROR([IPv6 support requires INET6_ADDRSTRLEN])
+       fi
 fi
 
 fi
 
-dnl ----------------------------------------------------------------
-dnl QUIPU
-if test $ol_enable_quipu != no ; then
-       AC_CHECK_HEADERS(quipu/commonarg.h)
-
-       if test $ac_cv_header_quipu_commonarg_h = yes ; then
-               BUILD_QUIPU=yes
-       elif test $ol_enable_quipu = auto ; then
-               AC_MSG_WARN([no quipu for --enable-quipu=auto, disabling])
-       else
-               AC_MSG_ERROR(no quipu for --enable-quipu=$ol_enable_quipu)
+if test $ol_enable_local != no ; then
+       AC_CHECK_HEADERS( sys/un.h )
+
+       if test $ol_enable_local = auto ; then
+               ol_enable_local=$ac_cv_header_sys_un_h
+       elif test $ac_cv_header_sys_un_h = no ; then
+               AC_MSG_ERROR([AF_LOCAL domain support requires sys/un.h])
        fi
 fi
 
 dnl ----------------------------------------------------------------
 dnl Kerberos
        fi
 fi
 
 dnl ----------------------------------------------------------------
 dnl Kerberos
-ol_link_kerberos=no
+ol_link_kbind=no
+ol_link_kpasswd=no
+ol_link_krb5=no
+ol_link_krb4=no
+
+if test $ol_with_kerberos = yes -o $ol_with_kerberos = auto \
+       -o $ol_with_kerberos = k5 -o $ol_with_kerberos = k5only \
+       -o $ol_with_kerberos = k425 ; then
+
+       AC_CHECK_HEADERS(krb5.h)
+
+       if test $ac_cv_header_krb5_h = yes ; then
+               dnl lazy check for Heimdal Kerberos
+               AC_CHECK_HEADERS(heim_err.h)
+               if test $ac_cv_header_heim_err_h = yes ; then
+                       krb5_impl=heimdal
+               else
+                       krb5_impl=mit
+               fi
+
+               if test $krb5_impl = mit; then
+                       AC_CHECK_LIB(krb5, main,
+                               [have_krb5=yes
+                               KRB5_LIBS="-lkrb5 -lcrypto -lcom_err"],
+                               [have_krb5=no],
+                               [-lcrypto -lcom_err])
+
+               elif test $krb5_impl = heimdal; then
+                       AC_CHECK_LIB(krb5, main,
+                               [have_krb5=yes
+                               KRB5_LIBS="-lkrb5 -ldes -lasn1 -lroken -lcom_err"],
+                               [have_krb5=no],
+                               [-ldes -lasn1 -lroken -lcom_err])
+
+                       AC_DEFINE(HAVE_HEIMDAL_KERBEROS, 1,
+                               [define if you have HEIMDAL Kerberos])
+               else
+                       have_krb5=no
+                       AC_MSG_WARN([Unrecongized Kerberos5 Implementation])
+               fi
+
+               if test $have_krb5 = yes ; then
+                       ol_link_krb5=yes
+
+                       AC_DEFINE(HAVE_KRB5, 1,
+                               [define if you have Kerberos V])
+
+                       if test $ol_enable_kpasswd != no ; then
+                               ol_link_kpasswd=yes;
+                       fi
+
+                       if test $ol_with_kerberos = k5only ; then
+                               ol_with_kerberos=found
+                       fi
+
+               elif test $ol_with_kerberos != auto ; then
+                       AC_MSG_ERROR([Required Kerberos 5 support not available])
+               fi
+
+       fi
+fi
+
+if test $ol_link_krb5 = yes -a \( $ol_with_kerberos = yes -o \
+       $ol_with_kerberos = auto -o $ol_with_kerberos = k425 \) ; then
 
 
-if test $ol_with_kerberos = auto -o $ol_with_kerberos = k5 ; then
        AC_CHECK_HEADERS(kerberosIV/krb.h kerberosIV/des.h)
 
        if test $ac_cv_header_kerberosIV_krb_h = yes ; then
        AC_CHECK_HEADERS(kerberosIV/krb.h kerberosIV/des.h)
 
        if test $ac_cv_header_kerberosIV_krb_h = yes ; then
-               AC_CHECK_LIB(krb4, main, [have_k5=yes], [have_k5=no],
-                       [-lkrb5 -ldes425])
+               if test $krb5_impl = mit; then
+                       AC_CHECK_LIB(krb4, main, [have_k425=yes
+                               KRB4_LIBS="-lkrb4 -ldes425"], [have_k425=no],
+                               [-ldes425 -lkrb5 -lcrypto -lcom_err])
 
 
-               if test $have_k5 = yes ; then
-                       ol_with_kerberos=found
-                       ol_link_kerberos=yes
+               elif test $krb5_impl = heimdal; then
+                       AC_CHECK_LIB(krb4, main, [have_k425=yes
+                               KRB4_LIBS="-lkrb4"], [have_k425=no],
+                               [-lkrb5 -ldes -lasn1 -lroken -lcom_err])
 
 
-                       KRB_LIBS="-lkrb4 -lkrb5 -ldes425"
+               else
+                       have_425=no
+                       AC_MSG_WARN([Unrecongized Kerberos V Implementation])
+               fi
+
+               if test $have_k425 = yes ; then
+                       ol_with_kerberos=found
+                       ol_link_krb4=yes
 
 
-                       LIBS="$KRB_LIBS $LIBS"
+                       AC_DEFINE(HAVE_KRB425, 1,
+                               [define if you have Kerberos V with IV support])
+                       AC_DEFINE(HAVE_KRB4, 1,
+                               [define if you have Kerberos IV])
 
                        AC_CACHE_CHECK([for des_debug in Kerberos libraries],
                                [ol_cv_var_des_debug], [
                                dnl save the flags
                                save_LIBS="$LIBS"
 
                        AC_CACHE_CHECK([for des_debug in Kerberos libraries],
                                [ol_cv_var_des_debug], [
                                dnl save the flags
                                save_LIBS="$LIBS"
-                               LIBS="$KRB_LIBS $LIBS"
+                               LIBS="$KRB4_LIBS $KRB5_LIBS $LIBS"
                                AC_TRY_LINK([
 #include <kerberosIV/krb.h>
 #include <kerberosIV/des.h>
                                AC_TRY_LINK([
 #include <kerberosIV/krb.h>
 #include <kerberosIV/des.h>
@@ -865,8 +966,12 @@ des_debug = 1;
        fi
 fi
 
        fi
 fi
 
-if test $ol_with_kerberos = auto -o $ol_with_kerberos = k4 \
-       -o $ol_with_kerberos = kth ; then
+if test $ol_link_krb5 = yes ; then
+       ol_with_kerberos=found
+fi
+
+if test $ol_with_kerberos = yes -o $ol_with_kerberos = auto \
+       -o $ol_with_kerberos = k4 -o $ol_with_kerberos = kth ; then
 
        AC_CHECK_HEADERS(krb.h des.h krb-archaeology.h )
 
 
        AC_CHECK_HEADERS(krb.h des.h krb-archaeology.h )
 
@@ -875,9 +980,12 @@ if test $ol_with_kerberos = auto -o $ol_with_kerberos = k4 \
 
                if test $have_k4 = yes ; then
                        ol_with_kerberos=found
 
                if test $have_k4 = yes ; then
                        ol_with_kerberos=found
-                       ol_link_kerberos=yes
+                       ol_link_krb4=yes
 
 
-                       KRB_LIBS="-lkrb -ldes"
+                       AC_DEFINE(HAVE_KRB4, 1,
+                               [define if you have Kerberos IV])
+
+                       KRB4_LIBS="-lkrb -ldes"
 
                        if test $ac_cv_header_krb_archaeology_h = yes ; then
                                AC_DEFINE(HAVE_KTH_KERBEROS, 1,
 
                        if test $ac_cv_header_krb_archaeology_h = yes ; then
                                AC_DEFINE(HAVE_KTH_KERBEROS, 1,
@@ -887,18 +995,28 @@ if test $ol_with_kerberos = auto -o $ol_with_kerberos = k4 \
        fi
 fi
 
        fi
 fi
 
-if test $ol_link_kerberos = yes ; then
+if test $ol_link_krb4 = yes -a $ol_enable_kpasswd != no ; then
+       ol_link_kpasswd=yes
+fi
+
+if test $ol_link_krb4 = yes -a $ol_enable_kbind != no ; then
+       ol_link_kbind=yes
+
+elif test $ol_enable_kbind = yes ; then
+       AC_MSG_ERROR([Kerberos IV detection failed])
+fi
+
+if test $ol_link_krb4 = yes -o $ol_link_krb5 = yes ; then
        AC_DEFINE(HAVE_KERBEROS, 1, [define if you have Kerberos])
 
 elif test $ol_with_kerberos != auto -a $ol_with_kerberos != no ; then
        AC_DEFINE(HAVE_KERBEROS, 1, [define if you have Kerberos])
 
 elif test $ol_with_kerberos != auto -a $ol_with_kerberos != no ; then
-       AC_ERROR([Kerberos detection failed.])
+       AC_MSG_ERROR([Kerberos detection failed])
 fi
 
 dnl ----------------------------------------------------------------
 dnl TLS/SSL
 ol_link_tls=no
 if test $ol_with_tls != no ; then
 fi
 
 dnl ----------------------------------------------------------------
 dnl TLS/SSL
 ol_link_tls=no
 if test $ol_with_tls != no ; then
-       
        AC_CHECK_HEADERS(openssl/ssl.h ssl.h)
        
        if test $ac_cv_header_openssl_ssl_h = yes -o $ac_cv_header_ssl_h = yes ; then
        AC_CHECK_HEADERS(openssl/ssl.h ssl.h)
        
        if test $ac_cv_header_openssl_ssl_h = yes -o $ac_cv_header_ssl_h = yes ; then
@@ -939,11 +1057,21 @@ if test $ol_with_tls != no ; then
                        fi
                fi
        fi
                        fi
                fi
        fi
+
+else
+       AC_WARN([TLS privacy protection not supported!])
 fi
 
 if test $ol_link_tls = yes ; then
        AC_DEFINE(HAVE_TLS, 1, [define if you have TLS])
 fi
 
 if test $ol_link_tls = yes ; then
        AC_DEFINE(HAVE_TLS, 1, [define if you have TLS])
-fi     
+
+elif test $ol_with_tls = auto ; then
+       AC_WARN([Could not locate TLS/SSL package])
+       AC_WARN([TLS privacy protection not supported!])
+
+elif test $ol_with_tls != no ; then
+       AC_ERROR([Could not locate TLS/SSL package])
+fi
 
 dnl ----------------------------------------------------------------
 dnl Tests for reentrant functions necessary to build a
 
 dnl ----------------------------------------------------------------
 dnl Tests for reentrant functions necessary to build a
@@ -993,14 +1121,19 @@ ol_link_threads=no
 if test $ol_with_threads = auto -o $ol_with_threads = yes \
        -o $ol_with_threads = nt ; then
 
 if test $ol_with_threads = auto -o $ol_with_threads = yes \
        -o $ol_with_threads = nt ; then
 
-       dnl Not much to check. If we're in mingw32, we assume win32 threads.
-       if test "$ac_cv_mingw32" = yes ; then
+       OL_NT_THREADS
+
+       if test "$ol_cv_nt_threads" = yes ; then
        ol_link_threads=nt
        ol_with_threads=found
        ol_with_yielding_select=yes
        ol_link_threads=nt
        ol_with_threads=found
        ol_with_yielding_select=yes
-       AC_MSG_CHECKING(for NT threads)
-       AC_MSG_RESULT(yes)
-       AC_DEFINE(HAVE_NT_THREADS,1,[if you have NT threads])
+
+               AC_DEFINE(HAVE_NT_SERVICE_MANAGER,1,[if you have NT Service Manager])
+               AC_DEFINE(HAVE_NT_EVENT_LOG,1,[if you have NT Event Log])
+       fi
+
+       if test $ol_with_threads = nt ; then
+               AC_MSG_ERROR([could not locate NT Threads])
        fi
 fi
 
        fi
 fi
 
@@ -1150,7 +1283,7 @@ dnl                       [ol_cv_pthread_lpthread_lexc])
                        fi
 
                        dnl Check functions for compatibility
                        fi
 
                        dnl Check functions for compatibility
-                       AC_CHECK_FUNCS(pthread_kill)
+                       AC_CHECK_FUNCS(pthread_kill pthread_rwlock_destroy)
 
                        dnl Check for pthread_detach with <pthread.h> inclusion
                        dnl as it's symbol may have been mangled.
 
                        dnl Check for pthread_detach with <pthread.h> inclusion
                        dnl as it's symbol may have been mangled.
@@ -1542,47 +1675,23 @@ if test $ol_link_threads != no ; then
 fi
 
 dnl ----------------------------------------------------------------
 fi
 
 dnl ----------------------------------------------------------------
-
 ol_link_ldbm=no 
 ol_link_ldbm=no 
-if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = db2 ; then
-       OL_BERKELEY_DB2
 
 
-       if test $ol_cv_berkeley_db2 = yes ; then
-               ol_link_ldbm=db2
-               ol_with_ldbm_api=db2
+if test $ol_with_ldbm_api = auto \
+       -o $ol_with_ldbm_api = berkeley \
+       -o $ol_with_ldbm_api = bcompat ; then
 
 
-               if test $ol_with_ldbm_type = hash ; then
-                       AC_DEFINE(LDBM_USE_DBHASH,1,
-                               [define this to use DBHASH w/ LDBM backend])
-               else
-                       AC_DEFINE(LDBM_USE_DBBTREE,1,
-                               [define this to use DBBTREE w/ LDBM backend])
-               fi
-
-               OL_BERKELEY_DB2_DB_THREAD
-
-               dnl $ol_cv_lib_db2 should be yes or -ldb
-               dnl (it could be no, but that would be an error
-               if test $ol_cv_lib_db2 != yes ; then
-                       LDBM_LIBS="$LDBM_LIBS $ol_cv_lib_db2"
-               fi
-       fi
-fi
-
-ol_link_bdb2=no
-if test $ol_link_ldbm = db2 -a $ol_enable_bdb2 != no ; then
-       if test $ol_cv_berkeley_db2_db_thread != no ; then
-               ol_link_bdb2=yes
+       if test $ol_with_ldbm_api = bcompat; then \
+               OL_BERKELEY_COMPAT_DB
        else
        else
-               AC_MSG_WARN([Installed BerkeleyDB does not provide DB_THREAD support.])
+               OL_BERKELEY_DB
        fi
        fi
-fi
 
 
-if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = db ; then
-       OL_BERKELEY_DB
+       if test $ol_cv_berkeley_db != no ; then
+               AC_DEFINE(HAVE_BERKELEY_DB,1,
+                       [define this if Berkeley DB is available])
 
 
-       if test $ol_cv_berkeley_db = yes ; then
-               ol_link_ldbm=db
+               ol_link_ldbm=berkeley
                ol_with_ldbm_api=db
 
                if test $ol_with_ldbm_type = hash ; then
                ol_with_ldbm_api=db
 
                if test $ol_with_ldbm_type = hash ; then
@@ -1601,15 +1710,6 @@ if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = db ; then
        fi
 fi
 
        fi
 fi
 
-if test $ol_with_ldbm_api = manual ; then
-       dnl User thinks he can manually configure LDBM api.
-       ol_link_ldbm=yes
-
-       AC_MSG_WARN([LDBM defines and link options must be set manually])
-
-       AC_CHECK_HEADERS(db.h db_185.h gdbm.h ndbm.h)
-fi
-
 if test $ol_link_ldbm = no -a $ol_with_ldbm_type = btree ; then
        AC_MSG_WARN(Could not find LDBM with BTREE support)
        ol_with_ldbm_api=none
 if test $ol_link_ldbm = no -a $ol_with_ldbm_type = btree ; then
        AC_MSG_WARN(Could not find LDBM with BTREE support)
        ol_with_ldbm_api=none
@@ -1640,9 +1740,7 @@ if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = gdbm ; then
        fi
 fi
 
        fi
 fi
 
-if test $ol_with_ldbm_api = auto ; then
-       AC_MSG_WARN([skipping automatic checking for NDBM, must be manually enabled.])
-elif test $ol_with_ldbm_api = ndbm ; then
+if test $ol_with_ldbm_api = ndbm ; then
        OL_NDBM
 
        if test $ol_cv_ndbm = yes ; then
        OL_NDBM
 
        if test $ol_cv_ndbm = yes ; then
@@ -1714,9 +1812,32 @@ if test $ol_enable_syslog != no ; then
 fi
 
 dnl ----------------------------------------------------------------
 fi
 
 dnl ----------------------------------------------------------------
-if test $ol_enable_dmalloc != no ; then
-       AC_CHECK_HEADERS(dmalloc.h)
-       AC_CHECK_LIB(dmalloc, dmalloc_shutdown)
+dnl dmalloc support (deprecated in favor of -DCSRIMALLOC support)
+dnl if test $ol_enable_dmalloc != no ; then
+dnl    AC_CHECK_HEADERS(dmalloc.h)
+dnl    AC_CHECK_LIB(dmalloc, dmalloc_shutdown)
+dnl fi
+
+dnl ----------------------------------------------------------------
+dnl SQL
+ol_link_sql=no
+if test $ol_enable_sql != no ; then
+       AC_CHECK_LIB(iodbc,SQLDriverConnect,[have_iodbc=yes],[have_iodbc=no])
+       if test $have_iodbc = yes ; then
+               ol_link_sql="-liodbc"
+       else
+               AC_CHECK_LIB(odbc,SQLDriverConnect,[have_odbc=yes],[have_odbc=no])
+               if test $have_odbc = yes ; then
+                       ol_link_sql="-lodbc"
+               fi
+       fi
+
+       if test $ol_link_sql != no ; then
+               SLAPD_SQL_LIBS="$ol_link_sql"
+
+       elif test $ol_enable_sql != auto ; then
+               AC_MSG_ERROR([could not locate suitable ODBC library])
+       fi
 fi
 
 dnl ----------------------------------------------------------------
 fi
 
 dnl ----------------------------------------------------------------
@@ -1730,7 +1851,7 @@ if test $ol_enable_tcl != no ; then
                for lib in tcl tcl7.6 tcl8.0 tcl8.2 ; do
                        AC_CHECK_LIB($lib,main,
                          [have_tcl=yes
                for lib in tcl tcl7.6 tcl8.0 tcl8.2 ; do
                        AC_CHECK_LIB($lib,main,
                          [have_tcl=yes
-                          if test x"$ol_with_tcl_module" == "xstatic" ; then
+                          if test x"$ol_with_tcl_module" = "xstatic" ; then
                               SLAPD_LIBS="$SLAPD_LIBS -l${lib}"
                           else
                               MOD_TCL_LIB="-l${lib}"
                               SLAPD_LIBS="$SLAPD_LIBS -l${lib}"
                           else
                               MOD_TCL_LIB="-l${lib}"
@@ -1781,8 +1902,9 @@ dnl
 dnl Check for Cyrus SASL
 dnl
 ol_link_sasl=no
 dnl Check for Cyrus SASL
 dnl
 ol_link_sasl=no
+ol_link_spasswd=no
 if test $ol_with_cyrus_sasl != no ; then
 if test $ol_with_cyrus_sasl != no ; then
-       AC_CHECK_HEADER(sasl.h)
+       AC_CHECK_HEADERS(sasl.h)
 
        if test $ac_cv_header_sasl_h = yes ; then
                AC_CHECK_LIB(sasl, sasl_client_init,
 
        if test $ac_cv_header_sasl_h = yes ; then
                AC_CHECK_LIB(sasl, sasl_client_init,
@@ -1795,8 +1917,25 @@ if test $ol_with_cyrus_sasl != no ; then
                fi
        fi
 
                fi
        fi
 
-       if test $ol_link_sasl = no -a $ol_with_cyrus_sasl = yes ; then
-               AC_MSG_ERROR(no suitable API for --with-cyrus-sasl=$ol_with_cyrus_sasl)
+       if test $ol_link_sasl = no ; then
+               if test $ol_with_cyrus_sasl != auto ; then
+                       AC_MSG_ERROR([Could not locate Cyrus SASL])
+               else
+                       AC_MSG_WARN([Could not locate Cyrus SASL])
+                       AC_MSG_WARN([SASL authentication not supported!])
+                       if test $ol_link_tls = no ; then
+                               AC_MSG_WARN([Strong authentication not supported!])
+                       fi
+               fi
+
+       elif test $ol_enable_spasswd != no ; then
+               ol_link_spasswd=yes
+       fi
+
+else
+       AC_MSG_WARN([SASL authentication not supported!])
+       if test $ol_link_tls = no ; then
+               AC_MSG_WARN([Strong authentication not supported!])
        fi
 fi
 
        fi
 fi
 
@@ -1913,6 +2052,10 @@ AC_TYPE_PID_T
 AM_TYPE_PTRDIFF_T
 AC_TYPE_SIGNAL
 AC_TYPE_SIZE_T
 AM_TYPE_PTRDIFF_T
 AC_TYPE_SIGNAL
 AC_TYPE_SIZE_T
+
+AC_CHECK_TYPE(ssize_t, [signed int])
+AC_CHECK_TYPE(caddr_t, [char *])
+
 OL_TYPE_SOCKLEN_T
 AC_STRUCT_ST_BLKSIZE
 AC_HEADER_TIME
 OL_TYPE_SOCKLEN_T
 AC_STRUCT_ST_BLKSIZE
 AC_HEADER_TIME
@@ -1920,12 +2063,10 @@ AC_STRUCT_TM
 AC_TYPE_UID_T
 OL_TYPE_SIG_ATOMIC_T
 
 AC_TYPE_UID_T
 OL_TYPE_SIG_ATOMIC_T
 
-dnl only check these if we're not Mingw32
-if test "$ac_cv_mingw32" != yes ; then
-    AC_TYPE_GETGROUPS
-    OL_STRUCT_PASSWD_PW_GECOS
-    OL_STRUCT_PASSWD_PW_PASSWD
-fi
+dnl AC_TYPE_GETGROUPS
+
+OL_STRUCT_PASSWD_PW_GECOS
+OL_STRUCT_PASSWD_PW_PASSWD
 
 OL_C_UPPER_LOWER
 AC_C_CONST
 
 OL_C_UPPER_LOWER
 AC_C_CONST
@@ -1933,31 +2074,25 @@ OL_C_VOLATILE
 
 if test $cross_compiling = yes ; then
        AC_DEFINE(CROSS_COMPILING, 1, [define if cross compiling])
 
 if test $cross_compiling = yes ; then
        AC_DEFINE(CROSS_COMPILING, 1, [define if cross compiling])
-
-       AC_DEFINE(LBER_INT_T,long)
-       AC_DEFINE(LBER_TAG_T,long)
-       AC_DEFINE(LBER_SOCKET_T,int)
-
 else
        AC_C_BIGENDIAN
 else
        AC_C_BIGENDIAN
-       AC_CHECK_SIZEOF(short) 
-       AC_CHECK_SIZEOF(int) 
-       AC_CHECK_SIZEOF(long)
+fi
 
 
-       if test "$ac_cv_sizeof_int" -lt 4 ; then
-               AC_MSG_WARN([OpenLDAP requires 'int' to be 32 bits or greater.])
+AC_COMPILE_CHECK_SIZEOF(short) 
+AC_COMPILE_CHECK_SIZEOF(int) 
+AC_COMPILE_CHECK_SIZEOF(long)
 
 
-               AC_DEFINE(LBER_INT_T,long)
-               AC_DEFINE(LBER_TAG_T,long)
-               AC_DEFINE(LBER_SOCKET_T,int)
-       else
-               AC_DEFINE(LBER_INT_T,int)
-               AC_DEFINE(LBER_TAG_T,long)
-               AC_DEFINE(LBER_SOCKET_T,int)
-       fi
+if test "$ac_cv_sizeof_int" -lt 4 ; then
+       AC_MSG_WARN([OpenLDAP requires 'int' to be 32 bits or greater.])
+
+       AC_DEFINE(LBER_INT_T,long)
+else
+       AC_DEFINE(LBER_INT_T,int)
 fi
 
 AC_DEFINE(LBER_LEN_T,long)
 fi
 
 AC_DEFINE(LBER_LEN_T,long)
+AC_DEFINE(LBER_SOCKET_T,int)
+AC_DEFINE(LBER_TAG_T,long)
 
 dnl ----------------------------------------------------------------
 dnl Checks for library functions.
 
 dnl ----------------------------------------------------------------
 dnl Checks for library functions.
@@ -1968,23 +2103,17 @@ dnl AM_FUNC_STRTOD
 
 OL_FUNC_INET_ATON
 
 
 OL_FUNC_INET_ATON
 
-dnl Check for Mingw32 specific functions.
-if test "$ac_cv_mingw32" = yes ; then
-    AC_CHECK_FUNC(_snprintf, [
-       ac_cv_func_snprintf=yes
+dnl Check for NT specific routines
+AC_CHECK_FUNC(_spawnlp, AC_DEFINE(HAVE_SPAWNLP,1,[if you have spawnlp()]))
+
+AC_CHECK_FUNC(_snprintf, [ac_cv_func_snprintf=yes
        AC_DEFINE(snprintf, _snprintf, [define to snprintf routine])
        AC_DEFINE(snprintf, _snprintf, [define to snprintf routine])
-    ])
+])
 
 
-    AC_CHECK_FUNC(_vsnprintf, [
-       ac_cv_func_vsnprintf=yes
+AC_CHECK_FUNC(_vsnprintf, [ac_cv_func_vsnprintf=yes
        AC_DEFINE(vsnprintf, _vsnprintf, [define to vsnprintf routine])
        AC_DEFINE(vsnprintf, _vsnprintf, [define to vsnprintf routine])
-    ])
-
-    AC_CHECK_FUNC(_spawnlp, AC_DEFINE(HAVE_SPAWNLP,1,[if you have spawnlp()]))
-fi
+])
 
 
-dnl we should use vfork instead of fork in a number of places...
-dnl AC_FUNC_VFORK
 AC_FUNC_VPRINTF
 
 if test $ac_cv_func_vprintf = yes ; then
 AC_FUNC_VPRINTF
 
 if test $ac_cv_func_vprintf = yes ; then
@@ -1995,6 +2124,7 @@ fi
 AC_CHECK_FUNCS(                \
        bcopy                   \
        closesocket             \
 AC_CHECK_FUNCS(                \
        bcopy                   \
        closesocket             \
+       chroot                  \
        endgrent                \
        endpwent                \
        flock                   \
        endgrent                \
        endpwent                \
        flock                   \
@@ -2002,6 +2132,7 @@ AC_CHECK_FUNCS(           \
        getgrgid                \
        gethostname             \
        getpass                 \
        getgrgid                \
        gethostname             \
        getpass                 \
+       getpassphrase   \
        getpwuid                \
        getpwnam                \
        getspnam                \
        getpwuid                \
        getpwnam                \
        getspnam                \
@@ -2068,16 +2199,12 @@ if test "$ol_enable_syslog" = yes ; then
        AC_DEFINE(LDAP_SYSLOG,1,
                [define this to add syslog code])
 fi
        AC_DEFINE(LDAP_SYSLOG,1,
                [define this to add syslog code])
 fi
-if test "$ol_enable_libui" = yes ; then
-       AC_DEFINE(LDAP_LIBUI,1,
-               [define this for LDAP User Interface support])
-fi
 if test "$ol_enable_cache" = no ; then
        AC_DEFINE(LDAP_NOCACHE,1,
                [define this to remove -lldap cache support])
 fi
 if test "$ol_enable_cache" = no ; then
        AC_DEFINE(LDAP_NOCACHE,1,
                [define this to remove -lldap cache support])
 fi
-if test "$ol_enable_dns" != no ; then
-       AC_DEFINE(LDAP_API_FEATURE_X_OPENLDAP_V2_DNS,LDAP_VENDOR_VERSION)
+if test "$ol_link_kbind" != no ; then
+       AC_DEFINE(LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND,LDAP_VENDOR_VERSION)
 fi
 if test "$ol_enable_proctitle" != no ; then
        AC_DEFINE(LDAP_PROCTITLE,1,
 fi
 if test "$ol_enable_proctitle" != no ; then
        AC_DEFINE(LDAP_PROCTITLE,1,
@@ -2086,16 +2213,24 @@ fi
 if test "$ol_enable_referrals" != no ; then
        AC_DEFINE(LDAP_API_FEATURE_X_OPENLDAP_V2_REFERRALS,LDAP_VENDOR_VERSION)
 fi
 if test "$ol_enable_referrals" != no ; then
        AC_DEFINE(LDAP_API_FEATURE_X_OPENLDAP_V2_REFERRALS,LDAP_VENDOR_VERSION)
 fi
-if test "$ol_enable_cldap" != no ; then
-       AC_DEFINE(LDAP_CONNECTIONLESS,1,[define to support CLDAP])
+if test "$ol_enable_local" != no; then
+       AC_DEFINE(LDAP_PF_LOCAL,1,[define to support PF_LOCAL])
 fi
 fi
-
-if test "$ol_enable_crypt" != no ; then
-       AC_DEFINE(SLAPD_CRYPT,1,[define to support crypt(3) passwords])
+if test "$ol_link_ipv6" != no; then
+       AC_DEFINE(LDAP_PF_INET6,1,[define to support PF_INET6])
 fi
 if test "$ol_enable_cleartext" != no ; then
        AC_DEFINE(SLAPD_CLEARTEXT,1,[define to support cleartext passwords])
 fi
 fi
 if test "$ol_enable_cleartext" != no ; then
        AC_DEFINE(SLAPD_CLEARTEXT,1,[define to support cleartext passwords])
 fi
+if test "$ol_enable_crypt" != no ; then
+       AC_DEFINE(SLAPD_CRYPT,1,[define to support crypt(3) passwords])
+fi
+if test "$ol_link_kpasswd" != no ; then
+       AC_DEFINE(SLAPD_KPASSWD,1,[define to support Kerberos passwords])
+fi
+if test "$ol_link_spasswd" != no ; then
+       AC_DEFINE(SLAPD_SPASSWD,1,[define to support SASL passwords])
+fi
 if test "$ol_enable_multimaster" != no ; then
        AC_DEFINE(SLAPD_MULTIMASTER,1,[define to support multimaster replication])
 fi
 if test "$ol_enable_multimaster" != no ; then
        AC_DEFINE(SLAPD_MULTIMASTER,1,[define to support multimaster replication])
 fi
@@ -2108,9 +2243,6 @@ fi
 if test "$ol_enable_aci" != no ; then
        AC_DEFINE(SLAPD_ACI_ENABLED,1,[define to support per-object ACIs])
 fi
 if test "$ol_enable_aci" != no ; then
        AC_DEFINE(SLAPD_ACI_ENABLED,1,[define to support per-object ACIs])
 fi
-if test "$ol_enable_discreteaci" != no ; then
-       AC_DEFINE(SLAPD_ACI_DISCRETE_RIGHTS,1,[define to support discrete rights in ACIs])
-fi
 
 if test "$ol_link_modules" != no ; then
        AC_DEFINE(SLAPD_MODULES,1,[define to support modules])
 
 if test "$ol_link_modules" != no ; then
        AC_DEFINE(SLAPD_MODULES,1,[define to support modules])
@@ -2118,16 +2250,29 @@ if test "$ol_link_modules" != no ; then
        SLAPD_MODULES_LDFLAGS="-dlopen self"
 fi
 
        SLAPD_MODULES_LDFLAGS="-dlopen self"
 fi
 
-if test "$ol_link_bdb2" != no ; then
-       AC_DEFINE(SLAPD_BDB2,1,[define to support BDB2 backend])
+if test "$ol_enable_bdb" != no ; then
+       AC_DEFINE(SLAPD_BDB,1,[define to support BDB backend])
        BUILD_SLAPD=yes
        BUILD_SLAPD=yes
-       BUILD_BDB2=yes
-       if test "$ol_with_bdb2_module" != static ; then
-               AC_DEFINE(SLAPD_BDB2_DYNAMIC,1,
-                       [define to support dynamic BDB2 backend])
-               BUILD_BDB2=mod
-               BUILD_BDB2_DYNAMIC=shared
-               SLAPD_MODULES_LIST="$SLAPD_MODULES_LIST -dlopen \$(SLAP_DIR)back-bdb2/back_bdb2.la"
+       BUILD_BDB=yes
+       if test "$ol_with_bdb_module" != static ; then
+               AC_DEFINE(SLAPD_BDB_DYNAMIC,1,
+                       [define to support dynamic BDB backend])
+               BUILD_BDB=mod
+               BUILD_BDB_DYNAMIC=shared
+               SLAPD_MODULES_LIST="$SLAPD_MODULES_LIST -dlopen \$(SLAP_DIR)back-bdb/back_bdb.la"
+       fi
+fi
+
+if test "$ol_link_dnssrv" != no ; then
+       AC_DEFINE(SLAPD_DNSSRV,1,[define to support DNS SRV backend])
+       BUILD_SLAPD=yes
+       BUILD_DNSSRV=yes
+       if test "$ol_with_dnssrv_module" != static ; then
+               AC_DEFINE(SLAPD_DNSSRV_DYNAMIC,1,
+                       [define to support dynamic DNS SRV backend])
+               BUILD_DNSSRV=mod
+               BUILD_DNSSRV_DYNAMIC=shared
+               SLAPD_MODULES_LIST="$SLAPD_MODULES_LIST -dlopen \$(SLAP_DIR)back-dnssrv/back_dnssrv.la"
        fi
 fi
 
        fi
 fi
 
@@ -2209,15 +2354,24 @@ if test "$ol_enable_tcl" != no ; then
        fi
 fi
 
        fi
 fi
 
+if test "$ol_link_sql" != no ; then
+       AC_DEFINE(SLAPD_SQL,1,[define to support SQL backend])
+       BUILD_SLAPD=yes
+       BUILD_SQL=yes
+       if test "$ol_with_sql_module" != static; then
+               AC_DEFINE(SLAPD_SQL_DYNAMIC,1,
+                       [define to support dynamic SQL backend])
+               BUILD_SQL=mod
+               BUILD_SQL_DYNAMIC=shared
+               SLAPD_MODULES_LIST="$SLAPD_MODULES_LIST -dlopen \$(SLAP_DIR)back-sql/back_sql.la"
+       fi
+fi
+
 if test "$ol_enable_slurpd" != no -a "$ol_link_threads" != no -a \
        $BUILD_SLAPD = yes ; then
        BUILD_SLURPD=yes
 fi
 
 if test "$ol_enable_slurpd" != no -a "$ol_link_threads" != no -a \
        $BUILD_SLAPD = yes ; then
        BUILD_SLURPD=yes
 fi
 
-if test "$ol_link_isode" != no ; then
-       BUILD_LDAPD=yes
-fi
-
 dnl ----------------------------------------------------------------
 
 if test "$LINK_BINS_DYNAMIC" = yes; then
 dnl ----------------------------------------------------------------
 
 if test "$LINK_BINS_DYNAMIC" = yes; then
@@ -2243,27 +2397,28 @@ AC_SUBST(LIB_LINKAGE)
 AC_SUBST(LT_LIB_LINKAGE)
 AC_SUBST(DYN_EXT)
 
 AC_SUBST(LT_LIB_LINKAGE)
 AC_SUBST(DYN_EXT)
 
-AC_SUBST(BUILD_LDAPD)
 AC_SUBST(BUILD_SLAPD)
 AC_SUBST(BUILD_SLAPD)
-  AC_SUBST(BUILD_BDB2)
+  AC_SUBST(BUILD_BDB)
+  AC_SUBST(BUILD_DNSSRV)
   AC_SUBST(BUILD_LDAP)
   AC_SUBST(BUILD_LDBM)
   AC_SUBST(BUILD_PASSWD)
   AC_SUBST(BUILD_PERL)
   AC_SUBST(BUILD_LDAP)
   AC_SUBST(BUILD_LDBM)
   AC_SUBST(BUILD_PASSWD)
   AC_SUBST(BUILD_PERL)
-  AC_SUBST(BUILD_QUIPU)
   AC_SUBST(BUILD_SHELL)
   AC_SUBST(BUILD_SHELL)
+  AC_SUBST(BUILD_SQL)
   AC_SUBST(BUILD_TCL)
   AC_SUBST(BUILD_TCL)
-  AC_SUBST(BUILD_BDB2_DYNAMIC)
+  AC_SUBST(BUILD_BDB_DYNAMIC)
+  AC_SUBST(BUILD_DNSSRV_DYNAMIC)
   AC_SUBST(BUILD_LDAP_DYNAMIC)
   AC_SUBST(BUILD_LDBM_DYNAMIC)
   AC_SUBST(BUILD_PASSWD_DYNAMIC)
   AC_SUBST(BUILD_PERL_DYNAMIC)
   AC_SUBST(BUILD_SHELL_DYNAMIC)
   AC_SUBST(BUILD_LDAP_DYNAMIC)
   AC_SUBST(BUILD_LDBM_DYNAMIC)
   AC_SUBST(BUILD_PASSWD_DYNAMIC)
   AC_SUBST(BUILD_PERL_DYNAMIC)
   AC_SUBST(BUILD_SHELL_DYNAMIC)
+  AC_SUBST(BUILD_SQL_DYNAMIC)
   AC_SUBST(BUILD_TCL_DYNAMIC)
 AC_SUBST(BUILD_SLURPD)
 
 AC_SUBST(LDAP_LIBS)
   AC_SUBST(BUILD_TCL_DYNAMIC)
 AC_SUBST(BUILD_SLURPD)
 
 AC_SUBST(LDAP_LIBS)
-AC_SUBST(LDAPD_LIBS)
 AC_SUBST(LDIF_LIBS)
 AC_SUBST(SLAPD_LIBS)
 AC_SUBST(SLURPD_LIBS)
 AC_SUBST(LDIF_LIBS)
 AC_SUBST(SLAPD_LIBS)
 AC_SUBST(SLURPD_LIBS)
@@ -2282,12 +2437,18 @@ AC_SUBST(PERL_CPPFLAGS)
 AC_SUBST(SLAPD_PERL_LDFLAGS)
 AC_SUBST(MOD_PERL_LDFLAGS)
 
 AC_SUBST(SLAPD_PERL_LDFLAGS)
 AC_SUBST(MOD_PERL_LDFLAGS)
 
-AC_SUBST(KRB_LIBS)
+AC_SUBST(KRB4_LIBS)
+AC_SUBST(KRB5_LIBS)
 AC_SUBST(READLINE_LIBS)
 AC_SUBST(SASL_LIBS)
 AC_SUBST(TERMCAP_LIBS)
 AC_SUBST(TLS_LIBS)
 AC_SUBST(MODULES_LIBS)
 AC_SUBST(READLINE_LIBS)
 AC_SUBST(SASL_LIBS)
 AC_SUBST(TERMCAP_LIBS)
 AC_SUBST(TLS_LIBS)
 AC_SUBST(MODULES_LIBS)
+AC_SUBST(AUTH_LIBS)
+
+AC_SUBST(SLAPD_SQL_LDFLAGS)
+AC_SUBST(SLAPD_SQL_LIBS)
+AC_SUBST(SLAPD_SQL_INCLUDES)
 
 dnl ----------------------------------------------------------------
 dnl final output
 
 dnl ----------------------------------------------------------------
 dnl final output
@@ -2308,6 +2469,7 @@ clients/gopher/Makefile:build/top.mk:clients/gopher/Makefile.in:build/rules.mk \
 clients/mail500/Makefile:build/top.mk:clients/mail500/Makefile.in:build/rules.mk \
 clients/rcpt500/Makefile:build/top.mk:clients/rcpt500/Makefile.in:build/rules.mk \
 clients/ud/Makefile:build/top.mk:clients/ud/Makefile.in:build/rules.mk \
 clients/mail500/Makefile:build/top.mk:clients/mail500/Makefile.in:build/rules.mk \
 clients/rcpt500/Makefile:build/top.mk:clients/rcpt500/Makefile.in:build/rules.mk \
 clients/ud/Makefile:build/top.mk:clients/ud/Makefile.in:build/rules.mk \
+clients/maildap/Makefile:build/top.mk:clients/maildap/Makefile.in:build/rules.mk \
 clients/tools/Makefile:build/top.mk:clients/tools/Makefile.in:build/rules.mk \
 include/Makefile:build/top.mk:include/Makefile.in \
 libraries/Makefile:build/top.mk:libraries/Makefile.in:build/dir.mk     \
 clients/tools/Makefile:build/top.mk:clients/tools/Makefile.in:build/rules.mk \
 include/Makefile:build/top.mk:include/Makefile.in \
 libraries/Makefile:build/top.mk:libraries/Makefile.in:build/dir.mk     \
@@ -2317,16 +2479,18 @@ libraries/libldap/Makefile:build/top.mk:libraries/libldap/Makefile.in:build/lib.
 libraries/libldap_r/Makefile:build/top.mk:libraries/libldap_r/Makefile.in:build/lib.mk:build/lib-shared.mk     \
 libraries/libldbm/Makefile:build/top.mk:libraries/libldbm/Makefile.in:build/lib.mk:build/lib-static.mk \
 libraries/libldif/Makefile:build/top.mk:libraries/libldif/Makefile.in:build/lib.mk:build/lib-static.mk \
 libraries/libldap_r/Makefile:build/top.mk:libraries/libldap_r/Makefile.in:build/lib.mk:build/lib-shared.mk     \
 libraries/libldbm/Makefile:build/top.mk:libraries/libldbm/Makefile.in:build/lib.mk:build/lib-static.mk \
 libraries/libldif/Makefile:build/top.mk:libraries/libldif/Makefile.in:build/lib.mk:build/lib-static.mk \
+libraries/liblunicode/Makefile:build/top.mk:libraries/liblunicode/Makefile.in:build/lib.mk:build/lib-static.mk \
 libraries/liblutil/Makefile:build/top.mk:libraries/liblutil/Makefile.in:build/lib.mk:build/lib-static.mk       \
 servers/Makefile:build/top.mk:servers/Makefile.in:build/dir.mk \
 libraries/liblutil/Makefile:build/top.mk:libraries/liblutil/Makefile.in:build/lib.mk:build/lib-static.mk       \
 servers/Makefile:build/top.mk:servers/Makefile.in:build/dir.mk \
-servers/ldapd/Makefile:build/top.mk:servers/ldapd/Makefile.in:build/srv.mk \
 servers/slapd/Makefile:build/top.mk:servers/slapd/Makefile.in:build/srv.mk \
 servers/slapd/Makefile:build/top.mk:servers/slapd/Makefile.in:build/srv.mk \
-servers/slapd/back-bdb2/Makefile:build/top.mk:servers/slapd/back-bdb2/Makefile.in:build/mod.mk \
+servers/slapd/back-bdb/Makefile:build/top.mk:servers/slapd/back-bdb/Makefile.in:build/mod.mk \
+servers/slapd/back-dnssrv/Makefile:build/top.mk:servers/slapd/back-dnssrv/Makefile.in:build/mod.mk \
 servers/slapd/back-ldap/Makefile:build/top.mk:servers/slapd/back-ldap/Makefile.in:build/mod.mk \
 servers/slapd/back-ldbm/Makefile:build/top.mk:servers/slapd/back-ldbm/Makefile.in:build/mod.mk \
 servers/slapd/back-passwd/Makefile:build/top.mk:servers/slapd/back-passwd/Makefile.in:build/mod.mk \
 servers/slapd/back-perl/Makefile:build/top.mk:servers/slapd/back-perl/Makefile.in:build/mod.mk \
 servers/slapd/back-shell/Makefile:build/top.mk:servers/slapd/back-shell/Makefile.in:build/mod.mk \
 servers/slapd/back-ldap/Makefile:build/top.mk:servers/slapd/back-ldap/Makefile.in:build/mod.mk \
 servers/slapd/back-ldbm/Makefile:build/top.mk:servers/slapd/back-ldbm/Makefile.in:build/mod.mk \
 servers/slapd/back-passwd/Makefile:build/top.mk:servers/slapd/back-passwd/Makefile.in:build/mod.mk \
 servers/slapd/back-perl/Makefile:build/top.mk:servers/slapd/back-perl/Makefile.in:build/mod.mk \
 servers/slapd/back-shell/Makefile:build/top.mk:servers/slapd/back-shell/Makefile.in:build/mod.mk \
+servers/slapd/back-sql/Makefile:build/top.mk:servers/slapd/back-sql/Makefile.in:build/mod.mk \
 servers/slapd/back-tcl/Makefile:build/top.mk:servers/slapd/back-tcl/Makefile.in:build/mod.mk \
 servers/slapd/shell-backends/Makefile:build/top.mk:servers/slapd/shell-backends/Makefile.in:build/srv.mk \
 servers/slapd/tools/Makefile:build/top.mk:servers/slapd/tools/Makefile.in \
 servers/slapd/back-tcl/Makefile:build/top.mk:servers/slapd/back-tcl/Makefile.in:build/mod.mk \
 servers/slapd/shell-backends/Makefile:build/top.mk:servers/slapd/shell-backends/Makefile.in:build/srv.mk \
 servers/slapd/tools/Makefile:build/top.mk:servers/slapd/tools/Makefile.in \