]> git.sur5r.net Git - openldap/commitdiff
Move ldapd into the Attic, quipu tools remain for now.
authorKurt Zeilenga <kurt@openldap.org>
Thu, 1 Jun 2000 23:00:22 +0000 (23:00 +0000)
committerKurt Zeilenga <kurt@openldap.org>
Thu, 1 Jun 2000 23:00:22 +0000 (23:00 +0000)
30 files changed:
build/top.mk
configure
configure.in
doc/man/man8/ldapd.8 [deleted file]
include/portable.h.in
servers/Makefile.in
servers/ldapd/Makefile.in [deleted file]
servers/ldapd/README [deleted file]
servers/ldapd/abandon.c [deleted file]
servers/ldapd/add.c [deleted file]
servers/ldapd/association.c [deleted file]
servers/ldapd/bind.c [deleted file]
servers/ldapd/certificate.c [deleted file]
servers/ldapd/common.h [deleted file]
servers/ldapd/compare.c [deleted file]
servers/ldapd/delete.c [deleted file]
servers/ldapd/error.c [deleted file]
servers/ldapd/kerberos.c [deleted file]
servers/ldapd/ldap.py [deleted file]
servers/ldapd/main.c [deleted file]
servers/ldapd/message.c [deleted file]
servers/ldapd/modify.c [deleted file]
servers/ldapd/modrdn.c [deleted file]
servers/ldapd/proto-ldapd.h [deleted file]
servers/ldapd/request.c [deleted file]
servers/ldapd/result.c [deleted file]
servers/ldapd/search.c [deleted file]
servers/ldapd/syntax.c [deleted file]
servers/ldapd/util.c [deleted file]
servers/slapd/tools/Makefile.in

index cccef371a06f46a6cd4fdfa43d67f77b13332fc2..a92af5005ed152d7621ed4c0a403509697b5accf 100644 (file)
@@ -140,7 +140,7 @@ SLAPD_SQL_LDFLAGS = @SLAPD_SQL_LDFLAGS@
 SLAPD_SQL_INCLUDES = @SLAPD_SQL_INCLUDES@
 SLAPD_SQL_LIBS = @SLAPD_SQL_LIBS@
 
-LDAPD_LIBS = @LDAPD_LIBS@
+QUIPU_LIBS = @QUIPU_LIBS@
 SLAPD_LIBS = @SLAPD_LIBS@ @SLAPD_PERL_LDFLAGS@ @SLAPD_SQL_LDFLAGS@ @SLAPD_SQL_LIBS@
 SLURPD_LIBS = @SLURPD_LIBS@
 
index 76f76d02a0573e154b5ff500cb64c25d6f8cc013..7216f3708c70873e21a36d895db441d121af03c0 100755 (executable)
--- a/configure
+++ b/configure
@@ -61,10 +61,6 @@ ac_help="$ac_help
 ac_help="$ac_help
   --with-yielding-select       with implicitly yielding select (auto)"
 ac_help="$ac_help
-LDAPD (X.500-to-LDAP Gateway) Options:"
-ac_help="$ac_help
-  --enable-ldapd       enable building ldapd (no)"
-ac_help="$ac_help
 SLAPD (Standalone LDAP Daemon) Options:"
 ac_help="$ac_help
   --enable-slapd       enable building slapd (yes)"
@@ -682,7 +678,7 @@ echo "Configuring OpenLDAP $OL_VERSION ..."
 
 
 echo $ac_n "checking host system type""... $ac_c" 1>&6
-echo "configure:686: checking host system type" >&5
+echo "configure:682: checking host system type" >&5
 if test "x$ac_cv_host" = "x" || (test "x$host" != "xNONE" && test "x$host" != "x$ac_cv_host_alias"); then
 
 # Make sure we can run config.sub.
@@ -723,7 +719,7 @@ host_os=$ac_cv_host_os
 
 
 echo $ac_n "checking target system type""... $ac_c" 1>&6
-echo "configure:727: checking target system type" >&5
+echo "configure:723: checking target system type" >&5
 if test "x$ac_cv_target" = "x" || (test "x$target" != "xNONE" && test "x$target" != "x$ac_cv_target_alias"); then
 
 # Make sure we can run config.sub.
@@ -763,7 +759,7 @@ target_os=$ac_cv_target_os
 
 
 echo $ac_n "checking build system type""... $ac_c" 1>&6
-echo "configure:767: checking build system type" >&5
+echo "configure:763: checking build system type" >&5
 if test "x$ac_cv_build" = "x" || (test "x$build" != "xNONE" && test "x$build" != "x$ac_cv_build_alias"); then
 
 # Make sure we can run config.sub.
@@ -840,7 +836,7 @@ test "$host_alias" != "$target_alias" &&
 # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
 # ./install, which can be erroneously created by make from ./install.sh.
 echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
-echo "configure:844: checking for a BSD compatible install" >&5
+echo "configure:840: checking for a BSD compatible install" >&5
 if test -z "$INSTALL"; then
 if eval "test \"\${ac_cv_path_install+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -897,7 +893,7 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
 test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
 
 echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6
-echo "configure:901: checking whether build environment is sane" >&5
+echo "configure:897: checking whether build environment is sane" >&5
 # Just in case
 sleep 1
 echo timestamp > conftestfile
@@ -958,7 +954,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:962: checking for $ac_word" >&5
+echo "configure:958: checking for $ac_word" >&5
 if eval "test \"\${ac_cv_prog_AWK+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -988,7 +984,7 @@ test -n "$AWK" && break
 done
 
 echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6
-echo "configure:992: checking whether ${MAKE-make} sets \${MAKE}" >&5
+echo "configure:988: checking whether ${MAKE-make} sets \${MAKE}" >&5
 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'`
 if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -1028,7 +1024,7 @@ fi
 
 missing_dir=`cd $ac_aux_dir && pwd`
 echo $ac_n "checking for working aclocal""... $ac_c" 1>&6
-echo "configure:1032: checking for working aclocal" >&5
+echo "configure:1028: checking for working aclocal" >&5
 # Run test in a subshell; some versions of sh will print an error if
 # an executable is not found, even if stderr is redirected.
 # Redirect stdin to placate older versions of autoconf.  Sigh.
@@ -1041,7 +1037,7 @@ else
 fi
 
 echo $ac_n "checking for working autoconf""... $ac_c" 1>&6
-echo "configure:1045: checking for working autoconf" >&5
+echo "configure:1041: checking for working autoconf" >&5
 # Run test in a subshell; some versions of sh will print an error if
 # an executable is not found, even if stderr is redirected.
 # Redirect stdin to placate older versions of autoconf.  Sigh.
@@ -1054,7 +1050,7 @@ else
 fi
 
 echo $ac_n "checking for working automake""... $ac_c" 1>&6
-echo "configure:1058: checking for working automake" >&5
+echo "configure:1054: checking for working automake" >&5
 # Run test in a subshell; some versions of sh will print an error if
 # an executable is not found, even if stderr is redirected.
 # Redirect stdin to placate older versions of autoconf.  Sigh.
@@ -1067,7 +1063,7 @@ else
 fi
 
 echo $ac_n "checking for working autoheader""... $ac_c" 1>&6
-echo "configure:1071: checking for working autoheader" >&5
+echo "configure:1067: checking for working autoheader" >&5
 # Run test in a subshell; some versions of sh will print an error if
 # an executable is not found, even if stderr is redirected.
 # Redirect stdin to placate older versions of autoconf.  Sigh.
@@ -1080,7 +1076,7 @@ else
 fi
 
 echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6
-echo "configure:1084: checking for working makeinfo" >&5
+echo "configure:1080: checking for working makeinfo" >&5
 # Run test in a subshell; some versions of sh will print an error if
 # an executable is not found, even if stderr is redirected.
 # Redirect stdin to placate older versions of autoconf.  Sigh.
@@ -1100,7 +1096,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:1104: checking for $ac_word" >&5
+echo "configure:1100: checking for $ac_word" >&5
 if eval "test \"\${ac_cv_prog_AMTAR+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -1151,7 +1147,7 @@ EOF
 
 
 echo $ac_n "checking configure arguments""... $ac_c" 1>&6
-echo "configure:1155: checking configure arguments" >&5
+echo "configure:1151: checking configure arguments" >&5
 
 
 top_builddir=`pwd`
@@ -1527,32 +1523,6 @@ fi
 # end --with-yielding_select
 
 
-# Check whether --with-xxldapdoptions or --without-xxldapdoptions was given.
-if test "${with_xxldapdoptions+set}" = set; then
-  withval="$with_xxldapdoptions"
-  :
-fi
-
-# OpenLDAP --enable-ldapd
-       # Check whether --enable-ldapd or --disable-ldapd was given.
-if test "${enable_ldapd+set}" = set; then
-  enableval="$enable_ldapd"
-  
-       ol_arg=invalid
-       for ol_val in auto yes no ; do
-               if test "$enableval" = "$ol_val" ; then
-                       ol_arg="$ol_val"
-               fi
-       done
-       if test "$ol_arg" = "invalid" ; then
-               { echo "configure: error: bad value $enableval for --enable-ldapd" 1>&2; exit 1; }
-       fi
-       ol_enable_ldapd="$ol_arg"
-
-else
-       ol_enable_ldapd="no"
-fi
-# end --enable-ldapd
 
 # Check whether --with-xxslapdoptions or --without-xxslapdoptions was given.
 if test "${with_xxslapdoptions+set}" = set; then
@@ -2545,11 +2515,10 @@ LDBM_LIBS=
 LTHREAD_LIBS=
 LUTIL_LIBS=
 
-LDAPD_LIBS=
+QUIPU_LIBS=
 SLAPD_LIBS=
 SLURPD_LIBS=
 
-BUILD_LDAPD=no
 BUILD_SLAPD=no
 BUILD_SLURPD=no
 
@@ -2624,7 +2593,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2628: checking for $ac_word" >&5
+echo "configure:2597: checking for $ac_word" >&5
 if eval "test \"\${ac_cv_prog_CC+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2676,7 +2645,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2680: checking for $ac_word" >&5
+echo "configure:2649: checking for $ac_word" >&5
 if eval "test \"\${ac_cv_prog_CC+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2736,7 +2705,7 @@ fi
 # Extract the first word of "ranlib", so it can be a program name with args.
 set dummy ranlib; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2740: checking for $ac_word" >&5
+echo "configure:2709: checking for $ac_word" >&5
 if eval "test \"\${ac_cv_prog_RANLIB+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2766,7 +2735,7 @@ fi
 # Extract the first word of "gcc", so it can be a program name with args.
 set dummy gcc; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2770: checking for $ac_word" >&5
+echo "configure:2739: checking for $ac_word" >&5
 if eval "test \"\${ac_cv_prog_CC+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2796,7 +2765,7 @@ if test -z "$CC"; then
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2800: checking for $ac_word" >&5
+echo "configure:2769: checking for $ac_word" >&5
 if eval "test \"\${ac_cv_prog_CC+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2847,7 +2816,7 @@ fi
       # Extract the first word of "cl", so it can be a program name with args.
 set dummy cl; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:2851: checking for $ac_word" >&5
+echo "configure:2820: checking for $ac_word" >&5
 if eval "test \"\${ac_cv_prog_CC+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2879,7 +2848,7 @@ fi
 fi
 
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $CPPFLAGS $LDFLAGS) works""... $ac_c" 1>&6
-echo "configure:2883: checking whether the C compiler ($CC $CFLAGS $CPPFLAGS $LDFLAGS) works" >&5
+echo "configure:2852: checking whether the C compiler ($CC $CFLAGS $CPPFLAGS $LDFLAGS) works" >&5
 
 ac_ext=c
 # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
@@ -2890,12 +2859,12 @@ cross_compiling=$ac_cv_prog_cc_cross
 
 cat > conftest.$ac_ext << EOF
 
-#line 2894 "configure"
+#line 2863 "configure"
 #include "confdefs.h"
 
 main(){return(0);}
 EOF
-if { (eval echo configure:2899: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:2868: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   ac_cv_prog_cc_works=yes
   # If we can't run a trivial program, we are probably using a cross compiler.
   if (./conftest; exit) 2>/dev/null; then
@@ -2921,12 +2890,12 @@ if test $ac_cv_prog_cc_works = no; then
   { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
 fi
 echo $ac_n "checking whether the C compiler ($CC $CFLAGS $CPPFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
-echo "configure:2925: checking whether the C compiler ($CC $CFLAGS $CPPFLAGS $LDFLAGS) is a cross-compiler" >&5
+echo "configure:2894: checking whether the C compiler ($CC $CFLAGS $CPPFLAGS $LDFLAGS) is a cross-compiler" >&5
 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
 cross_compiling=$ac_cv_prog_cc_cross
 
 echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
-echo "configure:2930: checking whether we are using GNU C" >&5
+echo "configure:2899: checking whether we are using GNU C" >&5
 if eval "test \"\${ac_cv_prog_gcc+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2935,7 +2904,7 @@ else
   yes;
 #endif
 EOF
-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:2939: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:2908: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
   ac_cv_prog_gcc=yes
 else
   ac_cv_prog_gcc=no
@@ -2954,7 +2923,7 @@ ac_test_CFLAGS="${CFLAGS+set}"
 ac_save_CFLAGS="$CFLAGS"
 CFLAGS=
 echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
-echo "configure:2958: checking whether ${CC-cc} accepts -g" >&5
+echo "configure:2927: checking whether ${CC-cc} accepts -g" >&5
 if eval "test \"\${ac_cv_prog_cc_g+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -2997,7 +2966,7 @@ ac_prog=ld
 if test "$ac_cv_prog_gcc" = yes; then
   # Check if gcc -print-prog-name=ld gives a path.
   echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6
-echo "configure:3001: checking for ld used by GCC" >&5
+echo "configure:2970: checking for ld used by GCC" >&5
   ac_prog=`($CC -print-prog-name=ld) 2>&5`
   case "$ac_prog" in
     # Accept absolute paths.
@@ -3021,10 +2990,10 @@ echo "configure:3001: checking for ld used by GCC" >&5
   esac
 elif test "$with_gnu_ld" = yes; then
   echo $ac_n "checking for GNU ld""... $ac_c" 1>&6
-echo "configure:3025: checking for GNU ld" >&5
+echo "configure:2994: checking for GNU ld" >&5
 else
   echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6
-echo "configure:3028: checking for non-GNU ld" >&5
+echo "configure:2997: checking for non-GNU ld" >&5
 fi
 if eval "test \"\${ac_cv_path_LD+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -3059,7 +3028,7 @@ else
 fi
 test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; }
 echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6
-echo "configure:3063: checking if the linker ($LD) is GNU ld" >&5
+echo "configure:3032: checking if the linker ($LD) is GNU ld" >&5
 if eval "test \"\${ac_cv_prog_gnu_ld+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3075,7 +3044,7 @@ echo "$ac_t""$ac_cv_prog_gnu_ld" 1>&6
 
 
 echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6
-echo "configure:3079: checking for BSD-compatible nm" >&5
+echo "configure:3048: checking for BSD-compatible nm" >&5
 if eval "test \"\${ac_cv_path_NM+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3111,7 +3080,7 @@ NM="$ac_cv_path_NM"
 echo "$ac_t""$NM" 1>&6
 
 echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:3115: checking whether ln -s works" >&5
+echo "configure:3084: checking whether ln -s works" >&5
 if eval "test \"\${ac_cv_prog_LN_S+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3166,8 +3135,8 @@ test x"$silent" = xyes && libtool_flags="$libtool_flags --silent"
 case "$lt_target" in
 *-*-irix6*)
   # Find out which ABI we are using.
-  echo '#line 3170 "configure"' > conftest.$ac_ext
-  if { (eval echo configure:3171: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+  echo '#line 3139 "configure"' > conftest.$ac_ext
+  if { (eval echo configure:3140: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
     case "`/usr/bin/file conftest.o`" in
     *32-bit*)
       LD="${LD-ld} -32"
@@ -3188,19 +3157,19 @@ case "$lt_target" in
   SAVE_CFLAGS="$CFLAGS"
   CFLAGS="$CFLAGS -belf"
   echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6
-echo "configure:3192: checking whether the C compiler needs -belf" >&5
+echo "configure:3161: checking whether the C compiler needs -belf" >&5
 if eval "test \"\${lt_cv_cc_needs_belf+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3197 "configure"
+#line 3166 "configure"
 #include "confdefs.h"
 
 int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:3204: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:3173: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   lt_cv_cc_needs_belf=yes
 else
@@ -3223,7 +3192,7 @@ echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6
   # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
 set dummy ${ac_tool_prefix}dlltool; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3227: checking for $ac_word" >&5
+echo "configure:3196: checking for $ac_word" >&5
 if eval "test \"\${ac_cv_prog_DLLTOOL+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3255,7 +3224,7 @@ if test -n "$ac_tool_prefix"; then
   # Extract the first word of "dlltool", so it can be a program name with args.
 set dummy dlltool; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3259: checking for $ac_word" >&5
+echo "configure:3228: checking for $ac_word" >&5
 if eval "test \"\${ac_cv_prog_DLLTOOL+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3290,7 +3259,7 @@ fi
   # Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
 set dummy ${ac_tool_prefix}as; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3294: checking for $ac_word" >&5
+echo "configure:3263: checking for $ac_word" >&5
 if eval "test \"\${ac_cv_prog_AS+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3322,7 +3291,7 @@ if test -n "$ac_tool_prefix"; then
   # Extract the first word of "as", so it can be a program name with args.
 set dummy as; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3326: checking for $ac_word" >&5
+echo "configure:3295: checking for $ac_word" >&5
 if eval "test \"\${ac_cv_prog_AS+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3357,7 +3326,7 @@ fi
   # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
 set dummy ${ac_tool_prefix}objdump; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3361: checking for $ac_word" >&5
+echo "configure:3330: checking for $ac_word" >&5
 if eval "test \"\${ac_cv_prog_OBJDUMP+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3389,7 +3358,7 @@ if test -n "$ac_tool_prefix"; then
   # Extract the first word of "objdump", so it can be a program name with args.
 set dummy objdump; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3393: checking for $ac_word" >&5
+echo "configure:3362: checking for $ac_word" >&5
 if eval "test \"\${ac_cv_prog_OBJDUMP+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3457,7 +3426,7 @@ do
 # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3461: checking for $ac_word" >&5
+echo "configure:3430: checking for $ac_word" >&5
 if eval "test \"\${ac_cv_prog_AWK+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3488,7 +3457,7 @@ done
 
 # test for ln hardlink support
 echo $ac_n "checking whether ln works""... $ac_c" 1>&6
-echo "configure:3492: checking whether ln works" >&5
+echo "configure:3461: checking whether ln works" >&5
 if eval "test \"\${ol_cv_prog_LN_H+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3511,7 +3480,7 @@ else
 fi
 
 echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
-echo "configure:3515: checking whether ln -s works" >&5
+echo "configure:3484: checking whether ln -s works" >&5
 if eval "test \"\${ac_cv_prog_LN_S+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3539,7 +3508,7 @@ fi
 # Extract the first word of "sendmail", so it can be a program name with args.
 set dummy sendmail; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3543: checking for $ac_word" >&5
+echo "configure:3512: checking for $ac_word" >&5
 if eval "test \"\${ac_cv_path_SENDMAIL+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3575,7 +3544,7 @@ fi
 # Extract the first word of "vi", so it can be a program name with args.
 set dummy vi; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3579: checking for $ac_word" >&5
+echo "configure:3548: checking for $ac_word" >&5
 if eval "test \"\${ac_cv_path_EDITOR+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3611,7 +3580,7 @@ fi
 # Extract the first word of "finger", so it can be a program name with args.
 set dummy finger; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3615: checking for $ac_word" >&5
+echo "configure:3584: checking for $ac_word" >&5
 if eval "test \"\${ac_cv_path_FINGER+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3650,7 +3619,7 @@ if test $ol_enable_perl != no ; then
        # Extract the first word of "perl", so it can be a program name with args.
 set dummy perl; ac_word=$2
 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:3654: checking for $ac_word" >&5
+echo "configure:3623: checking for $ac_word" >&5
 if eval "test \"\${ac_cv_path_PERLBIN+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3701,7 +3670,7 @@ fi
 fi
 
 echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
-echo "configure:3705: checking how to run the C preprocessor" >&5
+echo "configure:3674: checking how to run the C preprocessor" >&5
 # On Suns, sometimes $CPP names a directory.
 if test -n "$CPP" && test -d "$CPP"; then
   CPP=
@@ -3716,13 +3685,13 @@ else
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp.
   cat > conftest.$ac_ext <<EOF
-#line 3720 "configure"
+#line 3689 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:3726: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:3695: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   :
@@ -3733,13 +3702,13 @@ else
   rm -rf conftest*
   CPP="${CC-cc} -E -traditional-cpp"
   cat > conftest.$ac_ext <<EOF
-#line 3737 "configure"
+#line 3706 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:3743: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:3712: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   :
@@ -3750,13 +3719,13 @@ else
   rm -rf conftest*
   CPP="${CC-cc} -nologo -E"
   cat > conftest.$ac_ext <<EOF
-#line 3754 "configure"
+#line 3723 "configure"
 #include "confdefs.h"
 #include <assert.h>
 Syntax Error
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:3760: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:3729: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   :
@@ -3794,9 +3763,9 @@ elif test $cross_compiling = yes -a $ol_enable_x_compile = no; then
 fi
 
 echo $ac_n "checking for AIX""... $ac_c" 1>&6
-echo "configure:3798: checking for AIX" >&5
+echo "configure:3767: checking for AIX" >&5
 cat > conftest.$ac_ext <<EOF
-#line 3800 "configure"
+#line 3769 "configure"
 #include "confdefs.h"
 #ifdef _AIX
   yes
@@ -3818,7 +3787,7 @@ rm -f conftest*
 
 
 echo $ac_n "checking for POSIXized ISC""... $ac_c" 1>&6
-echo "configure:3822: checking for POSIXized ISC" >&5
+echo "configure:3791: checking for POSIXized ISC" >&5
 if test -d /etc/conf/kconfig.d &&
   grep _POSIX_VERSION /usr/include/sys/unistd.h >/dev/null 2>&1
 then
@@ -3840,17 +3809,17 @@ fi
 
 ac_safe=`echo "minix/config.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for minix/config.h""... $ac_c" 1>&6
-echo "configure:3844: checking for minix/config.h" >&5
+echo "configure:3813: checking for minix/config.h" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3849 "configure"
+#line 3818 "configure"
 #include "confdefs.h"
 #include <minix/config.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:3854: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:3823: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -3889,12 +3858,12 @@ fi
 
 
 echo $ac_n "checking for Cygwin environment""... $ac_c" 1>&6
-echo "configure:3893: checking for Cygwin environment" >&5
+echo "configure:3862: checking for Cygwin environment" >&5
 if eval "test \"\${ac_cv_cygwin+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3898 "configure"
+#line 3867 "configure"
 #include "confdefs.h"
 
 int main() {
@@ -3905,7 +3874,7 @@ int main() {
 return __CYGWIN__;
 ; return 0; }
 EOF
-if { (eval echo configure:3909: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3878: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_cygwin=yes
 else
@@ -3921,19 +3890,19 @@ echo "$ac_t""$ac_cv_cygwin" 1>&6
 CYGWIN=
 test "$ac_cv_cygwin" = yes && CYGWIN=yes
 echo $ac_n "checking for mingw32 environment""... $ac_c" 1>&6
-echo "configure:3925: checking for mingw32 environment" >&5
+echo "configure:3894: checking for mingw32 environment" >&5
 if eval "test \"\${ac_cv_mingw32+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3930 "configure"
+#line 3899 "configure"
 #include "confdefs.h"
 
 int main() {
 return __MINGW32__;
 ; return 0; }
 EOF
-if { (eval echo configure:3937: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3906: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_mingw32=yes
 else
@@ -3949,19 +3918,19 @@ echo "$ac_t""$ac_cv_mingw32" 1>&6
 MINGW32=
 test "$ac_cv_mingw32" = yes && MINGW32=yes
 echo $ac_n "checking for EMX OS/2 environment""... $ac_c" 1>&6
-echo "configure:3953: checking for EMX OS/2 environment" >&5
+echo "configure:3922: checking for EMX OS/2 environment" >&5
 if eval "test \"\${ac_cv_emxos2+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 3958 "configure"
+#line 3927 "configure"
 #include "confdefs.h"
 
 int main() {
 return __EMX__;
 ; return 0; }
 EOF
-if { (eval echo configure:3965: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3934: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_emxos2=yes
 else
@@ -3980,7 +3949,7 @@ test "$ac_cv_emxos2" = yes && EMXOS2=yes
 
 
 echo $ac_n "checking for executable suffix""... $ac_c" 1>&6
-echo "configure:3984: checking for executable suffix" >&5
+echo "configure:3953: checking for executable suffix" >&5
 if eval "test \"\${ac_cv_exeext+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -3990,7 +3959,7 @@ else
   rm -f conftest*
   echo 'int main () { return 0; }' > conftest.$ac_ext
   ac_cv_exeext=
-  if { (eval echo configure:3994: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
+  if { (eval echo configure:3963: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then
     for file in conftest.*; do
       case $file in
       *.c | *.C | *.o | *.obj | *.xcoff) ;;
@@ -4011,13 +3980,13 @@ echo "$ac_t""${ac_cv_exeext}" 1>&6
 ac_exeext=$EXEEXT
 
 echo $ac_n "checking for object suffix""... $ac_c" 1>&6
-echo "configure:4015: checking for object suffix" >&5
+echo "configure:3984: checking for object suffix" >&5
 if eval "test \"\${ac_cv_objext+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   rm -f conftest*
 echo 'int i = 1;' > conftest.$ac_ext
-if { (eval echo configure:4021: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:3990: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   for ac_file in conftest.*; do
     case $ac_file in
     *.c) ;;
@@ -4041,7 +4010,7 @@ EOF
 
 
 echo $ac_n "checking for be_app in -lbe""... $ac_c" 1>&6
-echo "configure:4045: checking for be_app in -lbe" >&5
+echo "configure:4014: checking for be_app in -lbe" >&5
 ac_lib_var=`echo be'_'be_app | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4049,7 +4018,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lbe -lroot -lnet $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4053 "configure"
+#line 4022 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4060,7 +4029,7 @@ int main() {
 be_app()
 ; return 0; }
 EOF
-if { (eval echo configure:4064: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4033: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4086,7 +4055,7 @@ fi
 
 
 echo $ac_n "checking for ${CC-cc} option to accept ANSI C""... $ac_c" 1>&6
-echo "configure:4090: checking for ${CC-cc} option to accept ANSI C" >&5
+echo "configure:4059: checking for ${CC-cc} option to accept ANSI C" >&5
 if eval "test \"\${am_cv_prog_cc_stdc+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4103,7 +4072,7 @@ for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIO
 do
   CC="$ac_save_CC $ac_arg"
   cat > conftest.$ac_ext <<EOF
-#line 4107 "configure"
+#line 4076 "configure"
 #include "confdefs.h"
 #include <stdarg.h>
 #include <stdio.h>
@@ -4140,7 +4109,7 @@ return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
 
 ; return 0; }
 EOF
-if { (eval echo configure:4144: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4113: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   am_cv_prog_cc_stdc="$ac_arg"; break
 else
@@ -4174,7 +4143,7 @@ if test -z "${MKDEP}"; then
        OL_MKDEP="${CC-cc}"
        if test -z "${MKDEP_FLAGS}"; then
                echo $ac_n "checking for ${OL_MKDEP} depend flag""... $ac_c" 1>&6
-echo "configure:4178: checking for ${OL_MKDEP} depend flag" >&5
+echo "configure:4147: checking for ${OL_MKDEP} depend flag" >&5
 if eval "test \"\${ol_cv_mkdep+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4184,7 +4153,7 @@ else
                                cat > conftest.c <<EOF
  noCode;
 EOF
-                               if { ac_try='$OL_MKDEP $flag conftest.c'; { (eval echo configure:4188: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } \
+                               if { ac_try='$OL_MKDEP $flag conftest.c'; { (eval echo configure:4157: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } \
                                        | egrep '^conftest\.'"${ac_objext}" >/dev/null 2>&1
                                then
                                        if test ! -f conftest."${ac_object}" ; then
@@ -4217,7 +4186,7 @@ if test "${ol_cv_mkdep}" = no ; then
 fi
 
 echo $ac_n "checking for afopen in -ls""... $ac_c" 1>&6
-echo "configure:4221: checking for afopen in -ls" >&5
+echo "configure:4190: checking for afopen in -ls" >&5
 ac_lib_var=`echo s'_'afopen | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4225,7 +4194,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ls  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4229 "configure"
+#line 4198 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4236,7 +4205,7 @@ int main() {
 afopen()
 ; return 0; }
 EOF
-if { (eval echo configure:4240: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4209: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4269,17 +4238,17 @@ if test $ol_enable_modules != no ; then
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:4273: checking for $ac_hdr" >&5
+echo "configure:4242: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4278 "configure"
+#line 4247 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:4283: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:4252: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -4311,7 +4280,7 @@ done
        fi
 
        echo $ac_n "checking for lt_dlinit in -lltdl""... $ac_c" 1>&6
-echo "configure:4315: checking for lt_dlinit in -lltdl" >&5
+echo "configure:4284: checking for lt_dlinit in -lltdl" >&5
 ac_lib_var=`echo ltdl'_'lt_dlinit | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4319,7 +4288,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lltdl  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4323 "configure"
+#line 4292 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4330,7 +4299,7 @@ int main() {
 lt_dlinit()
 ; return 0; }
 EOF
-if { (eval echo configure:4334: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4303: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4375,13 +4344,13 @@ fi
 
 # test for EBCDIC
 echo $ac_n "checking for EBCDIC""... $ac_c" 1>&6
-echo "configure:4379: checking for EBCDIC" >&5
+echo "configure:4348: checking for EBCDIC" >&5
 if eval "test \"\${ol_cv_cpp_ebcdic+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
        cat > conftest.$ac_ext <<EOF
-#line 4385 "configure"
+#line 4354 "configure"
 #include "confdefs.h"
 
 #if !('M' == 0xd4)
@@ -4390,7 +4359,7 @@ else
 
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:4394: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:4363: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -4414,12 +4383,12 @@ EOF
 fi
 
 echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
-echo "configure:4418: checking for ANSI C header files" >&5
+echo "configure:4387: checking for ANSI C header files" >&5
 if eval "test \"\${ol_cv_header_stdc+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4423 "configure"
+#line 4392 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 #include <stdarg.h>
@@ -4427,7 +4396,7 @@ else
 #include <float.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:4431: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:4400: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -4444,7 +4413,7 @@ rm -f conftest*
 if test $ol_cv_header_stdc = yes; then
   # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
-#line 4448 "configure"
+#line 4417 "configure"
 #include "confdefs.h"
 #include <string.h>
 EOF
@@ -4462,7 +4431,7 @@ fi
 if test $ol_cv_header_stdc = yes; then
   # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
-#line 4466 "configure"
+#line 4435 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 EOF
@@ -4483,7 +4452,7 @@ if test "$cross_compiling" = yes; then
   :
 else
   cat > conftest.$ac_ext <<EOF
-#line 4487 "configure"
+#line 4456 "configure"
 #include "confdefs.h"
 #include <ctype.h>
 #ifndef HAVE_EBCDIC
@@ -4501,7 +4470,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
 exit (0); }
 
 EOF
-if { (eval echo configure:4505: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:4474: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   :
 else
@@ -4535,12 +4504,12 @@ for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr that defines DIR""... $ac_c" 1>&6
-echo "configure:4539: checking for $ac_hdr that defines DIR" >&5
+echo "configure:4508: checking for $ac_hdr that defines DIR" >&5
 if eval "test \"\${ac_cv_header_dirent_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4544 "configure"
+#line 4513 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <$ac_hdr>
@@ -4548,7 +4517,7 @@ int main() {
 DIR *dirp = 0;
 ; return 0; }
 EOF
-if { (eval echo configure:4552: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4521: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   eval "ac_cv_header_dirent_$ac_safe=yes"
 else
@@ -4573,7 +4542,7 @@ done
 # Two versions of opendir et al. are in -ldir and -lx on SCO Xenix.
 if test $ac_header_dirent = dirent.h; then
 echo $ac_n "checking for opendir in -ldir""... $ac_c" 1>&6
-echo "configure:4577: checking for opendir in -ldir" >&5
+echo "configure:4546: checking for opendir in -ldir" >&5
 ac_lib_var=`echo dir'_'opendir | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4581,7 +4550,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ldir  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4585 "configure"
+#line 4554 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4592,7 +4561,7 @@ int main() {
 opendir()
 ; return 0; }
 EOF
-if { (eval echo configure:4596: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4565: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4614,7 +4583,7 @@ fi
 
 else
 echo $ac_n "checking for opendir in -lx""... $ac_c" 1>&6
-echo "configure:4618: checking for opendir in -lx" >&5
+echo "configure:4587: checking for opendir in -lx" >&5
 ac_lib_var=`echo x'_'opendir | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4622,7 +4591,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lx  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4626 "configure"
+#line 4595 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4633,7 +4602,7 @@ int main() {
 opendir()
 ; return 0; }
 EOF
-if { (eval echo configure:4637: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4606: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4656,12 +4625,12 @@ fi
 fi
 
 echo $ac_n "checking for sys/wait.h that is POSIX.1 compatible""... $ac_c" 1>&6
-echo "configure:4660: checking for sys/wait.h that is POSIX.1 compatible" >&5
+echo "configure:4629: checking for sys/wait.h that is POSIX.1 compatible" >&5
 if eval "test \"\${ac_cv_header_sys_wait_h+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4665 "configure"
+#line 4634 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/wait.h>
@@ -4677,7 +4646,7 @@ wait (&s);
 s = WIFEXITED (s) ? WEXITSTATUS (s) : 1;
 ; return 0; }
 EOF
-if { (eval echo configure:4681: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:4650: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_header_sys_wait_h=yes
 else
@@ -4698,12 +4667,12 @@ EOF
 fi
 
 echo $ac_n "checking POSIX termios""... $ac_c" 1>&6
-echo "configure:4702: checking POSIX termios" >&5
+echo "configure:4671: checking POSIX termios" >&5
 if eval "test \"\${am_cv_sys_posix_termios+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4707 "configure"
+#line 4676 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <unistd.h>
@@ -4713,7 +4682,7 @@ int main() {
    tcgetattr(0, 0);
 ; return 0; }
 EOF
-if { (eval echo configure:4717: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4686: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   am_cv_sys_posix_termios=yes
 else
@@ -4729,7 +4698,7 @@ echo "$ac_t""$am_cv_sys_posix_termios" 1>&6
 
 
  echo $ac_n "checking whether use of TIOCGWINSZ requires sys/ioctl.h""... $ac_c" 1>&6
-echo "configure:4733: checking whether use of TIOCGWINSZ requires sys/ioctl.h" >&5
+echo "configure:4702: checking whether use of TIOCGWINSZ requires sys/ioctl.h" >&5
 if eval "test \"\${am_cv_sys_tiocgwinsz_needs_sys_ioctl_h+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -4738,7 +4707,7 @@ else
   gwinsz_in_termios_h=no
   if test $am_cv_sys_posix_termios = yes; then
     cat > conftest.$ac_ext <<EOF
-#line 4742 "configure"
+#line 4711 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #     include <termios.h>
@@ -4758,7 +4727,7 @@ rm -f conftest*
 
   if test $gwinsz_in_termios_h = no; then
     cat > conftest.$ac_ext <<EOF
-#line 4762 "configure"
+#line 4731 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #     include <sys/ioctl.h>
@@ -4841,17 +4810,17 @@ for ac_hdr in \
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:4845: checking for $ac_hdr" >&5
+echo "configure:4814: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4850 "configure"
+#line 4819 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:4855: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:4824: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -4881,7 +4850,7 @@ done
 
 
 echo $ac_n "checking for sigset in -lV3""... $ac_c" 1>&6
-echo "configure:4885: checking for sigset in -lV3" >&5
+echo "configure:4854: checking for sigset in -lV3" >&5
 ac_lib_var=`echo V3'_'sigset | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -4889,7 +4858,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lV3  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 4893 "configure"
+#line 4862 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -4900,7 +4869,7 @@ int main() {
 sigset()
 ; return 0; }
 EOF
-if { (eval echo configure:4904: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4873: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -4930,12 +4899,12 @@ fi
 
 if test $ac_cv_header_winsock_h = yes; then
        echo $ac_n "checking for winsock""... $ac_c" 1>&6
-echo "configure:4934: checking for winsock" >&5
+echo "configure:4903: checking for winsock" >&5
 if eval "test \"\${ol_cv_winsock+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4939 "configure"
+#line 4908 "configure"
 #include "confdefs.h"
 #include <winsock.h>
 int main() {
@@ -4947,7 +4916,7 @@ int main() {
        
 ; return 0; }
 EOF
-if { (eval echo configure:4951: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4920: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_winsock=yes
 else
@@ -4975,12 +4944,12 @@ fi
 
 
 echo $ac_n "checking for socket""... $ac_c" 1>&6
-echo "configure:4979: checking for socket" >&5
+echo "configure:4948: checking for socket" >&5
 if eval "test \"\${ac_cv_func_socket+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 4984 "configure"
+#line 4953 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char socket(); below.  */
@@ -5004,7 +4973,7 @@ f = socket;
 
 ; return 0; }
 EOF
-if { (eval echo configure:5008: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:4977: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_socket=yes"
 else
@@ -5023,7 +4992,7 @@ else
   echo "$ac_t""no" 1>&6
        
        echo $ac_n "checking for main in -lsocket""... $ac_c" 1>&6
-echo "configure:5027: checking for main in -lsocket" >&5
+echo "configure:4996: checking for main in -lsocket" >&5
 ac_lib_var=`echo socket'_'main | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5031,14 +5000,14 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lsocket  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5035 "configure"
+#line 5004 "configure"
 #include "confdefs.h"
 
 int main() {
 main()
 ; return 0; }
 EOF
-if { (eval echo configure:5042: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5011: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5066,7 +5035,7 @@ else
 fi
 
        echo $ac_n "checking for main in -lnet""... $ac_c" 1>&6
-echo "configure:5070: checking for main in -lnet" >&5
+echo "configure:5039: checking for main in -lnet" >&5
 ac_lib_var=`echo net'_'main | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5074,14 +5043,14 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lnet  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5078 "configure"
+#line 5047 "configure"
 #include "confdefs.h"
 
 int main() {
 main()
 ; return 0; }
 EOF
-if { (eval echo configure:5085: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5054: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5109,7 +5078,7 @@ else
 fi
 
        echo $ac_n "checking for main in -lnsl_s""... $ac_c" 1>&6
-echo "configure:5113: checking for main in -lnsl_s" >&5
+echo "configure:5082: checking for main in -lnsl_s" >&5
 ac_lib_var=`echo nsl_s'_'main | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5117,14 +5086,14 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lnsl_s  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5121 "configure"
+#line 5090 "configure"
 #include "confdefs.h"
 
 int main() {
 main()
 ; return 0; }
 EOF
-if { (eval echo configure:5128: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5097: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5152,7 +5121,7 @@ else
 fi
 
        echo $ac_n "checking for main in -lnsl""... $ac_c" 1>&6
-echo "configure:5156: checking for main in -lnsl" >&5
+echo "configure:5125: checking for main in -lnsl" >&5
 ac_lib_var=`echo nsl'_'main | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5160,14 +5129,14 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lnsl  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5164 "configure"
+#line 5133 "configure"
 #include "confdefs.h"
 
 int main() {
 main()
 ; return 0; }
 EOF
-if { (eval echo configure:5171: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5140: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5195,7 +5164,7 @@ else
 fi
 
        echo $ac_n "checking for socket in -linet""... $ac_c" 1>&6
-echo "configure:5199: checking for socket in -linet" >&5
+echo "configure:5168: checking for socket in -linet" >&5
 ac_lib_var=`echo inet'_'socket | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5203,7 +5172,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-linet  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5207 "configure"
+#line 5176 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5214,7 +5183,7 @@ int main() {
 socket()
 ; return 0; }
 EOF
-if { (eval echo configure:5218: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5187: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5242,7 +5211,7 @@ else
 fi
 
        echo $ac_n "checking for main in -lgen""... $ac_c" 1>&6
-echo "configure:5246: checking for main in -lgen" >&5
+echo "configure:5215: checking for main in -lgen" >&5
 ac_lib_var=`echo gen'_'main | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5250,14 +5219,14 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lgen  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5254 "configure"
+#line 5223 "configure"
 #include "confdefs.h"
 
 int main() {
 main()
 ; return 0; }
 EOF
-if { (eval echo configure:5261: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5230: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5289,12 +5258,12 @@ fi
 
 
 echo $ac_n "checking for select""... $ac_c" 1>&6
-echo "configure:5293: checking for select" >&5
+echo "configure:5262: checking for select" >&5
 if eval "test \"\${ac_cv_func_select+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5298 "configure"
+#line 5267 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char select(); below.  */
@@ -5318,7 +5287,7 @@ f = select;
 
 ; return 0; }
 EOF
-if { (eval echo configure:5322: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5291: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_select=yes"
 else
@@ -5341,7 +5310,7 @@ fi
 
 if test "${ac_cv_header_winsock_h}" != yes; then
                 echo $ac_n "checking types of arguments for select()""... $ac_c" 1>&6
-echo "configure:5345: checking types of arguments for select()" >&5
+echo "configure:5314: checking types of arguments for select()" >&5
  if eval "test \"\${ac_cv_func_select_arg234+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5355,7 +5324,7 @@ else
      for ac_cv_func_select_arg1 in 'int' 'size_t' 'unsigned long' 'unsigned'; do
       for ac_cv_func_select_arg5 in 'struct timeval *' 'const struct timeval *'; do
        cat > conftest.$ac_ext <<EOF
-#line 5359 "configure"
+#line 5328 "configure"
 #include "confdefs.h"
 #ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>
@@ -5374,7 +5343,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:5378: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:5347: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
           ac_not_found=no ; break 3
 else
@@ -5419,17 +5388,17 @@ for ac_hdr in regex.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:5423: checking for $ac_hdr" >&5
+echo "configure:5392: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5428 "configure"
+#line 5397 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:5433: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:5402: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -5459,12 +5428,12 @@ if test "$ac_cv_header_regex_h" != yes ; then
        { echo "configure: error: POSIX regex.h required." 1>&2; exit 1; }
 fi
 echo $ac_n "checking for regfree""... $ac_c" 1>&6
-echo "configure:5463: checking for regfree" >&5
+echo "configure:5432: checking for regfree" >&5
 if eval "test \"\${ac_cv_func_regfree+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5468 "configure"
+#line 5437 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char regfree(); below.  */
@@ -5488,7 +5457,7 @@ f = regfree;
 
 ; return 0; }
 EOF
-if { (eval echo configure:5492: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5461: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_regfree=yes"
 else
@@ -5511,7 +5480,7 @@ fi
 
 
 echo $ac_n "checking for compatible POSIX regex""... $ac_c" 1>&6
-echo "configure:5515: checking for compatible POSIX regex" >&5
+echo "configure:5484: checking for compatible POSIX regex" >&5
 if eval "test \"\${ol_cv_c_posix_regex+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -5520,7 +5489,7 @@ else
   ol_cv_c_posix_regex=cross
 else
   cat > conftest.$ac_ext <<EOF
-#line 5524 "configure"
+#line 5493 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -5546,7 +5515,7 @@ main()
        return rc;
 }
 EOF
-if { (eval echo configure:5550: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:5519: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ol_cv_c_posix_regex=yes
 else
@@ -5567,12 +5536,12 @@ if test "$ol_cv_c_posix_regex" = no ; then
 fi
 
 echo $ac_n "checking for res_search""... $ac_c" 1>&6
-echo "configure:5571: checking for res_search" >&5
+echo "configure:5540: checking for res_search" >&5
 if eval "test \"\${ac_cv_func_res_search+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 5576 "configure"
+#line 5545 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char res_search(); below.  */
@@ -5596,7 +5565,7 @@ f = res_search;
 
 ; return 0; }
 EOF
-if { (eval echo configure:5600: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5569: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_res_search=yes"
 else
@@ -5617,7 +5586,7 @@ fi
 
 if test $ac_cv_func_res_search = no ; then 
        echo $ac_n "checking for res_search in -lbind""... $ac_c" 1>&6
-echo "configure:5621: checking for res_search in -lbind" >&5
+echo "configure:5590: checking for res_search in -lbind" >&5
 ac_lib_var=`echo bind'_'res_search | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5625,7 +5594,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lbind  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5629 "configure"
+#line 5598 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5636,7 +5605,7 @@ int main() {
 res_search()
 ; return 0; }
 EOF
-if { (eval echo configure:5640: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5609: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5668,7 +5637,7 @@ fi
 
 if test $ac_cv_func_res_search = no ; then 
        echo $ac_n "checking for __res_search in -lbind""... $ac_c" 1>&6
-echo "configure:5672: checking for __res_search in -lbind" >&5
+echo "configure:5641: checking for __res_search in -lbind" >&5
 ac_lib_var=`echo bind'_'__res_search | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5676,7 +5645,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lbind  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5680 "configure"
+#line 5649 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5687,7 +5656,7 @@ int main() {
 __res_search()
 ; return 0; }
 EOF
-if { (eval echo configure:5691: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5660: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5719,7 +5688,7 @@ fi
 
 if test $ac_cv_func_res_search = no ; then 
        echo $ac_n "checking for res_search in -lresolv""... $ac_c" 1>&6
-echo "configure:5723: checking for res_search in -lresolv" >&5
+echo "configure:5692: checking for res_search in -lresolv" >&5
 ac_lib_var=`echo resolv'_'res_search | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -5727,7 +5696,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lresolv  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 5731 "configure"
+#line 5700 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -5738,7 +5707,7 @@ int main() {
 res_search()
 ; return 0; }
 EOF
-if { (eval echo configure:5742: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5711: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -5780,242 +5749,22 @@ elif test $ol_enable_dns != no ; then
 fi
 
 
-ol_link_isode=no
-if test $ol_enable_ldapd != no ; then
-       echo "configure: warning: ldapd is not supported and may suffer from bit rot." 1>&2
-
-               echo $ac_n "checking for main in -lxtpp""... $ac_c" 1>&6
-echo "configure:5789: checking for main in -lxtpp" >&5
-ac_lib_var=`echo xtpp'_'main | sed 'y%./+-:%__p__%'`
-if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  ac_save_LIBS="$LIBS"
-LIBS="-lxtpp -lxtdsap -lxtisode -losi $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 5797 "configure"
-#include "confdefs.h"
-
-int main() {
-main()
-; return 0; }
-EOF
-if { (eval echo configure:5804: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  
-               ol_link_isode=yes
-               cat >> confdefs.h <<\EOF
-#define HAVE_XTPP 1
-EOF
-
-               LDAPD_LIBS="$LDAPD_LIBS -lxtpp -lxtdsap -lxtisode -losi"
-               
-else
-  echo "$ac_t""no" 1>&6
-:
-fi
-
-       echo $ac_n "checking for main in -ldsap""... $ac_c" 1>&6
-echo "configure:5833: checking for main in -ldsap" >&5
-ac_lib_var=`echo dsap'_'main | sed 'y%./+-:%__p__%'`
-if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  ac_save_LIBS="$LIBS"
-LIBS="-ldsap -lisode $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 5841 "configure"
-#include "confdefs.h"
-
-int main() {
-main()
-; return 0; }
-EOF
-if { (eval echo configure:5848: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  
-               ol_link_isode=yes
-               cat >> confdefs.h <<\EOF
-#define HAVE_DSAP 1
-EOF
-
-               LDAPD_LIBS="$LDAPD_LIBS -ldsap"
-               
-else
-  echo "$ac_t""no" 1>&6
-:
-fi
-
-       echo $ac_n "checking for main in -lisode""... $ac_c" 1>&6
-echo "configure:5877: checking for main in -lisode" >&5
-ac_lib_var=`echo isode'_'main | sed 'y%./+-:%__p__%'`
-if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  ac_save_LIBS="$LIBS"
-LIBS="-lisode  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 5885 "configure"
-#include "confdefs.h"
-
-int main() {
-main()
-; return 0; }
-EOF
-if { (eval echo configure:5892: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  
-               ol_link_isode=yes
-               cat >> confdefs.h <<\EOF
-#define HAVE_ISODE 1
-EOF
-
-               LDAPD_LIBS="$LDAPD_LIBS -lisode"
-               
-else
-  echo "$ac_t""no" 1>&6
-:
-fi
-
-fi
-
-if test $ol_link_isode != no; then
-       echo $ac_n "checking for main in -lpp""... $ac_c" 1>&6
-echo "configure:5924: checking for main in -lpp" >&5
-ac_lib_var=`echo pp'_'main | sed 'y%./+-:%__p__%'`
-if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  ac_save_LIBS="$LIBS"
-LIBS="-lpp  $LIBS"
-cat > conftest.$ac_ext <<EOF
-#line 5932 "configure"
-#include "confdefs.h"
-
-int main() {
-main()
-; return 0; }
-EOF
-if { (eval echo configure:5939: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=yes"
-else
-  echo "configure: failed program was:" >&5
-  cat conftest.$ac_ext >&5
-  rm -rf conftest*
-  eval "ac_cv_lib_$ac_lib_var=no"
-fi
-rm -f conftest*
-LIBS="$ac_save_LIBS"
-
-fi
-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
-  echo "$ac_t""yes" 1>&6
-  
-               cat >> confdefs.h <<\EOF
-#define HAVE_PP 1
-EOF
-
-               LDAPD_LIBS="-lpp $LDAPD_LIBS"
-               
-else
-  echo "$ac_t""no" 1>&6
-:
-fi
-
-
-       # Extract the first word of "pepsy", so it can be a program name with args.
-set dummy pepsy; ac_word=$2
-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
-echo "configure:5970: checking for $ac_word" >&5
-if eval "test \"\${ac_cv_path_PEPSY+set}\" = set"; then
-  echo $ac_n "(cached) $ac_c" 1>&6
-else
-  case "$PEPSY" in
-  /*)
-  ac_cv_path_PEPSY="$PEPSY" # Let the user override the test with a path.
-  ;;
-  ?:/*)
-  ac_cv_path_PEPSY="$PEPSY" # Let the user override the test with a dos path.
-  ;;
-  *)
-  IFS="${IFS=  }"; ac_save_ifs="$IFS"; IFS=":"
-  ac_dummy="$PATH"
-  for ac_dir in $ac_dummy; do 
-    test -z "$ac_dir" && ac_dir=.
-    if test -f $ac_dir/$ac_word; then
-      ac_cv_path_PEPSY="$ac_dir/$ac_word"
-      break
-    fi
-  done
-  IFS="$ac_save_ifs"
-  ;;
-esac
-fi
-PEPSY="$ac_cv_path_PEPSY"
-if test -n "$PEPSY"; then
-  echo "$ac_t""$PEPSY" 1>&6
-else
-  echo "$ac_t""no" 1>&6
-fi
-
-fi
-
 if test $ol_enable_quipu != no ; then
        for ac_hdr in quipu/commonarg.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:6009: checking for $ac_hdr" >&5
+echo "configure:5758: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6014 "configure"
+#line 5763 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:6019: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:5768: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -6063,17 +5812,17 @@ if test $ol_with_kerberos = auto -o $ol_with_kerberos = k5 \
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:6067: checking for $ac_hdr" >&5
+echo "configure:5816: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6072 "configure"
+#line 5821 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:6077: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:5826: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -6105,17 +5854,17 @@ done
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:6109: checking for $ac_hdr" >&5
+echo "configure:5858: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6114 "configure"
+#line 5863 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:6119: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:5868: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -6149,7 +5898,7 @@ done
 
                if test $krb5_impl = mit; then
                        echo $ac_n "checking for main in -lkrb5""... $ac_c" 1>&6
-echo "configure:6153: checking for main in -lkrb5" >&5
+echo "configure:5902: checking for main in -lkrb5" >&5
 ac_lib_var=`echo krb5'_'main | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6157,14 +5906,14 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lkrb5 -lcrypto -lcom_err $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6161 "configure"
+#line 5910 "configure"
 #include "confdefs.h"
 
 int main() {
 main()
 ; return 0; }
 EOF
-if { (eval echo configure:6168: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5917: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6189,7 +5938,7 @@ fi
 
                elif test $krb5_impl = heimdal; then
                        echo $ac_n "checking for main in -lkrb5""... $ac_c" 1>&6
-echo "configure:6193: checking for main in -lkrb5" >&5
+echo "configure:5942: checking for main in -lkrb5" >&5
 ac_lib_var=`echo krb5'_'main | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6197,14 +5946,14 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lkrb5 -ldes -lasn1 -lroken -lcom_err $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6201 "configure"
+#line 5950 "configure"
 #include "confdefs.h"
 
 int main() {
 main()
 ; return 0; }
 EOF
-if { (eval echo configure:6208: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:5957: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6266,17 +6015,17 @@ if test $ol_link_krb5 = yes -a \
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:6270: checking for $ac_hdr" >&5
+echo "configure:6019: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6275 "configure"
+#line 6024 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:6280: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:6029: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -6306,7 +6055,7 @@ done
        if test $ac_cv_header_kerberosIV_krb_h = yes ; then
                if test $krb5_impl = mit; then
                        echo $ac_n "checking for main in -lkrb4""... $ac_c" 1>&6
-echo "configure:6310: checking for main in -lkrb4" >&5
+echo "configure:6059: checking for main in -lkrb4" >&5
 ac_lib_var=`echo krb4'_'main | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6314,14 +6063,14 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lkrb4 -ldes425 -lkrb5 -lcrypto -lcom_err $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6318 "configure"
+#line 6067 "configure"
 #include "confdefs.h"
 
 int main() {
 main()
 ; return 0; }
 EOF
-if { (eval echo configure:6325: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6074: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6346,7 +6095,7 @@ fi
 
                elif test $krb5_impl = heimdal; then
                        echo $ac_n "checking for main in -lkrb4""... $ac_c" 1>&6
-echo "configure:6350: checking for main in -lkrb4" >&5
+echo "configure:6099: checking for main in -lkrb4" >&5
 ac_lib_var=`echo krb4'_'main | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6354,14 +6103,14 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lkrb4 -lkrb5 -ldes -lasn1 -lroken -lcom_err $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6358 "configure"
+#line 6107 "configure"
 #include "confdefs.h"
 
 int main() {
 main()
 ; return 0; }
 EOF
-if { (eval echo configure:6365: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6114: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6403,7 +6152,7 @@ EOF
 
 
                        echo $ac_n "checking for des_debug in Kerberos libraries""... $ac_c" 1>&6
-echo "configure:6407: checking for des_debug in Kerberos libraries" >&5
+echo "configure:6156: checking for des_debug in Kerberos libraries" >&5
 if eval "test \"\${ol_cv_var_des_debug+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -6411,7 +6160,7 @@ else
                                                                save_LIBS="$LIBS"
                                LIBS="$KRB4_LIBS $KRB5_LIBS $LIBS"
                                cat > conftest.$ac_ext <<EOF
-#line 6415 "configure"
+#line 6164 "configure"
 #include "confdefs.h"
 
 #include <kerberosIV/krb.h>
@@ -6424,7 +6173,7 @@ des_debug = 1;
 
 ; return 0; }
 EOF
-if { (eval echo configure:6428: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6177: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_var_des_debug=yes
 else
@@ -6463,17 +6212,17 @@ if test $ol_with_kerberos = auto -o $ol_with_kerberos = k4 \
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:6467: checking for $ac_hdr" >&5
+echo "configure:6216: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6472 "configure"
+#line 6221 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:6477: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:6226: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -6502,7 +6251,7 @@ done
 
        if test $ac_cv_header_krb_h = yes ; then
                echo $ac_n "checking for main in -lkrb""... $ac_c" 1>&6
-echo "configure:6506: checking for main in -lkrb" >&5
+echo "configure:6255: checking for main in -lkrb" >&5
 ac_lib_var=`echo krb'_'main | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6510,14 +6259,14 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lkrb -ldes $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6514 "configure"
+#line 6263 "configure"
 #include "confdefs.h"
 
 int main() {
 main()
 ; return 0; }
 EOF
-if { (eval echo configure:6521: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6270: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6581,17 +6330,17 @@ if test $ol_with_tls != no ; then
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:6585: checking for $ac_hdr" >&5
+echo "configure:6334: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6590 "configure"
+#line 6339 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:6595: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:6344: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -6620,7 +6369,7 @@ done
        
        if test $ac_cv_header_openssl_ssl_h = yes -o $ac_cv_header_ssl_h = yes ; then
                echo $ac_n "checking for SSLeay_add_ssl_algorithms in -lssl""... $ac_c" 1>&6
-echo "configure:6624: checking for SSLeay_add_ssl_algorithms in -lssl" >&5
+echo "configure:6373: checking for SSLeay_add_ssl_algorithms in -lssl" >&5
 ac_lib_var=`echo ssl'_'SSLeay_add_ssl_algorithms | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6628,7 +6377,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lssl -lcrypto $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6632 "configure"
+#line 6381 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -6639,7 +6388,7 @@ int main() {
 SSLeay_add_ssl_algorithms()
 ; return 0; }
 EOF
-if { (eval echo configure:6643: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6392: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6664,7 +6413,7 @@ fi
                        
                if test $have_ssleay = no ; then
                        echo $ac_n "checking for SSL_library_init in -lssl""... $ac_c" 1>&6
-echo "configure:6668: checking for SSL_library_init in -lssl" >&5
+echo "configure:6417: checking for SSL_library_init in -lssl" >&5
 ac_lib_var=`echo ssl'_'SSL_library_init | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6672,7 +6421,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lssl -lcrypto $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6676 "configure"
+#line 6425 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -6683,7 +6432,7 @@ int main() {
 SSL_library_init()
 ; return 0; }
 EOF
-if { (eval echo configure:6687: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6436: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6709,7 +6458,7 @@ fi
 
                if test $have_ssleay = no ; then
                        echo $ac_n "checking for ssl3_accept in -lssl""... $ac_c" 1>&6
-echo "configure:6713: checking for ssl3_accept in -lssl" >&5
+echo "configure:6462: checking for ssl3_accept in -lssl" >&5
 ac_lib_var=`echo ssl'_'ssl3_accept | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -6717,7 +6466,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lssl -lcrypto -lRSAglue -lrsaref $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 6721 "configure"
+#line 6470 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -6728,7 +6477,7 @@ int main() {
 ssl3_accept()
 ; return 0; }
 EOF
-if { (eval echo configure:6732: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6481: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -6788,12 +6537,12 @@ for ac_func in \
 
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:6792: checking for $ac_func" >&5
+echo "configure:6541: checking for $ac_func" >&5
 if eval "test \"\${ac_cv_func_$ac_func+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6797 "configure"
+#line 6546 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -6817,7 +6566,7 @@ f = $ac_func;
 
 ; return 0; }
 EOF
-if { (eval echo configure:6821: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6570: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -6846,19 +6595,19 @@ if test "$ac_cv_func_ctime_r" = no ; then
        ol_cv_func_ctime_r_nargs=0
 else
        echo $ac_n "checking number of arguments of ctime_r""... $ac_c" 1>&6
-echo "configure:6850: checking number of arguments of ctime_r" >&5
+echo "configure:6599: checking number of arguments of ctime_r" >&5
 if eval "test \"\${ol_cv_func_ctime_r_nargs+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6855 "configure"
+#line 6604 "configure"
 #include "confdefs.h"
 #include <time.h>
 int main() {
 time_t ti; char *buffer; ctime_r(&ti,buffer,32);
 ; return 0; }
 EOF
-if { (eval echo configure:6862: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6611: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ol_cv_func_ctime_r_nargs3=yes
 else
@@ -6870,14 +6619,14 @@ fi
 rm -f conftest*
 
        cat > conftest.$ac_ext <<EOF
-#line 6874 "configure"
+#line 6623 "configure"
 #include "confdefs.h"
 #include <time.h>
 int main() {
 time_t ti; char *buffer; ctime_r(&ti,buffer);
 ; return 0; }
 EOF
-if { (eval echo configure:6881: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6630: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ol_cv_func_ctime_r_nargs2=yes
 else
@@ -6917,12 +6666,12 @@ fi
 
 if test "$ac_cv_func_gethostbyname_r" = yes ; then
        echo $ac_n "checking number of arguments of gethostbyname_r""... $ac_c" 1>&6
-echo "configure:6921: checking number of arguments of gethostbyname_r" >&5
+echo "configure:6670: checking number of arguments of gethostbyname_r" >&5
 if eval "test \"\${ol_cv_func_gethostbyname_r_nargs+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 6926 "configure"
+#line 6675 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/socket.h>
@@ -6936,7 +6685,7 @@ struct hostent hent; char buffer[BUFSIZE];
                        buffer, bufsize, &h_errno);
 ; return 0; }
 EOF
-if { (eval echo configure:6940: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6689: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ol_cv_func_gethostbyname_r_nargs5=yes
 else
@@ -6948,7 +6697,7 @@ fi
 rm -f conftest*
 
        cat > conftest.$ac_ext <<EOF
-#line 6952 "configure"
+#line 6701 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/socket.h>
@@ -6963,7 +6712,7 @@ struct hostent hent;struct hostent *rhent;
                        &rhent, &h_errno);
 ; return 0; }
 EOF
-if { (eval echo configure:6967: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6716: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ol_cv_func_gethostbyname_r_nargs6=yes
 else
@@ -7004,12 +6753,12 @@ fi
  
 if test "$ac_cv_func_gethostbyaddr_r" = yes ; then
        echo $ac_n "checking number of arguments of gethostbyaddr_r""... $ac_c" 1>&6
-echo "configure:7008: checking number of arguments of gethostbyaddr_r" >&5
+echo "configure:6757: checking number of arguments of gethostbyaddr_r" >&5
 if eval "test \"\${ol_cv_func_gethostbyaddr_r_nargs+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7013 "configure"
+#line 6762 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/socket.h>
@@ -7025,7 +6774,7 @@ struct hostent hent; char buffer[BUFSIZE];
                        alen, AF_INET, &hent, buffer, bufsize, &h_errno);
 ; return 0; }
 EOF
-if { (eval echo configure:7029: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6778: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ol_cv_func_gethostbyaddr_r_nargs7=yes
 else
@@ -7037,7 +6786,7 @@ fi
 rm -f conftest*
 
        cat > conftest.$ac_ext <<EOF
-#line 7041 "configure"
+#line 6790 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/socket.h>
@@ -7055,7 +6804,7 @@ struct hostent hent;
                        &rhent, &h_errno);
 ; return 0; }
 EOF
-if { (eval echo configure:7059: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:6808: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ol_cv_func_gethostbyaddr_r_nargs8=yes
 else
@@ -7118,18 +6867,18 @@ if test $ol_with_threads = auto -o $ol_with_threads = yes \
 
        
        echo $ac_n "checking for NT Threads""... $ac_c" 1>&6
-echo "configure:7122: checking for NT Threads" >&5
+echo "configure:6871: checking for NT Threads" >&5
 if eval "test \"\${ol_cv_nt_threads+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
                echo $ac_n "checking for _beginthread""... $ac_c" 1>&6
-echo "configure:7128: checking for _beginthread" >&5
+echo "configure:6877: checking for _beginthread" >&5
 if eval "test \"\${ac_cv_func__beginthread+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7133 "configure"
+#line 6882 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char _beginthread(); below.  */
@@ -7153,7 +6902,7 @@ f = _beginthread;
 
 ; return 0; }
 EOF
-if { (eval echo configure:7157: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:6906: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func__beginthread=yes"
 else
@@ -7213,17 +6962,17 @@ if test $ol_with_threads = auto -o $ol_with_threads = yes \
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:7217: checking for $ac_hdr" >&5
+echo "configure:6966: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7222 "configure"
+#line 6971 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:7227: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:6976: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -7252,13 +7001,13 @@ done
 
        if test $ac_cv_header_pthread_h = yes ; then
                echo $ac_n "checking POSIX thread version""... $ac_c" 1>&6
-echo "configure:7256: checking POSIX thread version" >&5
+echo "configure:7005: checking POSIX thread version" >&5
 if eval "test \"\${ol_cv_pthread_version+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
        cat > conftest.$ac_ext <<EOF
-#line 7262 "configure"
+#line 7011 "configure"
 #include "confdefs.h"
 
 #              include <pthread.h>
@@ -7280,7 +7029,7 @@ rm -f conftest*
 
 
        cat > conftest.$ac_ext <<EOF
-#line 7284 "configure"
+#line 7033 "configure"
 #include "confdefs.h"
 
 #              include <pthread.h>
@@ -7333,12 +7082,12 @@ EOF
 
                
        echo $ac_n "checking for LinuxThreads pthread.h""... $ac_c" 1>&6
-echo "configure:7337: checking for LinuxThreads pthread.h" >&5
+echo "configure:7086: checking for LinuxThreads pthread.h" >&5
 if eval "test \"\${ol_cv_header_linux_threads+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7342 "configure"
+#line 7091 "configure"
 #include "confdefs.h"
 #include <pthread.h>
 EOF
@@ -7365,12 +7114,12 @@ EOF
 
                
        echo $ac_n "checking for GNU Pth pthread.h""... $ac_c" 1>&6
-echo "configure:7369: checking for GNU Pth pthread.h" >&5
+echo "configure:7118: checking for GNU Pth pthread.h" >&5
 if eval "test \"\${ol_cv_header_gnu_pth_pthread_h+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7374 "configure"
+#line 7123 "configure"
 #include "confdefs.h"
 #include <pthread.h>
 #ifdef _POSIX_THREAD_IS_GNU_PTH
@@ -7399,17 +7148,17 @@ echo "$ac_t""$ol_cv_header_gnu_pth_pthread_h" 1>&6
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:7403: checking for $ac_hdr" >&5
+echo "configure:7152: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 7408 "configure"
+#line 7157 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:7413: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:7162: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -7439,14 +7188,14 @@ done
 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
                                echo $ac_n "checking for pthread_create in default libraries""... $ac_c" 1>&6
-echo "configure:7443: checking for pthread_create in default libraries" >&5
+echo "configure:7192: checking for pthread_create in default libraries" >&5
 if eval "test \"\${ol_cv_pthread_create+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
                if test "$cross_compiling" = yes; then
   cat > conftest.$ac_ext <<EOF
-#line 7450 "configure"
+#line 7199 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -7502,7 +7251,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:7506: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7255: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_pthread_create=yes
 else
@@ -7514,7 +7263,7 @@ fi
 rm -f conftest*
 else
   cat > conftest.$ac_ext <<EOF
-#line 7518 "configure"
+#line 7267 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -7575,7 +7324,7 @@ int main(argc, argv)
 }
 
 EOF
-if { (eval echo configure:7579: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:7328: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ol_cv_pthread_create=yes
 else
@@ -7600,7 +7349,7 @@ echo "$ac_t""$ol_cv_pthread_create" 1>&6
 if test "$ol_link_threads" = no ; then
        # try -kthread
        echo $ac_n "checking for pthread link with -kthread""... $ac_c" 1>&6
-echo "configure:7604: checking for pthread link with -kthread" >&5
+echo "configure:7353: checking for pthread link with -kthread" >&5
 if eval "test \"\${ol_cv_pthread_kthread+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -7611,7 +7360,7 @@ else
 
                if test "$cross_compiling" = yes; then
   cat > conftest.$ac_ext <<EOF
-#line 7615 "configure"
+#line 7364 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -7667,7 +7416,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:7671: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7420: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_pthread_kthread=yes
 else
@@ -7679,7 +7428,7 @@ fi
 rm -f conftest*
 else
   cat > conftest.$ac_ext <<EOF
-#line 7683 "configure"
+#line 7432 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -7740,7 +7489,7 @@ int main(argc, argv)
 }
 
 EOF
-if { (eval echo configure:7744: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:7493: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ol_cv_pthread_kthread=yes
 else
@@ -7770,7 +7519,7 @@ fi
 if test "$ol_link_threads" = no ; then
        # try -pthread
        echo $ac_n "checking for pthread link with -pthread""... $ac_c" 1>&6
-echo "configure:7774: checking for pthread link with -pthread" >&5
+echo "configure:7523: checking for pthread link with -pthread" >&5
 if eval "test \"\${ol_cv_pthread_pthread+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -7781,7 +7530,7 @@ else
 
                if test "$cross_compiling" = yes; then
   cat > conftest.$ac_ext <<EOF
-#line 7785 "configure"
+#line 7534 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -7837,7 +7586,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:7841: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7590: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_pthread_pthread=yes
 else
@@ -7849,7 +7598,7 @@ fi
 rm -f conftest*
 else
   cat > conftest.$ac_ext <<EOF
-#line 7853 "configure"
+#line 7602 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -7910,7 +7659,7 @@ int main(argc, argv)
 }
 
 EOF
-if { (eval echo configure:7914: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:7663: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ol_cv_pthread_pthread=yes
 else
@@ -7940,7 +7689,7 @@ fi
 if test "$ol_link_threads" = no ; then
        # try -pthreads
        echo $ac_n "checking for pthread link with -pthreads""... $ac_c" 1>&6
-echo "configure:7944: checking for pthread link with -pthreads" >&5
+echo "configure:7693: checking for pthread link with -pthreads" >&5
 if eval "test \"\${ol_cv_pthread_pthreads+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -7951,7 +7700,7 @@ else
 
                if test "$cross_compiling" = yes; then
   cat > conftest.$ac_ext <<EOF
-#line 7955 "configure"
+#line 7704 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -8007,7 +7756,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:8011: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7760: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_pthread_pthreads=yes
 else
@@ -8019,7 +7768,7 @@ fi
 rm -f conftest*
 else
   cat > conftest.$ac_ext <<EOF
-#line 8023 "configure"
+#line 7772 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -8080,7 +7829,7 @@ int main(argc, argv)
 }
 
 EOF
-if { (eval echo configure:8084: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:7833: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ol_cv_pthread_pthreads=yes
 else
@@ -8110,7 +7859,7 @@ fi
 if test "$ol_link_threads" = no ; then
        # try -mthreads
        echo $ac_n "checking for pthread link with -mthreads""... $ac_c" 1>&6
-echo "configure:8114: checking for pthread link with -mthreads" >&5
+echo "configure:7863: checking for pthread link with -mthreads" >&5
 if eval "test \"\${ol_cv_pthread_mthreads+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -8121,7 +7870,7 @@ else
 
                if test "$cross_compiling" = yes; then
   cat > conftest.$ac_ext <<EOF
-#line 8125 "configure"
+#line 7874 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -8177,7 +7926,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:8181: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:7930: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_pthread_mthreads=yes
 else
@@ -8189,7 +7938,7 @@ fi
 rm -f conftest*
 else
   cat > conftest.$ac_ext <<EOF
-#line 8193 "configure"
+#line 7942 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -8250,7 +7999,7 @@ int main(argc, argv)
 }
 
 EOF
-if { (eval echo configure:8254: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:8003: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ol_cv_pthread_mthreads=yes
 else
@@ -8280,7 +8029,7 @@ fi
 if test "$ol_link_threads" = no ; then
        # try -thread
        echo $ac_n "checking for pthread link with -thread""... $ac_c" 1>&6
-echo "configure:8284: checking for pthread link with -thread" >&5
+echo "configure:8033: checking for pthread link with -thread" >&5
 if eval "test \"\${ol_cv_pthread_thread+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -8291,7 +8040,7 @@ else
 
                if test "$cross_compiling" = yes; then
   cat > conftest.$ac_ext <<EOF
-#line 8295 "configure"
+#line 8044 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -8347,7 +8096,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:8351: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8100: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_pthread_thread=yes
 else
@@ -8359,7 +8108,7 @@ fi
 rm -f conftest*
 else
   cat > conftest.$ac_ext <<EOF
-#line 8363 "configure"
+#line 8112 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -8420,7 +8169,7 @@ int main(argc, argv)
 }
 
 EOF
-if { (eval echo configure:8424: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:8173: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ol_cv_pthread_thread=yes
 else
@@ -8451,7 +8200,7 @@ fi
 if test "$ol_link_threads" = no ; then
        # try -lpthread -lmach -lexc -lc_r
        echo $ac_n "checking for pthread link with -lpthread -lmach -lexc -lc_r""... $ac_c" 1>&6
-echo "configure:8455: checking for pthread link with -lpthread -lmach -lexc -lc_r" >&5
+echo "configure:8204: checking for pthread link with -lpthread -lmach -lexc -lc_r" >&5
 if eval "test \"\${ol_cv_pthread_lpthread_lmach_lexc_lc_r+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -8462,7 +8211,7 @@ else
 
                if test "$cross_compiling" = yes; then
   cat > conftest.$ac_ext <<EOF
-#line 8466 "configure"
+#line 8215 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -8518,7 +8267,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:8522: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8271: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_pthread_lpthread_lmach_lexc_lc_r=yes
 else
@@ -8530,7 +8279,7 @@ fi
 rm -f conftest*
 else
   cat > conftest.$ac_ext <<EOF
-#line 8534 "configure"
+#line 8283 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -8591,7 +8340,7 @@ int main(argc, argv)
 }
 
 EOF
-if { (eval echo configure:8595: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:8344: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ol_cv_pthread_lpthread_lmach_lexc_lc_r=yes
 else
@@ -8621,7 +8370,7 @@ fi
 if test "$ol_link_threads" = no ; then
        # try -lpthread -lmach -lexc
        echo $ac_n "checking for pthread link with -lpthread -lmach -lexc""... $ac_c" 1>&6
-echo "configure:8625: checking for pthread link with -lpthread -lmach -lexc" >&5
+echo "configure:8374: checking for pthread link with -lpthread -lmach -lexc" >&5
 if eval "test \"\${ol_cv_pthread_lpthread_lmach_lexc+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -8632,7 +8381,7 @@ else
 
                if test "$cross_compiling" = yes; then
   cat > conftest.$ac_ext <<EOF
-#line 8636 "configure"
+#line 8385 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -8688,7 +8437,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:8692: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8441: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_pthread_lpthread_lmach_lexc=yes
 else
@@ -8700,7 +8449,7 @@ fi
 rm -f conftest*
 else
   cat > conftest.$ac_ext <<EOF
-#line 8704 "configure"
+#line 8453 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -8761,7 +8510,7 @@ int main(argc, argv)
 }
 
 EOF
-if { (eval echo configure:8765: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:8514: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ol_cv_pthread_lpthread_lmach_lexc=yes
 else
@@ -8792,7 +8541,7 @@ fi
 if test "$ol_link_threads" = no ; then
        # try -lpthread -Wl,-woff,85
        echo $ac_n "checking for pthread link with -lpthread -Wl,-woff,85""... $ac_c" 1>&6
-echo "configure:8796: checking for pthread link with -lpthread -Wl,-woff,85" >&5
+echo "configure:8545: checking for pthread link with -lpthread -Wl,-woff,85" >&5
 if eval "test \"\${ol_cv_pthread_lib_lpthread_woff+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -8803,7 +8552,7 @@ else
 
                if test "$cross_compiling" = yes; then
   cat > conftest.$ac_ext <<EOF
-#line 8807 "configure"
+#line 8556 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -8859,7 +8608,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:8863: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8612: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_pthread_lib_lpthread_woff=yes
 else
@@ -8871,7 +8620,7 @@ fi
 rm -f conftest*
 else
   cat > conftest.$ac_ext <<EOF
-#line 8875 "configure"
+#line 8624 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -8932,7 +8681,7 @@ int main(argc, argv)
 }
 
 EOF
-if { (eval echo configure:8936: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:8685: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ol_cv_pthread_lib_lpthread_woff=yes
 else
@@ -8963,7 +8712,7 @@ fi
 if test "$ol_link_threads" = no ; then
        # try -lpthread
        echo $ac_n "checking for pthread link with -lpthread""... $ac_c" 1>&6
-echo "configure:8967: checking for pthread link with -lpthread" >&5
+echo "configure:8716: checking for pthread link with -lpthread" >&5
 if eval "test \"\${ol_cv_pthread_lpthread+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -8974,7 +8723,7 @@ else
 
                if test "$cross_compiling" = yes; then
   cat > conftest.$ac_ext <<EOF
-#line 8978 "configure"
+#line 8727 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -9030,7 +8779,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:9034: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8783: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_pthread_lpthread=yes
 else
@@ -9042,7 +8791,7 @@ fi
 rm -f conftest*
 else
   cat > conftest.$ac_ext <<EOF
-#line 9046 "configure"
+#line 8795 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -9103,7 +8852,7 @@ int main(argc, argv)
 }
 
 EOF
-if { (eval echo configure:9107: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:8856: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ol_cv_pthread_lpthread=yes
 else
@@ -9133,7 +8882,7 @@ fi
 if test "$ol_link_threads" = no ; then
        # try -lc_r
        echo $ac_n "checking for pthread link with -lc_r""... $ac_c" 1>&6
-echo "configure:9137: checking for pthread link with -lc_r" >&5
+echo "configure:8886: checking for pthread link with -lc_r" >&5
 if eval "test \"\${ol_cv_pthread_lc_r+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -9144,7 +8893,7 @@ else
 
                if test "$cross_compiling" = yes; then
   cat > conftest.$ac_ext <<EOF
-#line 9148 "configure"
+#line 8897 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -9200,7 +8949,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:9204: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:8953: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_pthread_lc_r=yes
 else
@@ -9212,7 +8961,7 @@ fi
 rm -f conftest*
 else
   cat > conftest.$ac_ext <<EOF
-#line 9216 "configure"
+#line 8965 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -9273,7 +9022,7 @@ int main(argc, argv)
 }
 
 EOF
-if { (eval echo configure:9277: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:9026: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ol_cv_pthread_lc_r=yes
 else
@@ -9304,7 +9053,7 @@ fi
 if test "$ol_link_threads" = no ; then
        # try -threads
        echo $ac_n "checking for pthread link with -threads""... $ac_c" 1>&6
-echo "configure:9308: checking for pthread link with -threads" >&5
+echo "configure:9057: checking for pthread link with -threads" >&5
 if eval "test \"\${ol_cv_pthread_threads+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -9315,7 +9064,7 @@ else
 
                if test "$cross_compiling" = yes; then
   cat > conftest.$ac_ext <<EOF
-#line 9319 "configure"
+#line 9068 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -9371,7 +9120,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:9375: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9124: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_pthread_threads=yes
 else
@@ -9383,7 +9132,7 @@ fi
 rm -f conftest*
 else
   cat > conftest.$ac_ext <<EOF
-#line 9387 "configure"
+#line 9136 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -9444,7 +9193,7 @@ int main(argc, argv)
 }
 
 EOF
-if { (eval echo configure:9448: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:9197: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ol_cv_pthread_threads=yes
 else
@@ -9475,7 +9224,7 @@ fi
 if test "$ol_link_threads" = no ; then
        # try -lpthreads -lmach -lexc -lc_r
        echo $ac_n "checking for pthread link with -lpthreads -lmach -lexc -lc_r""... $ac_c" 1>&6
-echo "configure:9479: checking for pthread link with -lpthreads -lmach -lexc -lc_r" >&5
+echo "configure:9228: checking for pthread link with -lpthreads -lmach -lexc -lc_r" >&5
 if eval "test \"\${ol_cv_pthread_lpthreads_lmach_lexc_lc_r+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -9486,7 +9235,7 @@ else
 
                if test "$cross_compiling" = yes; then
   cat > conftest.$ac_ext <<EOF
-#line 9490 "configure"
+#line 9239 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -9542,7 +9291,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:9546: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9295: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_pthread_lpthreads_lmach_lexc_lc_r=yes
 else
@@ -9554,7 +9303,7 @@ fi
 rm -f conftest*
 else
   cat > conftest.$ac_ext <<EOF
-#line 9558 "configure"
+#line 9307 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -9615,7 +9364,7 @@ int main(argc, argv)
 }
 
 EOF
-if { (eval echo configure:9619: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:9368: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ol_cv_pthread_lpthreads_lmach_lexc_lc_r=yes
 else
@@ -9645,7 +9394,7 @@ fi
 if test "$ol_link_threads" = no ; then
        # try -lpthreads -lmach -lexc
        echo $ac_n "checking for pthread link with -lpthreads -lmach -lexc""... $ac_c" 1>&6
-echo "configure:9649: checking for pthread link with -lpthreads -lmach -lexc" >&5
+echo "configure:9398: checking for pthread link with -lpthreads -lmach -lexc" >&5
 if eval "test \"\${ol_cv_pthread_lpthreads_lmach_lexc+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -9656,7 +9405,7 @@ else
 
                if test "$cross_compiling" = yes; then
   cat > conftest.$ac_ext <<EOF
-#line 9660 "configure"
+#line 9409 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -9712,7 +9461,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:9716: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9465: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_pthread_lpthreads_lmach_lexc=yes
 else
@@ -9724,7 +9473,7 @@ fi
 rm -f conftest*
 else
   cat > conftest.$ac_ext <<EOF
-#line 9728 "configure"
+#line 9477 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -9785,7 +9534,7 @@ int main(argc, argv)
 }
 
 EOF
-if { (eval echo configure:9789: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:9538: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ol_cv_pthread_lpthreads_lmach_lexc=yes
 else
@@ -9815,7 +9564,7 @@ fi
 if test "$ol_link_threads" = no ; then
        # try -lpthreads -lexc
        echo $ac_n "checking for pthread link with -lpthreads -lexc""... $ac_c" 1>&6
-echo "configure:9819: checking for pthread link with -lpthreads -lexc" >&5
+echo "configure:9568: checking for pthread link with -lpthreads -lexc" >&5
 if eval "test \"\${ol_cv_pthread_lpthreads_lexc+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -9826,7 +9575,7 @@ else
 
                if test "$cross_compiling" = yes; then
   cat > conftest.$ac_ext <<EOF
-#line 9830 "configure"
+#line 9579 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -9882,7 +9631,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:9886: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9635: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_pthread_lpthreads_lexc=yes
 else
@@ -9894,7 +9643,7 @@ fi
 rm -f conftest*
 else
   cat > conftest.$ac_ext <<EOF
-#line 9898 "configure"
+#line 9647 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -9955,7 +9704,7 @@ int main(argc, argv)
 }
 
 EOF
-if { (eval echo configure:9959: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:9708: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ol_cv_pthread_lpthreads_lexc=yes
 else
@@ -9986,7 +9735,7 @@ fi
 if test "$ol_link_threads" = no ; then
        # try -lpthreads
        echo $ac_n "checking for pthread link with -lpthreads""... $ac_c" 1>&6
-echo "configure:9990: checking for pthread link with -lpthreads" >&5
+echo "configure:9739: checking for pthread link with -lpthreads" >&5
 if eval "test \"\${ol_cv_pthread_lib_lpthreads+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -9997,7 +9746,7 @@ else
 
                if test "$cross_compiling" = yes; then
   cat > conftest.$ac_ext <<EOF
-#line 10001 "configure"
+#line 9750 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -10053,7 +9802,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:10057: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9806: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_pthread_lib_lpthreads=yes
 else
@@ -10065,7 +9814,7 @@ fi
 rm -f conftest*
 else
   cat > conftest.$ac_ext <<EOF
-#line 10069 "configure"
+#line 9818 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -10126,7 +9875,7 @@ int main(argc, argv)
 }
 
 EOF
-if { (eval echo configure:10130: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:9879: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ol_cv_pthread_lib_lpthreads=yes
 else
@@ -10168,12 +9917,12 @@ EOF
                                                                                                for ac_func in sched_yield pthread_yield
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:10172: checking for $ac_func" >&5
+echo "configure:9921: checking for $ac_func" >&5
 if eval "test \"\${ac_cv_func_$ac_func+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 10177 "configure"
+#line 9926 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -10197,7 +9946,7 @@ f = $ac_func;
 
 ; return 0; }
 EOF
-if { (eval echo configure:10201: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9950: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -10225,7 +9974,7 @@ done
                        if test $ac_cv_func_sched_yield = no -a \
                                $ac_cv_func_pthread_yield = no ; then
                                                                echo $ac_n "checking for sched_yield in -lrt""... $ac_c" 1>&6
-echo "configure:10229: checking for sched_yield in -lrt" >&5
+echo "configure:9978: checking for sched_yield in -lrt" >&5
 ac_lib_var=`echo rt'_'sched_yield | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -10233,7 +9982,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lrt  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 10237 "configure"
+#line 9986 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -10244,7 +9993,7 @@ int main() {
 sched_yield()
 ; return 0; }
 EOF
-if { (eval echo configure:10248: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:9997: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
                                                                                                for ac_func in thr_yield
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:10280: checking for $ac_func" >&5
+echo "configure:10029: checking for $ac_func" >&5
 if eval "test \"\${ac_cv_func_$ac_func+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 10285 "configure"
+#line 10034 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -10305,7 +10054,7 @@ f = $ac_func;
 
 ; return 0; }
 EOF
-if { (eval echo configure:10309: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10058: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -10339,12 +10088,12 @@ done
                                                for ac_func in pthread_kill
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:10343: checking for $ac_func" >&5
+echo "configure:10092: checking for $ac_func" >&5
 if eval "test \"\${ac_cv_func_$ac_func+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 10348 "configure"
+#line 10097 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -10368,7 +10117,7 @@ f = $ac_func;
 
 ; return 0; }
 EOF
-if { (eval echo configure:10372: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10121: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -10394,13 +10143,13 @@ done
 
 
                                                                        echo $ac_n "checking for pthread_detach with <pthread.h>""... $ac_c" 1>&6
-echo "configure:10398: checking for pthread_detach with <pthread.h>" >&5
+echo "configure:10147: checking for pthread_detach with <pthread.h>" >&5
 if eval "test \"\${ol_cv_func_pthread_detach+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
                                                                cat > conftest.$ac_ext <<EOF
-#line 10404 "configure"
+#line 10153 "configure"
 #include "confdefs.h"
 
 #include <pthread.h>
@@ -10412,7 +10161,7 @@ int main() {
 pthread_detach(NULL);
 ; return 0; }
 EOF
-if { (eval echo configure:10416: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10165: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_func_pthread_detach=yes
 else
@@ -10444,12 +10193,12 @@ EOF
                        
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:10448: checking for $ac_func" >&5
+echo "configure:10197: checking for $ac_func" >&5
 if eval "test \"\${ac_cv_func_$ac_func+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 10453 "configure"
+#line 10202 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -10473,7 +10222,7 @@ f = $ac_func;
 
 ; return 0; }
 EOF
-if { (eval echo configure:10477: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10226: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -10500,12 +10249,12 @@ done
 
                        
        echo $ac_n "checking for pthread_kill_other_threads_np""... $ac_c" 1>&6
-echo "configure:10504: checking for pthread_kill_other_threads_np" >&5
+echo "configure:10253: checking for pthread_kill_other_threads_np" >&5
 if eval "test \"\${ac_cv_func_pthread_kill_other_threads_np+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 10509 "configure"
+#line 10258 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char pthread_kill_other_threads_np(); below.  */
@@ -10529,7 +10278,7 @@ f = pthread_kill_other_threads_np;
 
 ; return 0; }
 EOF
-if { (eval echo configure:10533: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10282: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_pthread_kill_other_threads_np=yes"
 else
@@ -10549,7 +10298,7 @@ else
 fi
 
        echo $ac_n "checking for LinuxThreads implementation""... $ac_c" 1>&6
-echo "configure:10553: checking for LinuxThreads implementation" >&5
+echo "configure:10302: checking for LinuxThreads implementation" >&5
 if eval "test \"\${ol_cv_sys_linux_threads+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -10562,7 +10311,7 @@ echo "$ac_t""$ol_cv_sys_linux_threads" 1>&6
        
        
        echo $ac_n "checking for LinuxThreads consistency""... $ac_c" 1>&6
-echo "configure:10566: checking for LinuxThreads consistency" >&5
+echo "configure:10315: checking for LinuxThreads consistency" >&5
 if eval "test \"\${ol_cv_linux_threads+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -10587,7 +10336,7 @@ echo "$ac_t""$ol_cv_linux_threads" 1>&6
                        fi
 
                        echo $ac_n "checking if pthread_create() works""... $ac_c" 1>&6
-echo "configure:10591: checking if pthread_create() works" >&5
+echo "configure:10340: checking if pthread_create() works" >&5
 if eval "test \"\${ol_cv_pthread_create_works+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -10596,7 +10345,7 @@ else
                                ol_cv_pthread_create_works=yes
 else
   cat > conftest.$ac_ext <<EOF
-#line 10600 "configure"
+#line 10349 "configure"
 #include "confdefs.h"
 /* pthread test headers */
 #include <pthread.h>
@@ -10657,7 +10406,7 @@ int main(argc, argv)
 }
 
 EOF
-if { (eval echo configure:10661: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:10410: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ol_cv_pthread_create_works=yes
 else
@@ -10679,7 +10428,7 @@ echo "$ac_t""$ol_cv_pthread_create_works" 1>&6
 
                                                if test $ol_with_yielding_select = auto ; then
                                echo $ac_n "checking if select yields when using pthreads""... $ac_c" 1>&6
-echo "configure:10683: checking if select yields when using pthreads" >&5
+echo "configure:10432: checking if select yields when using pthreads" >&5
 if eval "test \"\${ol_cv_pthread_select_yields+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -10688,7 +10437,7 @@ else
   ol_cv_pthread_select_yields=cross
 else
   cat > conftest.$ac_ext <<EOF
-#line 10692 "configure"
+#line 10441 "configure"
 #include "confdefs.h"
 
 #include <sys/types.h>
@@ -10764,7 +10513,7 @@ int main(argc, argv)
        exit(2);
 }
 EOF
-if { (eval echo configure:10768: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:10517: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ol_cv_pthread_select_yields=no
 else
@@ -10808,17 +10557,17 @@ if test $ol_with_threads = auto -o $ol_with_threads = yes \
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:10812: checking for $ac_hdr" >&5
+echo "configure:10561: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 10817 "configure"
+#line 10566 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:10822: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:10571: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -10848,12 +10597,12 @@ done
                ol_with_threads=found
 
                                echo $ac_n "checking for cthread_fork""... $ac_c" 1>&6
-echo "configure:10852: checking for cthread_fork" >&5
+echo "configure:10601: checking for cthread_fork" >&5
 if eval "test \"\${ac_cv_func_cthread_fork+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 10857 "configure"
+#line 10606 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char cthread_fork(); below.  */
@@ -10877,7 +10626,7 @@ f = cthread_fork;
 
 ; return 0; }
 EOF
-if { (eval echo configure:10881: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10630: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_cthread_fork=yes"
 else
@@ -10899,7 +10648,7 @@ fi
 
                if test $ol_link_threads = no ; then
                                                                        echo $ac_n "checking for cthread_fork with -all_load""... $ac_c" 1>&6
-echo "configure:10903: checking for cthread_fork with -all_load" >&5
+echo "configure:10652: checking for cthread_fork with -all_load" >&5
 if eval "test \"\${ol_cv_cthread_all_load+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -10907,7 +10656,7 @@ else
                                                                save_LIBS="$LIBS"
                                LIBS="-all_load $LIBS"
                                cat > conftest.$ac_ext <<EOF
-#line 10911 "configure"
+#line 10660 "configure"
 #include "confdefs.h"
 #include <mach/cthreads.h>
 int main() {
@@ -10916,7 +10665,7 @@ int main() {
                                        
 ; return 0; }
 EOF
-if { (eval echo configure:10920: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10669: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_cthread_all_load=yes
 else
@@ -10961,17 +10710,17 @@ if test $ol_with_threads = auto -o $ol_with_threads = yes \
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:10965: checking for $ac_hdr" >&5
+echo "configure:10714: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 10970 "configure"
+#line 10719 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:10975: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:10724: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -11000,7 +10749,7 @@ done
 
        if test $ac_cv_header_pth_h = yes ; then
                echo $ac_n "checking for pth_version in -lpth""... $ac_c" 1>&6
-echo "configure:11004: checking for pth_version in -lpth" >&5
+echo "configure:10753: checking for pth_version in -lpth" >&5
 ac_lib_var=`echo pth'_'pth_version | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -11008,7 +10757,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lpth  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 11012 "configure"
+#line 10761 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -11019,7 +10768,7 @@ int main() {
 pth_version()
 ; return 0; }
 EOF
-if { (eval echo configure:11023: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10772: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -11063,17 +10812,17 @@ if test $ol_with_threads = auto -o $ol_with_threads = yes \
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:11067: checking for $ac_hdr" >&5
+echo "configure:10816: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 11072 "configure"
+#line 10821 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:11077: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:10826: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -11101,7 +10850,7 @@ done
 
        if test $ac_cv_header_thread_h = yes -a $ac_cv_header_synch_h = yes ; then
                echo $ac_n "checking for thr_create in -lthread""... $ac_c" 1>&6
-echo "configure:11105: checking for thr_create in -lthread" >&5
+echo "configure:10854: checking for thr_create in -lthread" >&5
 ac_lib_var=`echo thread'_'thr_create | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -11109,7 +10858,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lthread  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 11113 "configure"
+#line 10862 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -11120,7 +10869,7 @@ int main() {
 thr_create()
 ; return 0; }
 EOF
-if { (eval echo configure:11124: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10873: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -11160,12 +10909,12 @@ EOF
                        
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:11164: checking for $ac_func" >&5
+echo "configure:10913: checking for $ac_func" >&5
 if eval "test \"\${ac_cv_func_$ac_func+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 11169 "configure"
+#line 10918 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -11189,7 +10938,7 @@ f = $ac_func;
 
 ; return 0; }
 EOF
-if { (eval echo configure:11193: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:10942: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -11220,17 +10969,17 @@ done
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:11224: checking for $ac_hdr" >&5
+echo "configure:10973: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 11229 "configure"
+#line 10978 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:11234: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:10983: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -11258,7 +11007,7 @@ done
 
        if test $ac_cv_header_lwp_lwp_h = yes ; then
                echo $ac_n "checking for lwp_create in -llwp""... $ac_c" 1>&6
-echo "configure:11262: checking for lwp_create in -llwp" >&5
+echo "configure:11011: checking for lwp_create in -llwp" >&5
 ac_lib_var=`echo lwp'_'lwp_create | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -11266,7 +11015,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-llwp  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 11270 "configure"
+#line 11019 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -11277,7 +11026,7 @@ int main() {
 lwp_create()
 ; return 0; }
 EOF
-if { (eval echo configure:11281: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11030: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -11330,17 +11079,17 @@ if test $ol_with_threads = manual ; then
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:11334: checking for $ac_hdr" >&5
+echo "configure:11083: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 11339 "configure"
+#line 11088 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:11344: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:11093: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -11369,12 +11118,12 @@ done
        for ac_func in sched_yield pthread_yield
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:11373: checking for $ac_func" >&5
+echo "configure:11122: checking for $ac_func" >&5
 if eval "test \"\${ac_cv_func_$ac_func+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 11378 "configure"
+#line 11127 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -11398,7 +11147,7 @@ f = $ac_func;
 
 ; return 0; }
 EOF
-if { (eval echo configure:11402: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11151: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -11424,12 +11173,12 @@ done
 
        
        echo $ac_n "checking for LinuxThreads pthread.h""... $ac_c" 1>&6
-echo "configure:11428: checking for LinuxThreads pthread.h" >&5
+echo "configure:11177: checking for LinuxThreads pthread.h" >&5
 if eval "test \"\${ol_cv_header_linux_threads+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 11433 "configure"
+#line 11182 "configure"
 #include "confdefs.h"
 #include <pthread.h>
 EOF
@@ -11459,17 +11208,17 @@ EOF
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:11463: checking for $ac_hdr" >&5
+echo "configure:11212: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 11468 "configure"
+#line 11217 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:11473: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:11222: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -11499,17 +11248,17 @@ done
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:11503: checking for $ac_hdr" >&5
+echo "configure:11252: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 11508 "configure"
+#line 11257 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:11513: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:11262: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -11539,17 +11288,17 @@ done
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:11543: checking for $ac_hdr" >&5
+echo "configure:11292: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 11548 "configure"
+#line 11297 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:11553: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:11302: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -11608,20 +11357,20 @@ EOF
 
 
                        echo $ac_n "checking for thread specific errno""... $ac_c" 1>&6
-echo "configure:11612: checking for thread specific errno" >&5
+echo "configure:11361: checking for thread specific errno" >&5
 if eval "test \"\${ol_cv_errno_thread_specific+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
                cat > conftest.$ac_ext <<EOF
-#line 11618 "configure"
+#line 11367 "configure"
 #include "confdefs.h"
 #include <errno.h>
 int main() {
 errno = 0;
 ; return 0; }
 EOF
-if { (eval echo configure:11625: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11374: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_errno_thread_specific=yes
 else
 echo "$ac_t""$ol_cv_errno_thread_specific" 1>&6
 
                        echo $ac_n "checking for thread specific h_errno""... $ac_c" 1>&6
-echo "configure:11641: checking for thread specific h_errno" >&5
+echo "configure:11390: checking for thread specific h_errno" >&5
 if eval "test \"\${ol_cv_h_errno_thread_specific+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
                cat > conftest.$ac_ext <<EOF
-#line 11647 "configure"
+#line 11396 "configure"
 #include "confdefs.h"
 #include <netdb.h>
 int main() {
 h_errno = 0;
 ; return 0; }
 EOF
-if { (eval echo configure:11654: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11403: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_h_errno_thread_specific=yes
 else
@@ -11709,17 +11458,17 @@ for ac_hdr in db_185.h db.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:11713: checking for $ac_hdr" >&5
+echo "configure:11462: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 11718 "configure"
+#line 11467 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:11723: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:11472: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -11747,13 +11496,13 @@ done
 
 if test $ac_cv_header_db_185_h = yes -o $ac_cv_header_db_h = yes; then
        echo $ac_n "checking if Berkeley DB header compatibility""... $ac_c" 1>&6
-echo "configure:11751: checking if Berkeley DB header compatibility" >&5
+echo "configure:11500: checking if Berkeley DB header compatibility" >&5
 if eval "test \"\${ol_cv_header_db1+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
                cat > conftest.$ac_ext <<EOF
-#line 11757 "configure"
+#line 11506 "configure"
 #include "confdefs.h"
 
 #if HAVE_DB_185_H
@@ -11790,7 +11539,7 @@ echo "$ac_t""$ol_cv_header_db1" 1>&6
                ol_cv_lib_db=no
 if test $ol_cv_lib_db = no ; then
        echo $ac_n "checking for Berkeley DB link (default)""... $ac_c" 1>&6
-echo "configure:11794: checking for Berkeley DB link (default)" >&5
+echo "configure:11543: checking for Berkeley DB link (default)" >&5
 if eval "test \"\${ol_cv_db_none+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -11800,7 +11549,7 @@ else
        LIBS="$ol_DB_LIB $LIBS"
 
        cat > conftest.$ac_ext <<EOF
-#line 11804 "configure"
+#line 11553 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_DB_185_H
@@ -11829,7 +11578,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:11833: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11582: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_db_none=yes
 else
@@ -11853,7 +11602,7 @@ fi
 
 if test $ol_cv_lib_db = no ; then
        echo $ac_n "checking for Berkeley DB link (-ldb)""... $ac_c" 1>&6
-echo "configure:11857: checking for Berkeley DB link (-ldb)" >&5
+echo "configure:11606: checking for Berkeley DB link (-ldb)" >&5
 if eval "test \"\${ol_cv_db_db+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -11863,7 +11612,7 @@ else
        LIBS="$ol_DB_LIB $LIBS"
 
        cat > conftest.$ac_ext <<EOF
-#line 11867 "configure"
+#line 11616 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_DB_185_H
@@ -11892,7 +11641,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:11896: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11645: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_db_db=yes
 else
@@ -11916,7 +11665,7 @@ fi
 
 if test $ol_cv_lib_db = no ; then
        echo $ac_n "checking for Berkeley DB link (-ldb3)""... $ac_c" 1>&6
-echo "configure:11920: checking for Berkeley DB link (-ldb3)" >&5
+echo "configure:11669: checking for Berkeley DB link (-ldb3)" >&5
 if eval "test \"\${ol_cv_db_db3+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -11926,7 +11675,7 @@ else
        LIBS="$ol_DB_LIB $LIBS"
 
        cat > conftest.$ac_ext <<EOF
-#line 11930 "configure"
+#line 11679 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_DB_185_H
@@ -11955,7 +11704,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:11959: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11708: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_db_db3=yes
 else
@@ -11979,7 +11728,7 @@ fi
 
 if test $ol_cv_lib_db = no ; then
        echo $ac_n "checking for Berkeley DB link (-ldb2)""... $ac_c" 1>&6
-echo "configure:11983: checking for Berkeley DB link (-ldb2)" >&5
+echo "configure:11732: checking for Berkeley DB link (-ldb2)" >&5
 if eval "test \"\${ol_cv_db_db2+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -11989,7 +11738,7 @@ else
        LIBS="$ol_DB_LIB $LIBS"
 
        cat > conftest.$ac_ext <<EOF
-#line 11993 "configure"
+#line 11742 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_DB_185_H
@@ -12018,7 +11767,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:12022: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11771: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_db_db2=yes
 else
@@ -12042,7 +11791,7 @@ fi
 
 if test $ol_cv_lib_db = no ; then
        echo $ac_n "checking for Berkeley DB link (-ldb1)""... $ac_c" 1>&6
-echo "configure:12046: checking for Berkeley DB link (-ldb1)" >&5
+echo "configure:11795: checking for Berkeley DB link (-ldb1)" >&5
 if eval "test \"\${ol_cv_db_db1+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -12052,7 +11801,7 @@ else
        LIBS="$ol_DB_LIB $LIBS"
 
        cat > conftest.$ac_ext <<EOF
-#line 12056 "configure"
+#line 11805 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_DB_185_H
@@ -12081,7 +11830,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:12085: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11834: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_db_db1=yes
 else
@@ -12116,17 +11865,17 @@ for ac_hdr in db.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:12120: checking for $ac_hdr" >&5
+echo "configure:11869: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 12125 "configure"
+#line 11874 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:12130: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:11879: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -12156,7 +11905,7 @@ if test $ac_cv_header_db_h = yes; then
        ol_cv_lib_db=no
 if test $ol_cv_lib_db = no ; then
        echo $ac_n "checking for Berkeley DB link (default)""... $ac_c" 1>&6
-echo "configure:12160: checking for Berkeley DB link (default)" >&5
+echo "configure:11909: checking for Berkeley DB link (default)" >&5
 if eval "test \"\${ol_cv_db_none+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -12166,7 +11915,7 @@ else
        LIBS="$ol_DB_LIB $LIBS"
 
        cat > conftest.$ac_ext <<EOF
-#line 12170 "configure"
+#line 11919 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_DB_185_H
@@ -12195,7 +11944,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:12199: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:11948: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_db_none=yes
 else
@@ -12219,7 +11968,7 @@ fi
 
 if test $ol_cv_lib_db = no ; then
        echo $ac_n "checking for Berkeley DB link (-ldb)""... $ac_c" 1>&6
-echo "configure:12223: checking for Berkeley DB link (-ldb)" >&5
+echo "configure:11972: checking for Berkeley DB link (-ldb)" >&5
 if eval "test \"\${ol_cv_db_db+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -12229,7 +11978,7 @@ else
        LIBS="$ol_DB_LIB $LIBS"
 
        cat > conftest.$ac_ext <<EOF
-#line 12233 "configure"
+#line 11982 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_DB_185_H
@@ -12258,7 +12007,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:12262: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12011: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_db_db=yes
 else
@@ -12282,7 +12031,7 @@ fi
 
 if test $ol_cv_lib_db = no ; then
        echo $ac_n "checking for Berkeley DB link (-ldb3)""... $ac_c" 1>&6
-echo "configure:12286: checking for Berkeley DB link (-ldb3)" >&5
+echo "configure:12035: checking for Berkeley DB link (-ldb3)" >&5
 if eval "test \"\${ol_cv_db_db3+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -12292,7 +12041,7 @@ else
        LIBS="$ol_DB_LIB $LIBS"
 
        cat > conftest.$ac_ext <<EOF
-#line 12296 "configure"
+#line 12045 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_DB_185_H
@@ -12321,7 +12070,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:12325: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12074: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_db_db3=yes
 else
@@ -12345,7 +12094,7 @@ fi
 
 if test $ol_cv_lib_db = no ; then
        echo $ac_n "checking for Berkeley DB link (-ldb2)""... $ac_c" 1>&6
-echo "configure:12349: checking for Berkeley DB link (-ldb2)" >&5
+echo "configure:12098: checking for Berkeley DB link (-ldb2)" >&5
 if eval "test \"\${ol_cv_db_db2+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -12355,7 +12104,7 @@ else
        LIBS="$ol_DB_LIB $LIBS"
 
        cat > conftest.$ac_ext <<EOF
-#line 12359 "configure"
+#line 12108 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_DB_185_H
@@ -12384,7 +12133,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:12388: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12137: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_db_db2=yes
 else
@@ -12408,7 +12157,7 @@ fi
 
 if test $ol_cv_lib_db = no ; then
        echo $ac_n "checking for Berkeley DB link (-ldb1)""... $ac_c" 1>&6
-echo "configure:12412: checking for Berkeley DB link (-ldb1)" >&5
+echo "configure:12161: checking for Berkeley DB link (-ldb1)" >&5
 if eval "test \"\${ol_cv_db_db1+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -12418,7 +12167,7 @@ else
        LIBS="$ol_DB_LIB $LIBS"
 
        cat > conftest.$ac_ext <<EOF
-#line 12422 "configure"
+#line 12171 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_DB_185_H
@@ -12447,7 +12196,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:12451: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12200: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_db_db1=yes
 else
@@ -12473,7 +12222,7 @@ fi
        if test "$ol_cv_lib_db" != no ; then
                ol_cv_berkeley_db=yes
                echo $ac_n "checking for Berkeley DB thread support""... $ac_c" 1>&6
-echo "configure:12477: checking for Berkeley DB thread support" >&5
+echo "configure:12226: checking for Berkeley DB thread support" >&5
 if eval "test \"\${ol_cv_berkeley_db_thread+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -12487,7 +12236,7 @@ else
   ol_cv_berkeley_db_thread=cross
 else
   cat > conftest.$ac_ext <<EOF
-#line 12491 "configure"
+#line 12240 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_DB_185_H
@@ -12527,7 +12276,7 @@ main()
        return rc;
 }
 EOF
-if { (eval echo configure:12531: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:12280: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ol_cv_berkeley_db_thread=yes
 else
 
 if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = mdbm ; then
        echo $ac_n "checking for MDBM library""... $ac_c" 1>&6
-echo "configure:12595: checking for MDBM library" >&5
+echo "configure:12344: checking for MDBM library" >&5
 if eval "test \"\${ol_cv_lib_mdbm+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
        ol_LIBS="$LIBS"
        echo $ac_n "checking for mdbm_set_chain""... $ac_c" 1>&6
-echo "configure:12601: checking for mdbm_set_chain" >&5
+echo "configure:12350: checking for mdbm_set_chain" >&5
 if eval "test \"\${ac_cv_func_mdbm_set_chain+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 12606 "configure"
+#line 12355 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char mdbm_set_chain(); below.  */
@@ -12626,7 +12375,7 @@ f = mdbm_set_chain;
 
 ; return 0; }
 EOF
-if { (eval echo configure:12630: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12379: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_mdbm_set_chain=yes"
 else
@@ -12645,7 +12394,7 @@ else
   echo "$ac_t""no" 1>&6
 
                echo $ac_n "checking for mdbm_set_chain in -lmdbm""... $ac_c" 1>&6
-echo "configure:12649: checking for mdbm_set_chain in -lmdbm" >&5
+echo "configure:12398: checking for mdbm_set_chain in -lmdbm" >&5
 ac_lib_var=`echo mdbm'_'mdbm_set_chain | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -12653,7 +12402,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lmdbm  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 12657 "configure"
+#line 12406 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -12664,7 +12413,7 @@ int main() {
 mdbm_set_chain()
 ; return 0; }
 EOF
-if { (eval echo configure:12668: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12417: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -12699,17 +12448,17 @@ echo "$ac_t""$ol_cv_lib_mdbm" 1>&6
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:12703: checking for $ac_hdr" >&5
+echo "configure:12452: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 12708 "configure"
+#line 12457 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:12713: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:12462: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -12736,7 +12485,7 @@ fi
 done
 
  echo $ac_n "checking for db""... $ac_c" 1>&6
-echo "configure:12740: checking for db" >&5
+echo "configure:12489: checking for db" >&5
 if eval "test \"\${ol_cv_mdbm+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 
 if test $ol_with_ldbm_api = auto -o $ol_with_ldbm_api = gdbm ; then
        echo $ac_n "checking for GDBM library""... $ac_c" 1>&6
-echo "configure:12773: checking for GDBM library" >&5
+echo "configure:12522: checking for GDBM library" >&5
 if eval "test \"\${ol_cv_lib_gdbm+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
        ol_LIBS="$LIBS"
        echo $ac_n "checking for gdbm_open""... $ac_c" 1>&6
-echo "configure:12779: checking for gdbm_open" >&5
+echo "configure:12528: checking for gdbm_open" >&5
 if eval "test \"\${ac_cv_func_gdbm_open+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 12784 "configure"
+#line 12533 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char gdbm_open(); below.  */
@@ -12804,7 +12553,7 @@ f = gdbm_open;
 
 ; return 0; }
 EOF
-if { (eval echo configure:12808: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12557: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_gdbm_open=yes"
 else
@@ -12823,7 +12572,7 @@ else
   echo "$ac_t""no" 1>&6
 
                echo $ac_n "checking for gdbm_open in -lgdbm""... $ac_c" 1>&6
-echo "configure:12827: checking for gdbm_open in -lgdbm" >&5
+echo "configure:12576: checking for gdbm_open in -lgdbm" >&5
 ac_lib_var=`echo gdbm'_'gdbm_open | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -12831,7 +12580,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lgdbm  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 12835 "configure"
+#line 12584 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -12842,7 +12591,7 @@ int main() {
 gdbm_open()
 ; return 0; }
 EOF
-if { (eval echo configure:12846: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12595: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -12877,17 +12626,17 @@ echo "$ac_t""$ol_cv_lib_gdbm" 1>&6
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:12881: checking for $ac_hdr" >&5
+echo "configure:12630: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 12886 "configure"
+#line 12635 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:12891: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:12640: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -12914,7 +12663,7 @@ fi
 done
 
  echo $ac_n "checking for db""... $ac_c" 1>&6
-echo "configure:12918: checking for db" >&5
+echo "configure:12667: checking for db" >&5
 if eval "test \"\${ol_cv_gdbm+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
 
 if test $ol_with_ldbm_api = ndbm ; then
        echo $ac_n "checking for NDBM library""... $ac_c" 1>&6
-echo "configure:12952: checking for NDBM library" >&5
+echo "configure:12701: checking for NDBM library" >&5
 if eval "test \"\${ol_cv_lib_ndbm+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
        ol_LIBS="$LIBS"
        echo $ac_n "checking for dbm_open""... $ac_c" 1>&6
-echo "configure:12958: checking for dbm_open" >&5
+echo "configure:12707: checking for dbm_open" >&5
 if eval "test \"\${ac_cv_func_dbm_open+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 12963 "configure"
+#line 12712 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char dbm_open(); below.  */
@@ -12983,7 +12732,7 @@ f = dbm_open;
 
 ; return 0; }
 EOF
-if { (eval echo configure:12987: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12736: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_dbm_open=yes"
 else
@@ -13002,7 +12751,7 @@ else
   echo "$ac_t""no" 1>&6
 
                echo $ac_n "checking for dbm_open in -lndbm""... $ac_c" 1>&6
-echo "configure:13006: checking for dbm_open in -lndbm" >&5
+echo "configure:12755: checking for dbm_open in -lndbm" >&5
 ac_lib_var=`echo ndbm'_'dbm_open | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13010,7 +12759,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lndbm  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13014 "configure"
+#line 12763 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -13021,7 +12770,7 @@ int main() {
 dbm_open()
 ; return 0; }
 EOF
-if { (eval echo configure:13025: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12774: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -13041,7 +12790,7 @@ else
   echo "$ac_t""no" 1>&6
 
                        echo $ac_n "checking for dbm_open in -ldbm""... $ac_c" 1>&6
-echo "configure:13045: checking for dbm_open in -ldbm" >&5
+echo "configure:12794: checking for dbm_open in -ldbm" >&5
 ac_lib_var=`echo dbm'_'dbm_open | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13049,7 +12798,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ldbm  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13053 "configure"
+#line 12802 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -13060,7 +12809,7 @@ int main() {
 dbm_open()
 ; return 0; }
 EOF
-if { (eval echo configure:13064: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:12813: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -13097,17 +12846,17 @@ echo "$ac_t""$ol_cv_lib_ndbm" 1>&6
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:13101: checking for $ac_hdr" >&5
+echo "configure:12850: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 13106 "configure"
+#line 12855 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:13111: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:12860: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -13134,7 +12883,7 @@ fi
 done
 
  echo $ac_n "checking for db""... $ac_c" 1>&6
-echo "configure:13138: checking for db" >&5
+echo "configure:12887: checking for db" >&5
 if eval "test \"\${ol_cv_ndbm+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -13196,17 +12945,17 @@ if test $ol_enable_wrappers != no ; then
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:13200: checking for $ac_hdr" >&5
+echo "configure:12949: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 13205 "configure"
+#line 12954 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:13210: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:12959: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -13237,7 +12986,7 @@ done
                have_wrappers=no
        else
                cat > conftest.$ac_ext <<EOF
-#line 13241 "configure"
+#line 12990 "configure"
 #include "confdefs.h"
 
 int allow_severity = 0;
@@ -13247,7 +12996,7 @@ int main() {
 hosts_access()
 ; return 0; }
 EOF
-if { (eval echo configure:13251: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:13000: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   have_wrappers=yes
 else
@@ -13267,7 +13016,7 @@ EOF
                WRAP_LIBS="-lwrap"
 
                                                echo $ac_n "checking for main in -lnsl""... $ac_c" 1>&6
-echo "configure:13271: checking for main in -lnsl" >&5
+echo "configure:13020: checking for main in -lnsl" >&5
 ac_lib_var=`echo nsl'_'main | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13275,14 +13024,14 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lnsl  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13279 "configure"
+#line 13028 "configure"
 #include "confdefs.h"
 
 int main() {
 main()
 ; return 0; }
 EOF
-if { (eval echo configure:13286: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13035: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
 
 if test $ol_enable_syslog != no ; then
        echo $ac_n "checking for openlog""... $ac_c" 1>&6
-echo "configure:13327: checking for openlog" >&5
+echo "configure:13076: checking for openlog" >&5
 if eval "test \"\${ac_cv_func_openlog+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 13332 "configure"
+#line 13081 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char openlog(); below.  */
@@ -13352,7 +13101,7 @@ f = openlog;
 
 ; return 0; }
 EOF
-if { (eval echo configure:13356: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13105: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_openlog=yes"
 else
@@ -13382,17 +13131,17 @@ if test $ol_enable_tcl != no ; then
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:13386: checking for $ac_hdr" >&5
+echo "configure:13135: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 13391 "configure"
+#line 13140 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:13396: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:13145: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -13424,7 +13173,7 @@ done
        else
                for lib in tcl tcl7.6 tcl8.0 tcl8.2 ; do
                        echo $ac_n "checking for main in -l$lib""... $ac_c" 1>&6
-echo "configure:13428: checking for main in -l$lib" >&5
+echo "configure:13177: checking for main in -l$lib" >&5
 ac_lib_var=`echo $lib'_'main | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13432,14 +13181,14 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-l$lib  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13436 "configure"
+#line 13185 "configure"
 #include "confdefs.h"
 
 int main() {
 main()
 ; return 0; }
 EOF
-if { (eval echo configure:13443: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13192: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -13483,17 +13232,17 @@ for ac_hdr in termcap.h ncurses.h
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:13487: checking for $ac_hdr" >&5
+echo "configure:13236: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 13492 "configure"
+#line 13241 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:13497: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:13246: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -13522,7 +13271,7 @@ done
 
 if test $ol_link_termcap = no ; then
        echo $ac_n "checking for tputs in -ltermcap""... $ac_c" 1>&6
-echo "configure:13526: checking for tputs in -ltermcap" >&5
+echo "configure:13275: checking for tputs in -ltermcap" >&5
 ac_lib_var=`echo termcap'_'tputs | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13530,7 +13279,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-ltermcap  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13534 "configure"
+#line 13283 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -13541,7 +13290,7 @@ int main() {
 tputs()
 ; return 0; }
 EOF
-if { (eval echo configure:13545: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13294: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -13574,7 +13323,7 @@ fi
 
 if test $ol_link_termcap = no ; then
        echo $ac_n "checking for initscr in -lncurses""... $ac_c" 1>&6
-echo "configure:13578: checking for initscr in -lncurses" >&5
+echo "configure:13327: checking for initscr in -lncurses" >&5
 ac_lib_var=`echo ncurses'_'initscr | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13582,7 +13331,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lncurses  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13586 "configure"
+#line 13335 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -13593,7 +13342,7 @@ int main() {
 initscr()
 ; return 0; }
 EOF
-if { (eval echo configure:13597: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13346: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -13637,17 +13386,17 @@ ol_link_spasswd=no
 if test $ol_with_cyrus_sasl != no ; then
        ac_safe=`echo "sasl.h" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for sasl.h""... $ac_c" 1>&6
-echo "configure:13641: checking for sasl.h" >&5
+echo "configure:13390: checking for sasl.h" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 13646 "configure"
+#line 13395 "configure"
 #include "confdefs.h"
 #include <sasl.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:13651: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:13400: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -13671,7 +13420,7 @@ fi
 
        if test $ac_cv_header_sasl_h = yes ; then
                echo $ac_n "checking for sasl_client_init in -lsasl""... $ac_c" 1>&6
-echo "configure:13675: checking for sasl_client_init in -lsasl" >&5
+echo "configure:13424: checking for sasl_client_init in -lsasl" >&5
 ac_lib_var=`echo sasl'_'sasl_client_init | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13679,7 +13428,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lsasl  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13683 "configure"
+#line 13432 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -13690,7 +13439,7 @@ int main() {
 sasl_client_init()
 ; return 0; }
 EOF
-if { (eval echo configure:13694: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13443: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -13754,13 +13503,13 @@ if test $ol_with_fetch != no ; then
        ol_LIBS=$LIBS
 LIBS="-lfetch -lcom_err $LIBS"
 echo $ac_n "checking fetch(3) library""... $ac_c" 1>&6
-echo "configure:13758: checking fetch(3) library" >&5
+echo "configure:13507: checking fetch(3) library" >&5
 if eval "test \"\${ol_cv_lib_fetch+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
        cat > conftest.$ac_ext <<EOF
-#line 13764 "configure"
+#line 13513 "configure"
 #include "confdefs.h"
 
 #include <sys/param.h>
@@ -13770,7 +13519,7 @@ int main() {
 struct url *u = fetchParseURL("file:///"); 
 ; return 0; }
 EOF
-if { (eval echo configure:13774: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13523: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_lib_fetch=yes
 else
@@ -13808,17 +13557,17 @@ if test $ol_with_readline != no ; then
 do
 ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
 echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
-echo "configure:13812: checking for $ac_hdr" >&5
+echo "configure:13561: checking for $ac_hdr" >&5
 if eval "test \"\${ac_cv_header_$ac_safe+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 13817 "configure"
+#line 13566 "configure"
 #include "confdefs.h"
 #include <$ac_hdr>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:13822: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:13571: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -13849,7 +13598,7 @@ done
                save_LIBS="$LIBS"
                LIBS="$TERMCAP_LIBS $LIBS"
                echo $ac_n "checking for readline in -lreadline""... $ac_c" 1>&6
-echo "configure:13853: checking for readline in -lreadline" >&5
+echo "configure:13602: checking for readline in -lreadline" >&5
 ac_lib_var=`echo readline'_'readline | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13857,7 +13606,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lreadline  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13861 "configure"
+#line 13610 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -13868,7 +13617,7 @@ int main() {
 readline()
 ; return 0; }
 EOF
-if { (eval echo configure:13872: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13621: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
 
 if test $ol_enable_crypt != no ; then
        echo $ac_n "checking for crypt""... $ac_c" 1>&6
-echo "configure:13914: checking for crypt" >&5
+echo "configure:13663: checking for crypt" >&5
 if eval "test \"\${ac_cv_func_crypt+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 13919 "configure"
+#line 13668 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char crypt(); below.  */
@@ -13939,7 +13688,7 @@ f = crypt;
 
 ; return 0; }
 EOF
-if { (eval echo configure:13943: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13692: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_crypt=yes"
 else
@@ -13958,7 +13707,7 @@ else
   echo "$ac_t""no" 1>&6
 
                echo $ac_n "checking for crypt in -lcrypt""... $ac_c" 1>&6
-echo "configure:13962: checking for crypt in -lcrypt" >&5
+echo "configure:13711: checking for crypt in -lcrypt" >&5
 ac_lib_var=`echo crypt'_'crypt | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -13966,7 +13715,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lcrypt  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 13970 "configure"
+#line 13719 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -13977,7 +13726,7 @@ int main() {
 crypt()
 ; return 0; }
 EOF
-if { (eval echo configure:13981: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13730: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
 
 if test $ol_enable_proctitle != no ; then
        echo $ac_n "checking for setproctitle""... $ac_c" 1>&6
-echo "configure:14024: checking for setproctitle" >&5
+echo "configure:13773: checking for setproctitle" >&5
 if eval "test \"\${ac_cv_func_setproctitle+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14029 "configure"
+#line 13778 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char setproctitle(); below.  */
@@ -14049,7 +13798,7 @@ f = setproctitle;
 
 ; return 0; }
 EOF
-if { (eval echo configure:14053: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13802: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_setproctitle=yes"
 else
@@ -14068,7 +13817,7 @@ else
   echo "$ac_t""no" 1>&6
 
                echo $ac_n "checking for setproctitle in -lutil""... $ac_c" 1>&6
-echo "configure:14072: checking for setproctitle in -lutil" >&5
+echo "configure:13821: checking for setproctitle in -lutil" >&5
 ac_lib_var=`echo util'_'setproctitle | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -14076,7 +13825,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lutil  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 14080 "configure"
+#line 13829 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -14087,7 +13836,7 @@ int main() {
 setproctitle()
 ; return 0; }
 EOF
-if { (eval echo configure:14091: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:13840: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
@@ -14123,12 +13872,12 @@ EOF
 fi
 
 echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
-echo "configure:14127: checking for ANSI C header files" >&5
+echo "configure:13876: checking for ANSI C header files" >&5
 if eval "test \"\${ac_cv_header_stdc+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14132 "configure"
+#line 13881 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 #include <stdarg.h>
@@ -14136,7 +13885,7 @@ else
 #include <float.h>
 EOF
 ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
-{ (eval echo configure:14140: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+{ (eval echo configure:13889: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
 ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
 if test -z "$ac_err"; then
   rm -rf conftest*
@@ -14153,7 +13902,7 @@ rm -f conftest*
 if test $ac_cv_header_stdc = yes; then
   # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
-#line 14157 "configure"
+#line 13906 "configure"
 #include "confdefs.h"
 #include <string.h>
 EOF
@@ -14171,7 +13920,7 @@ fi
 if test $ac_cv_header_stdc = yes; then
   # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
 cat > conftest.$ac_ext <<EOF
-#line 14175 "configure"
+#line 13924 "configure"
 #include "confdefs.h"
 #include <stdlib.h>
 EOF
@@ -14192,7 +13941,7 @@ if test "$cross_compiling" = yes; then
   :
 else
   cat > conftest.$ac_ext <<EOF
-#line 14196 "configure"
+#line 13945 "configure"
 #include "confdefs.h"
 #include <ctype.h>
 #if ((' ' & 0x0FF) == 0x020)
@@ -14210,7 +13959,7 @@ if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
 exit (0); }
 
 EOF
-if { (eval echo configure:14214: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:13963: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   :
 else
@@ -14234,12 +13983,12 @@ EOF
 fi
 
 echo $ac_n "checking for mode_t""... $ac_c" 1>&6
-echo "configure:14238: checking for mode_t" >&5
+echo "configure:13987: checking for mode_t" >&5
 if eval "test \"\${ac_cv_type_mode_t+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14243 "configure"
+#line 13992 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -14270,12 +14019,12 @@ EOF
 fi
 
 echo $ac_n "checking for off_t""... $ac_c" 1>&6
-echo "configure:14274: checking for off_t" >&5
+echo "configure:14023: checking for off_t" >&5
 if eval "test \"\${ac_cv_type_off_t+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14279 "configure"
+#line 14028 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -14306,12 +14055,12 @@ EOF
 fi
 
 echo $ac_n "checking for pid_t""... $ac_c" 1>&6
-echo "configure:14310: checking for pid_t" >&5
+echo "configure:14059: checking for pid_t" >&5
 if eval "test \"\${ac_cv_type_pid_t+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14315 "configure"
+#line 14064 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -14342,19 +14091,19 @@ EOF
 fi
 
 echo $ac_n "checking for ptrdiff_t""... $ac_c" 1>&6
-echo "configure:14346: checking for ptrdiff_t" >&5
+echo "configure:14095: checking for ptrdiff_t" >&5
 if eval "test \"\${am_cv_type_ptrdiff_t+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14351 "configure"
+#line 14100 "configure"
 #include "confdefs.h"
 #include <stddef.h>
 int main() {
 ptrdiff_t p
 ; return 0; }
 EOF
-if { (eval echo configure:14358: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:14107: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   am_cv_type_ptrdiff_t=yes
 else
@@ -14375,12 +14124,12 @@ EOF
    fi
 
 echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6
-echo "configure:14379: checking return type of signal handlers" >&5
+echo "configure:14128: checking return type of signal handlers" >&5
 if eval "test \"\${ac_cv_type_signal+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14384 "configure"
+#line 14133 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <signal.h>
@@ -14397,7 +14146,7 @@ int main() {
 int i;
 ; return 0; }
 EOF
-if { (eval echo configure:14401: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:14150: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_type_signal=void
 else
@@ -14416,12 +14165,12 @@ EOF
 
 
 echo $ac_n "checking for size_t""... $ac_c" 1>&6
-echo "configure:14420: checking for size_t" >&5
+echo "configure:14169: checking for size_t" >&5
 if eval "test \"\${ac_cv_type_size_t+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14425 "configure"
+#line 14174 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
 
 
 echo $ac_n "checking for ssize_t""... $ac_c" 1>&6
-echo "configure:14457: checking for ssize_t" >&5
+echo "configure:14206: checking for ssize_t" >&5
 if eval "test \"\${ac_cv_type_ssize_t+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14462 "configure"
+#line 14211 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
@@ -14489,12 +14238,12 @@ EOF
 fi
 
 echo $ac_n "checking for caddr_t""... $ac_c" 1>&6
-echo "configure:14493: checking for caddr_t" >&5
+echo "configure:14242: checking for caddr_t" >&5
 if eval "test \"\${ac_cv_type_caddr_t+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14498 "configure"
+#line 14247 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #if STDC_HEADERS
 
 
 echo $ac_n "checking for socklen_t""... $ac_c" 1>&6
-echo "configure:14530: checking for socklen_t" >&5
+echo "configure:14279: checking for socklen_t" >&5
 if eval "test \"\${ol_cv_type_socklen_t+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14535 "configure"
+#line 14284 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_SYS_TYPES_H
@@ -14545,7 +14294,7 @@ int main() {
 socklen_t len;
 ; return 0; }
 EOF
-if { (eval echo configure:14549: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:14298: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ol_cv_type_socklen_t=yes
 else
@@ -14566,12 +14315,12 @@ EOF
   fi
  
 echo $ac_n "checking for member st_blksize in aggregate type struct stat""... $ac_c" 1>&6
-echo "configure:14570: checking for member st_blksize in aggregate type struct stat" >&5
+echo "configure:14319: checking for member st_blksize in aggregate type struct stat" >&5
 if eval "test \"\${ac_cv_c_struct_member_st_blksize+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14575 "configure"
+#line 14324 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/stat.h>
@@ -14579,7 +14328,7 @@ int main() {
 struct stat foo; foo.st_blksize;
 ; return 0; }
 EOF
-if { (eval echo configure:14583: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:14332: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_c_struct_member_st_blksize=yes
 else
@@ -14601,12 +14350,12 @@ EOF
 fi
 
 echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6
-echo "configure:14605: checking whether time.h and sys/time.h may both be included" >&5
+echo "configure:14354: checking whether time.h and sys/time.h may both be included" >&5
 if eval "test \"\${ac_cv_header_time+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14610 "configure"
+#line 14359 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/time.h>
@@ -14615,7 +14364,7 @@ int main() {
 struct tm *tp;
 ; return 0; }
 EOF
-if { (eval echo configure:14619: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:14368: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_header_time=yes
 else
@@ -14636,12 +14385,12 @@ EOF
 fi
 
 echo $ac_n "checking whether struct tm is in sys/time.h or time.h""... $ac_c" 1>&6
-echo "configure:14640: checking whether struct tm is in sys/time.h or time.h" >&5
+echo "configure:14389: checking whether struct tm is in sys/time.h or time.h" >&5
 if eval "test \"\${ac_cv_struct_tm+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14645 "configure"
+#line 14394 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <time.h>
@@ -14649,7 +14398,7 @@ int main() {
 struct tm *tp; tp->tm_sec;
 ; return 0; }
 EOF
-if { (eval echo configure:14653: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:14402: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_struct_tm=time.h
 else
@@ -14670,12 +14419,12 @@ EOF
 fi
 
 echo $ac_n "checking for uid_t in sys/types.h""... $ac_c" 1>&6
-echo "configure:14674: checking for uid_t in sys/types.h" >&5
+echo "configure:14423: checking for uid_t in sys/types.h" >&5
 if eval "test \"\${ac_cv_type_uid_t+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14679 "configure"
+#line 14428 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 EOF
@@ -14704,19 +14453,19 @@ EOF
 fi
 
 echo $ac_n "checking for sig_atomic_t""... $ac_c" 1>&6
-echo "configure:14708: checking for sig_atomic_t" >&5
+echo "configure:14457: checking for sig_atomic_t" >&5
 if eval "test \"\${ol_cv_type_sig_atomic_t+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14713 "configure"
+#line 14462 "configure"
 #include "confdefs.h"
 #include <signal.h>
 int main() {
 sig_atomic_t atomic;
 ; return 0; }
 EOF
-if { (eval echo configure:14720: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:14469: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ol_cv_type_sig_atomic_t=yes
 else
@@ -14740,13 +14489,13 @@ EOF
 
 # test for pw_gecos in struct passwd
 echo $ac_n "checking struct passwd for pw_gecos""... $ac_c" 1>&6
-echo "configure:14744: checking struct passwd for pw_gecos" >&5
+echo "configure:14493: checking struct passwd for pw_gecos" >&5
 if eval "test \"\${ol_cv_struct_passwd_pw_gecos+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
        cat > conftest.$ac_ext <<EOF
-#line 14750 "configure"
+#line 14499 "configure"
 #include "confdefs.h"
 #include <pwd.h>
 int main() {
@@ -14756,7 +14505,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:14760: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:14509: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ol_cv_struct_passwd_pw_gecos=yes
 else
 
 # test for pw_passwd in struct passwd
 echo $ac_n "checking struct passwd for pw_passwd""... $ac_c" 1>&6
-echo "configure:14782: checking struct passwd for pw_passwd" >&5
+echo "configure:14531: checking struct passwd for pw_passwd" >&5
 if eval "test \"\${ol_cv_struct_passwd_pw_passwd+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
        cat > conftest.$ac_ext <<EOF
-#line 14788 "configure"
+#line 14537 "configure"
 #include "confdefs.h"
 #include <pwd.h>
 int main() {
@@ -14794,7 +14543,7 @@ int main() {
 
 ; return 0; }
 EOF
-if { (eval echo configure:14798: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:14547: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ol_cv_struct_passwd_pw_passwd=yes
 else
@@ -14816,7 +14565,7 @@ fi
 
 
 echo $ac_n "checking if toupper() requires islower()""... $ac_c" 1>&6
-echo "configure:14820: checking if toupper() requires islower()" >&5
+echo "configure:14569: checking if toupper() requires islower()" >&5
 if eval "test \"\${ol_cv_c_upper_lower+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -14825,7 +14574,7 @@ else
   ol_cv_c_upper_lower=safe
 else
   cat > conftest.$ac_ext <<EOF
-#line 14829 "configure"
+#line 14578 "configure"
 #include "confdefs.h"
 
 #include <ctype.h>
@@ -14837,7 +14586,7 @@ main()
                exit(1);
 }
 EOF
-if { (eval echo configure:14841: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:14590: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ol_cv_c_upper_lower=no
 else
@@ -14860,12 +14609,12 @@ EOF
 fi
 
 echo $ac_n "checking for working const""... $ac_c" 1>&6
-echo "configure:14864: checking for working const" >&5
+echo "configure:14613: checking for working const" >&5
 if eval "test \"\${ac_cv_c_const+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14869 "configure"
+#line 14618 "configure"
 #include "confdefs.h"
 
 int main() {
@@ -14914,7 +14663,7 @@ ccp = (char const *const *) p;
 
 ; return 0; }
 EOF
-if { (eval echo configure:14918: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:14667: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_c_const=yes
 else
@@ -14935,12 +14684,12 @@ EOF
 fi
 
 echo $ac_n "checking if compiler understands volatile""... $ac_c" 1>&6
-echo "configure:14939: checking if compiler understands volatile" >&5
+echo "configure:14688: checking if compiler understands volatile" >&5
 if eval "test \"\${ol_cv_c_volatile+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 14944 "configure"
+#line 14693 "configure"
 #include "confdefs.h"
 int x, y, z;
 int main() {
@@ -14949,7 +14698,7 @@ volatile int a; int * volatile b = x ? &y : &z;
       *b = 0;
 ; return 0; }
 EOF
-if { (eval echo configure:14953: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:14702: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ol_cv_c_volatile=yes
 else
@@ -14979,14 +14728,14 @@ EOF
 
 else
        echo $ac_n "checking whether byte ordering is bigendian""... $ac_c" 1>&6
-echo "configure:14983: checking whether byte ordering is bigendian" >&5
+echo "configure:14732: checking whether byte ordering is bigendian" >&5
 if eval "test \"\${ac_cv_c_bigendian+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   ac_cv_c_bigendian=unknown
 # See if sys/param.h defines the BYTE_ORDER macro.
 cat > conftest.$ac_ext <<EOF
-#line 14990 "configure"
+#line 14739 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/param.h>
@@ -14997,11 +14746,11 @@ int main() {
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:15001: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:14750: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   # It does; now see whether it defined to BIG_ENDIAN or not.
 cat > conftest.$ac_ext <<EOF
-#line 15005 "configure"
+#line 14754 "configure"
 #include "confdefs.h"
 #include <sys/types.h>
 #include <sys/param.h>
@@ -15012,7 +14761,7 @@ int main() {
 #endif
 ; return 0; }
 EOF
-if { (eval echo configure:15016: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:14765: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_c_bigendian=yes
 else
@@ -15032,7 +14781,7 @@ if test "$cross_compiling" = yes; then
     { echo "configure: error: can not run test program while cross compiling" 1>&2; exit 1; }
 else
   cat > conftest.$ac_ext <<EOF
-#line 15036 "configure"
+#line 14785 "configure"
 #include "confdefs.h"
 main () {
   /* Are we little or big endian?  From Harbison&Steele.  */
@@ -15045,7 +14794,7 @@ main () {
   exit (u.c[sizeof (long) - 1] == 1);
 }
 EOF
-if { (eval echo configure:15049: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:14798: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ac_cv_c_bigendian=no
 else
 fi
 
 echo $ac_n "checking size of short""... $ac_c" 1>&6
-echo "configure:15075: checking size of short" >&5 
+echo "configure:14824: checking size of short" >&5 
 if eval "test \"\${ac_cv_sizeof_short+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   for ac_size in 4 8 1 2 16  ; do # List sizes in rough order of prevalence. 
   cat > conftest.$ac_ext <<EOF
-#line 15081 "configure"
+#line 14830 "configure"
 #include "confdefs.h"
 #include "confdefs.h" 
 #include <sys/types.h> 
@@ -15087,7 +14836,7 @@ int main() {
 switch (0) case 0: case (sizeof (short) == $ac_size):;
 ; return 0; }
 EOF
-if { (eval echo configure:15091: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:14840: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_sizeof_short=$ac_size
 else
@@ -15110,13 +14859,13 @@ EOF
  
  
 echo $ac_n "checking size of int""... $ac_c" 1>&6
-echo "configure:15114: checking size of int" >&5 
+echo "configure:14863: checking size of int" >&5 
 if eval "test \"\${ac_cv_sizeof_int+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   for ac_size in 4 8 1 2 16  ; do # List sizes in rough order of prevalence. 
   cat > conftest.$ac_ext <<EOF
-#line 15120 "configure"
+#line 14869 "configure"
 #include "confdefs.h"
 #include "confdefs.h" 
 #include <sys/types.h> 
@@ -15126,7 +14875,7 @@ int main() {
 switch (0) case 0: case (sizeof (int) == $ac_size):;
 ; return 0; }
 EOF
-if { (eval echo configure:15130: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:14879: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_sizeof_int=$ac_size
 else
@@ -15149,13 +14898,13 @@ EOF
  
  
 echo $ac_n "checking size of long""... $ac_c" 1>&6
-echo "configure:15153: checking size of long" >&5 
+echo "configure:14902: checking size of long" >&5 
 if eval "test \"\${ac_cv_sizeof_long+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   for ac_size in 4 8 1 2 16  ; do # List sizes in rough order of prevalence. 
   cat > conftest.$ac_ext <<EOF
-#line 15159 "configure"
+#line 14908 "configure"
 #include "confdefs.h"
 #include "confdefs.h" 
 #include <sys/types.h> 
@@ -15165,7 +14914,7 @@ int main() {
 switch (0) case 0: case (sizeof (long) == $ac_size):;
 ; return 0; }
 EOF
-if { (eval echo configure:15169: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:14918: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ac_cv_sizeof_long=$ac_size
 else
@@ -15216,7 +14965,7 @@ EOF
 
 
 echo $ac_n "checking for 8-bit clean memcmp""... $ac_c" 1>&6
-echo "configure:15220: checking for 8-bit clean memcmp" >&5
+echo "configure:14969: checking for 8-bit clean memcmp" >&5
 if eval "test \"\${ac_cv_func_memcmp_clean+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
@@ -15224,7 +14973,7 @@ else
   ac_cv_func_memcmp_clean=no
 else
   cat > conftest.$ac_ext <<EOF
-#line 15228 "configure"
+#line 14977 "configure"
 #include "confdefs.h"
 
 main()
@@ -15234,7 +14983,7 @@ main()
 }
 
 EOF
-if { (eval echo configure:15238: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+if { (eval echo configure:14987: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
 then
   ac_cv_func_memcmp_clean=yes
 else
@@ -15252,12 +15001,12 @@ echo "$ac_t""$ac_cv_func_memcmp_clean" 1>&6
 test $ac_cv_func_memcmp_clean = no && LIBOBJS="$LIBOBJS memcmp.${ac_objext}"
 
 echo $ac_n "checking for strftime""... $ac_c" 1>&6
-echo "configure:15256: checking for strftime" >&5
+echo "configure:15005: checking for strftime" >&5
 if eval "test \"\${ac_cv_func_strftime+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15261 "configure"
+#line 15010 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char strftime(); below.  */
@@ -15281,7 +15030,7 @@ f = strftime;
 
 ; return 0; }
 EOF
-if { (eval echo configure:15285: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15034: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_strftime=yes"
 else
@@ -15303,7 +15052,7 @@ else
   echo "$ac_t""no" 1>&6
 # strftime is in -lintl on SCO UNIX.
 echo $ac_n "checking for strftime in -lintl""... $ac_c" 1>&6
-echo "configure:15307: checking for strftime in -lintl" >&5
+echo "configure:15056: checking for strftime in -lintl" >&5
 ac_lib_var=`echo intl'_'strftime | sed 'y%./+-:%__p__%'`
 if eval "test \"\${ac_cv_lib_$ac_lib_var+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
@@ -15311,7 +15060,7 @@ else
   ac_save_LIBS="$LIBS"
 LIBS="-lintl  $LIBS"
 cat > conftest.$ac_ext <<EOF
-#line 15315 "configure"
+#line 15064 "configure"
 #include "confdefs.h"
 /* Override any gcc2 internal prototype to avoid an error.  */
 /* We use char because int might match the return type of a gcc2
@@ -15322,7 +15071,7 @@ int main() {
 strftime()
 ; return 0; }
 EOF
-if { (eval echo configure:15326: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15075: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_lib_$ac_lib_var=yes"
 else
 
 
 echo $ac_n "checking for inet_aton()""... $ac_c" 1>&6
-echo "configure:15354: checking for inet_aton()" >&5
+echo "configure:15103: checking for inet_aton()" >&5
 if eval "test \"\${ol_cv_func_inet_aton+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15359 "configure"
+#line 15108 "configure"
 #include "confdefs.h"
 
 #ifdef HAVE_SYS_TYPES_H
@@ -15377,7 +15126,7 @@ struct in_addr in;
 int rc = inet_aton( "255.255.255.255", &in );
 ; return 0; }
 EOF
-if { (eval echo configure:15381: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15130: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_func_inet_aton=yes
 else
@@ -15399,12 +15148,12 @@ EOF
  
 
 echo $ac_n "checking for _spawnlp""... $ac_c" 1>&6
-echo "configure:15403: checking for _spawnlp" >&5
+echo "configure:15152: checking for _spawnlp" >&5
 if eval "test \"\${ac_cv_func__spawnlp+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15408 "configure"
+#line 15157 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char _spawnlp(); below.  */
@@ -15428,7 +15177,7 @@ f = _spawnlp;
 
 ; return 0; }
 EOF
-if { (eval echo configure:15432: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15181: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func__spawnlp=yes"
 else
 
 
 echo $ac_n "checking for _snprintf""... $ac_c" 1>&6
-echo "configure:15456: checking for _snprintf" >&5
+echo "configure:15205: checking for _snprintf" >&5
 if eval "test \"\${ac_cv_func__snprintf+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15461 "configure"
+#line 15210 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char _snprintf(); below.  */
@@ -15481,7 +15230,7 @@ f = _snprintf;
 
 ; return 0; }
 EOF
-if { (eval echo configure:15485: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15234: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func__snprintf=yes"
 else
 
 
 echo $ac_n "checking for _vsnprintf""... $ac_c" 1>&6
-echo "configure:15511: checking for _vsnprintf" >&5
+echo "configure:15260: checking for _vsnprintf" >&5
 if eval "test \"\${ac_cv_func__vsnprintf+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15516 "configure"
+#line 15265 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char _vsnprintf(); below.  */
@@ -15536,7 +15285,7 @@ f = _vsnprintf;
 
 ; return 0; }
 EOF
-if { (eval echo configure:15540: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15289: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func__vsnprintf=yes"
 else
 
 
 echo $ac_n "checking for vprintf""... $ac_c" 1>&6
-echo "configure:15566: checking for vprintf" >&5
+echo "configure:15315: checking for vprintf" >&5
 if eval "test \"\${ac_cv_func_vprintf+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15571 "configure"
+#line 15320 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char vprintf(); below.  */
@@ -15591,7 +15340,7 @@ f = vprintf;
 
 ; return 0; }
 EOF
-if { (eval echo configure:15595: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15344: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_vprintf=yes"
 else
 
 if test "$ac_cv_func_vprintf" != yes; then
 echo $ac_n "checking for _doprnt""... $ac_c" 1>&6
-echo "configure:15619: checking for _doprnt" >&5
+echo "configure:15368: checking for _doprnt" >&5
 if eval "test \"\${ac_cv_func__doprnt+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15624 "configure"
+#line 15373 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char _doprnt(); below.  */
@@ -15644,7 +15393,7 @@ f = _doprnt;
 
 ; return 0; }
 EOF
-if { (eval echo configure:15648: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15397: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func__doprnt=yes"
 else
@@ -15673,12 +15422,12 @@ if test $ac_cv_func_vprintf = yes ; then
                for ac_func in vsnprintf vsprintf
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:15677: checking for $ac_func" >&5
+echo "configure:15426: checking for $ac_func" >&5
 if eval "test \"\${ac_cv_func_$ac_func+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15682 "configure"
+#line 15431 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -15702,7 +15451,7 @@ f = $ac_func;
 
 ; return 0; }
 EOF
-if { (eval echo configure:15706: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15455: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -15781,12 +15530,12 @@ for ac_func in \
 
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:15785: checking for $ac_func" >&5
+echo "configure:15534: checking for $ac_func" >&5
 if eval "test \"\${ac_cv_func_$ac_func+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15790 "configure"
+#line 15539 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -15810,7 +15559,7 @@ f = $ac_func;
 
 ; return 0; }
 EOF
-if { (eval echo configure:15814: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15563: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
@@ -15838,12 +15587,12 @@ done
 for ac_func in getopt tempnam
 do
 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
-echo "configure:15842: checking for $ac_func" >&5
+echo "configure:15591: checking for $ac_func" >&5
 if eval "test \"\${ac_cv_func_$ac_func+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   cat > conftest.$ac_ext <<EOF
-#line 15847 "configure"
+#line 15596 "configure"
 #include "confdefs.h"
 /* System header to define __stub macros and hopefully few prototypes,
     which can conflict with char $ac_func(); below.  */
@@ -15867,7 +15616,7 @@ f = $ac_func;
 
 ; return 0; }
 EOF
-if { (eval echo configure:15871: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15620: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   eval "ac_cv_func_$ac_func=yes"
 else
 
 # Check Configuration
 echo $ac_n "checking declaration of sys_errlist""... $ac_c" 1>&6
-echo "configure:15908: checking declaration of sys_errlist" >&5
+echo "configure:15657: checking declaration of sys_errlist" >&5
 if eval "test \"\${ol_cv_dcl_sys_errlist+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
        cat > conftest.$ac_ext <<EOF
-#line 15914 "configure"
+#line 15663 "configure"
 #include "confdefs.h"
 
 #include <stdio.h>
@@ -15923,7 +15672,7 @@ int main() {
 char *c = (char *) *sys_errlist
 ; return 0; }
 EOF
-if { (eval echo configure:15927: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+if { (eval echo configure:15676: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
   rm -rf conftest*
   ol_cv_dcl_sys_errlist=yes
        ol_cv_have_sys_errlist=yes
@@ -15946,20 +15695,20 @@ EOF
 
 
        echo $ac_n "checking existence of sys_errlist""... $ac_c" 1>&6
-echo "configure:15950: checking existence of sys_errlist" >&5
+echo "configure:15699: checking existence of sys_errlist" >&5
 if eval "test \"\${ol_cv_have_sys_errlist+set}\" = set"; then
   echo $ac_n "(cached) $ac_c" 1>&6
 else
   
                cat > conftest.$ac_ext <<EOF
-#line 15956 "configure"
+#line 15705 "configure"
 #include "confdefs.h"
 #include <errno.h>
 int main() {
 char *c = (char *) *sys_errlist
 ; return 0; }
 EOF
-if { (eval echo configure:15963: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+if { (eval echo configure:15712: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
   rm -rf conftest*
   ol_cv_have_sys_errlist=yes
 else
@@ -16269,10 +16018,6 @@ if test "$ol_enable_slurpd" != no -a "$ol_link_threads" != no -a \
        BUILD_SLURPD=yes
 fi
 
-if test "$ol_link_isode" != no ; then
-       BUILD_LDAPD=yes
-fi
-
 
 if test "$LINK_BINS_DYNAMIC" = yes; then
     LIB_LINKAGE=DYN
@@ -16298,7 +16043,6 @@ fi
 
 
 
-
   
   
   
@@ -16436,7 +16180,6 @@ libraries/libldif/Makefile:build/top.mk:libraries/libldif/Makefile.in:build/lib.
 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 \
-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/back-bdb2/Makefile:build/top.mk:servers/slapd/back-bdb2/Makefile.in:build/mod.mk \
 servers/slapd/back-dnssrv/Makefile:build/top.mk:servers/slapd/back-dnssrv/Makefile.in:build/mod.mk \
@@ -16536,14 +16279,12 @@ s%@EXEEXT@%$EXEEXT%g
 s%@OBJEXT@%$OBJEXT%g
 s%@OL_MKDEP@%$OL_MKDEP%g
 s%@OL_MKDEP_FLAGS@%$OL_MKDEP_FLAGS%g
-s%@PEPSY@%$PEPSY%g
 s%@LIBOBJS@%$LIBOBJS%g
 s%@LIBSRCS@%$LIBSRCS%g
 s%@PLAT@%$PLAT%g
 s%@LIB_LINKAGE@%$LIB_LINKAGE%g
 s%@LT_LIB_LINKAGE@%$LT_LIB_LINKAGE%g
 s%@DYN_EXT@%$DYN_EXT%g
-s%@BUILD_LDAPD@%$BUILD_LDAPD%g
 s%@BUILD_SLAPD@%$BUILD_SLAPD%g
 s%@BUILD_BDB2@%$BUILD_BDB2%g
 s%@BUILD_DNSSRV@%$BUILD_DNSSRV%g
@@ -16566,9 +16307,9 @@ s%@BUILD_SQL_DYNAMIC@%$BUILD_SQL_DYNAMIC%g
 s%@BUILD_TCL_DYNAMIC@%$BUILD_TCL_DYNAMIC%g
 s%@BUILD_SLURPD@%$BUILD_SLURPD%g
 s%@LDAP_LIBS@%$LDAP_LIBS%g
-s%@LDAPD_LIBS@%$LDAPD_LIBS%g
 s%@LDIF_LIBS@%$LDIF_LIBS%g
 s%@SLAPD_LIBS@%$SLAPD_LIBS%g
+s%@QUIPU_LIBS@%$QUIPU_LIBS%g
 s%@SLURPD_LIBS@%$SLURPD_LIBS%g
 s%@LDBM_LIBS@%$LDBM_LIBS%g
 s%@LTHREAD_LIBS@%$LTHREAD_LIBS%g
@@ -16661,7 +16402,6 @@ libraries/libldif/Makefile:build/top.mk:libraries/libldif/Makefile.in:build/lib.
 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 \
-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/back-bdb2/Makefile:build/top.mk:servers/slapd/back-bdb2/Makefile.in:build/mod.mk \
 servers/slapd/back-dnssrv/Makefile:build/top.mk:servers/slapd/back-dnssrv/Makefile.in:build/mod.mk \
index 97dfb7401ad570f4d453426cd05a648a4b634b6e..87037a93c207cb7bf56a4db609d09b7d3398194c 100644 (file)
@@ -124,9 +124,6 @@ OL_ARG_WITH(yielding_select,[  --with-yielding-select       with implicitly yielding s
 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
@@ -430,11 +427,10 @@ LDBM_LIBS=
 LTHREAD_LIBS=
 LUTIL_LIBS=
 
-LDAPD_LIBS=
+QUIPU_LIBS=
 SLAPD_LIBS=
 SLURPD_LIBS=
 
-BUILD_LDAPD=no
 BUILD_SLAPD=no
 BUILD_SLURPD=no
 
@@ -829,39 +825,6 @@ elif test $ol_enable_dns != no ; then
 fi
 
 
-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)
-fi
-
 dnl ----------------------------------------------------------------
 dnl QUIPU
 if test $ol_enable_quipu != no ; then
@@ -2364,10 +2327,6 @@ if test "$ol_enable_slurpd" != no -a "$ol_link_threads" != no -a \
        BUILD_SLURPD=yes
 fi
 
-if test "$ol_link_isode" != no ; then
-       BUILD_LDAPD=yes
-fi
-
 dnl ----------------------------------------------------------------
 
 if test "$LINK_BINS_DYNAMIC" = yes; then
@@ -2393,7 +2352,6 @@ AC_SUBST(LIB_LINKAGE)
 AC_SUBST(LT_LIB_LINKAGE)
 AC_SUBST(DYN_EXT)
 
-AC_SUBST(BUILD_LDAPD)
 AC_SUBST(BUILD_SLAPD)
   AC_SUBST(BUILD_BDB2)
   AC_SUBST(BUILD_DNSSRV)
@@ -2417,9 +2375,9 @@ AC_SUBST(BUILD_SLAPD)
 AC_SUBST(BUILD_SLURPD)
 
 AC_SUBST(LDAP_LIBS)
-AC_SUBST(LDAPD_LIBS)
 AC_SUBST(LDIF_LIBS)
 AC_SUBST(SLAPD_LIBS)
+AC_SUBST(QUIPU_LIBS)
 AC_SUBST(SLURPD_LIBS)
 AC_SUBST(LDBM_LIBS)
 AC_SUBST(LTHREAD_LIBS)
@@ -2480,7 +2438,6 @@ libraries/libldif/Makefile:build/top.mk:libraries/libldif/Makefile.in:build/lib.
 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 \
-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/back-bdb2/Makefile:build/top.mk:servers/slapd/back-bdb2/Makefile.in:build/mod.mk \
 servers/slapd/back-dnssrv/Makefile:build/top.mk:servers/slapd/back-dnssrv/Makefile.in:build/mod.mk \
diff --git a/doc/man/man8/ldapd.8 b/doc/man/man8/ldapd.8
deleted file mode 100644 (file)
index cc06e13..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
-.TH LDAPD 8C "19 September 1999" "OpenLDAP LDVERSION"
-.\" $OpenLDAP$
-.\" Copyright 1998-2000 The OpenLDAP Foundation All Rights Reserved.
-.\" Copying restrictions apply.  See COPYRIGHT/LICENSE.
-.SH NAME
-ldapd \- LDAP X.500 Protocol Daemon
-.SH SYNOPSIS
-.B LIBEXECDIR/ldapd [\-d level] [\-l] [\-c dsaname]
-.B [\-p port] [\-t timeout] [\-r referraltimeout]
-.B [\-I] [\-U]
-.I (deprecated)
-.SH DESCRIPTION
-.LP
-.B Ldapd
-is the LDAP to X.500 gateway daemon.  The LDAP protocol is used to
-provide lightweight TCP/IP access to the X.500 Directory. The
-.B ldapd
-server is typically invoked at boot time, usually out of
-.BR  /etc/rc.local .
-Upon startup,
-.B ldapd
-normally forks and disassociates itself from the invoking tty, and then
-listens on port 389 for TCP connections from LDAP clients.
-The server performs the following basic operations for the client:
-.TP 14
-.B Bind
-Bind to the X.500 directory.  Currently only simple (clear-text password)
-and kerberos version 4 authentication are supported.
-.TP
-.B Search
-Search the X.500 directory for entries that match a given filter.
-The scope of the search can be base object, one level, or whole subtree.
-Note that the X.500 read and list can be emulated using search.
-.TP
-.B Modify
-Change the attributes and values of an existing X.500 entry.
-.TP
-.B Modify RDN
-Change the Relative Distinguished Name of an X.500 entry.
-.TP
-.B Add
-Add an entry to the X.500 directory.
-.TP
-.B Remove
-Remove an entry from the X.500 directory.
-.TP
-.B Abandon
-Abort an operation in progress.
-.LP
-See
-.BR ldap (3)
-for details on client-side access to the ldap server.  See
-.I RFC 1777: Lightweight Directory Access Protocol
-and
-.I RFC 1778: The String Representation of
-.I Standard Attribute Syntaxes
-for details of the protocol supporting the above operations.
-.SH OPTIONS
-.TP
-.BI \-d " level"
-Turn on debugging as defined by
-.I level.
-If this option is specified,
-.I ldapd
-will not fork or disassociate from the invoking terminal.  Some general
-operation and status messages are printed for any value of \fIlevel\fP.
-\fIlevel\fP is taken as a bit string, with each bit corresponding to a
-different kind of debugging information.  See <ldap.h> for details.
-.TP
-.B \-l
-Enable logging of various status and errors to the LOG_LOCAL4 facility via
-.BR syslog (8).
-.TP
-.RB \-c " dsaname"
-Connect to the named DSA initially.  The
-.I dsaname
-given should be a name found in the local dsaptailor file or an
-actual presentation address.
-.TP
-.BI \-p " port"
-Listen on port
-.I port
-instead of the default port.  This is useful for debugging purposes.
-.TP
-.BI \-t " timeout"
-Specify the timeout value after which idle connections from
-clients are closed.
-.TP
-.BI \-r " referraltimeout"
-Specify the timeout value after which idle connections to DSAs
-are closed.
-.TP
-.B \-I
-Run from
-.BR inetd (8)
-instead of as a stand-alone daemon.
-.TP
-.B \-U
-Support Connectionless LDAP (CLDAP).  In this mode, ldapd listens for
-CLDAP search requests only on a UDP port, performs the search, and
-returns the result.  See
-.BR udp (4)
-for more information on UDP.
-.SH EXAMPLES
-To start ldapd and have it fork and detach from the terminal and connect
-to the first DSA listed in the dsaptailor file, just type:
-.LP
-.nf
-.ft tt
-       LIBEXECDIR/ldapd
-.ft
-.fi
-.LP
-To connect to an alternate DSA and turn on voluminous debugging which
-will be printed on standard error, type:
-.LP
-.nf
-.ft tt
-       LIBEXECDIR/ldapd -c dsanameoraddr -d 31
-.ft
-.fi
-.LP
-where dsanameoraddr is a presentation address or a name that appears
-in the local dsaptailor file.
-.SH "SEE ALSO"
-.BR ldap (3),
-.BR udp (4),
-.BR slapd (8)
-.BR inetd (8)
-.LP
-Volume 5 of The ISODE Manual
-.SH ACKNOWLEDGEMENTS
-.B     OpenLDAP
-is developed and maintained by The OpenLDAP Project (http://www.openldap.org/).
-.B     OpenLDAP
-is derived from University of Michigan LDAP 3.3 Release.  
index 335d22b90a1bbdc691adee368dd155e499e0cb27..0441995f49963c46141fc3b6ec846300c4d0a3da 100644 (file)
 /* define if you have res_search() */
 #undef HAVE_RES_SEARCH
 
-/* define if you have -lxttp */
-#undef HAVE_XTPP
-
-/* define if you have -ldsap */
-#undef HAVE_DSAP
-
-/* define if you have -lisode */
-#undef HAVE_ISODE
-
-/* define if you have -lpp */
-#undef HAVE_PP
-
 /* define if you have HEIMDAL Kerberos */
 #undef HAVE_HEIMDAL_KERBEROS
 
index 0773b8bfebfa50658825508a656b8aacf37c70a8..f44196330a3d832fc44a179967f235f30ab74846 100644 (file)
@@ -4,5 +4,5 @@
 ##
 ## servers Makefile.in for OpenLDAP
 
-SUBDIRS= ldapd slapd slurpd
+SUBDIRS= slapd slurpd
 
diff --git a/servers/ldapd/Makefile.in b/servers/ldapd/Makefile.in
deleted file mode 100644 (file)
index 9517826..0000000
+++ /dev/null
@@ -1,52 +0,0 @@
-# $OpenLDAP$
-##
-## Makefile.in for ldapd
-##
-PROGRAMS=ldapd
-XPROGRAMS=sldapd
-
-XSRCS  = version.c
-
-SRCS   = main.c request.c bind.c result.c error.c \
-       search.c util.c compare.c message.c add.c delete.c modrdn.c modify.c \
-       abandon.c syntax.c association.c kerberos.c certificate.c
-OBJS   = main.o request.o bind.o result.o error.o \
-       search.o util.o compare.o message.o add.o delete.o modrdn.o modify.o \
-       abandon.o syntax.o association.o kerberos.o LDAP_tables.o \
-       certificate.o
-
-LDAP_INCDIR= ../../include       
-LDAP_LIBDIR= ../../libraries
-
-BUILD_OPT = "--enable-ldapd"
-BUILD_SRV = @BUILD_LDAPD@
-
-all-local-srv:         ldapd
-
-XLIBS= -llber -llutil
-XXLIBS= $(LDAPD_LIBS) $(SECURITY_LIBS) $(LUTIL_LIBS)
-
-ldapd: version.o
-       $(LTLINK) -o $@ $(OBJS) version.o $(LIBS)
-
-sldapd:        version.o
-       $(LTLINK) -static -o $@ $(OBJS) version.o $(LIBS)
-
-version.c: $(OBJS) $(LDAP_LIBLBER_DEPEND)
-       $(RM) $@
-       $(MKVERSION) ldapd > $@
-
-request.o:     LDAP-types.h
-
-LDAP_tables.c: ldap.py
-       @if [ ! -z "$(PEPSY)" ]; then \
-           $(PEPSY) -A ldap.py; \
-       else \
-           touch LDAP_tables.c LDAP-types.h; \
-       fi
-
-LDAP-types.h: LDAP_tables.c
-
-install-local-srv: FORCE
-       -$(MKDIR) $(DESTDIR)$(libexecdir)
-       $(LTINSTALL) $(INSTALLFLAGS) -s -m 755 ldapd $(DESTDIR)$(libexecdir)
diff --git a/servers/ldapd/README b/servers/ldapd/README
deleted file mode 100644 (file)
index 5fb15f1..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-LDAPD is no longer supported nor actively maintained.
-This code may suffer from bitrot.
diff --git a/servers/ldapd/abandon.c b/servers/ldapd/abandon.c
deleted file mode 100644 (file)
index 0488593..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-/* $OpenLDAP$ */
-/*
- * Copyright (c) 1990 Regents of the University of Michigan.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that this notice is preserved and that due credit is given
- * to the University of Michigan at Ann Arbor. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission. This software
- * is provided ``as is'' without express or implied warranty.
- */
-
-#include "portable.h"
-
-#include <stdio.h>
-
-#include <ac/socket.h>
-
-#include <quipu/commonarg.h>
-#include <quipu/attrvalue.h>
-#include <quipu/ds_error.h>
-#include <quipu/abandon.h>
-#include <quipu/dap2.h>
-#include <quipu/dua.h>
-
-#include "lber.h"
-#include "ldap.h"
-#include "common.h"
-
-int
-do_abandon(
-    struct conn        *dsaconn,
-    BerElement *ber,
-    int                msgid
-)
-{
-       int                     id;
-       struct ds_abandon_arg   aa;
-       struct DAPindication    di;
-
-       Debug( LDAP_DEBUG_TRACE, "do_abandon\n", 0, 0 ,0 );
-
-       /*
-        * Parse the abandon request.  It looks like this:
-        *      AbandonRequest := MessageID
-        */
-
-       if ( ber_scanf( ber, "i", &id ) == LBER_ERROR ) {
-               Debug( LDAP_DEBUG_ANY, "ber_scanf failed\n", 0, 0 ,0 );
-               return( 0 );
-       }
-
-       Debug( LDAP_DEBUG_ARGS, "do_abandin: id %d\n", id, 0 ,0 );
-
-       aa.aba_invokeid = id;
-
-       Debug( LDAP_DEBUG_TRACE, "DapAbandon...\n", 0, 0 ,0 );
-       if ( DapAbandon( dsaconn->c_ad, msgid, &aa, &di, ROS_ASYNC )
-           == NOTOK ) {
-               Debug( LDAP_DEBUG_ANY, "DapAbandon failed\n", 0, 0 ,0 );
-               return( 0 );
-       }
-       Debug( LDAP_DEBUG_TRACE, "DapAbandon completed\n", 0, 0 ,0 );
-
-       return( 0 );
-}
diff --git a/servers/ldapd/add.c b/servers/ldapd/add.c
deleted file mode 100644 (file)
index c6ad418..0000000
+++ /dev/null
@@ -1,128 +0,0 @@
-/* $OpenLDAP$ */
-/*
- * Copyright (c) 1990 Regents of the University of Michigan.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that this notice is preserved and that due credit is given
- * to the University of Michigan at Ann Arbor. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission. This software
- * is provided ``as is'' without express or implied warranty.
- */
-
-#include "portable.h"
-
-#include <stdio.h>
-
-#include <ac/socket.h>
-
-#include <quipu/commonarg.h>
-#include <quipu/attrvalue.h>
-#include <quipu/ds_error.h>
-#include <quipu/add.h>
-#include <quipu/dap2.h>
-#include <quipu/dua.h>
-#include "lber.h"
-#include "ldap.h"
-#include "common.h"
-
-#ifdef LDAP_COMPAT20
-#define ADDTAG (ldap_compat == 20 ? OLD_LDAP_RES_ADD : LDAP_RES_ADD)
-#else
-#define ADDTAG LDAP_RES_ADD
-#endif
-
-int
-do_add(
-    Sockbuf    *clientsb,
-    struct msg *m,
-    BerElement *ber
-)
-{
-       char                            *dn;
-       char                            *type, *last;
-       struct berval                   **bvals;
-       int                             rc;
-       unsigned long                   tag, len;
-       struct ds_addentry_arg          aa;
-       static CommonArgs               common = default_common_args;
-
-       Debug( LDAP_DEBUG_TRACE, "do_add\n", 0, 0, 0 );
-
-       /*
-        * Parse the add request.  It looks like this:
-        *      AddRequest := [APPLICATION 14] SEQUENCE {
-        *              name    DistinguishedName,
-        *              attrs   SEQUENCE OF SEQUENCE {
-        *                      type    AttributeType,
-        *                      values  SET OF AttributeValue
-        *              }
-        *      }
-        */
-
-#if ISODEPACKAGE == IC
-#if ICRELEASE > 2
-       DAS_AddEntryArgument_INIT ( &aa );
-#endif
-#endif
-
-       if ( ber_scanf( ber, "{a", &dn ) == LBER_ERROR ) {
-               Debug( LDAP_DEBUG_ANY, "ber_scanf failed\n", 0, 0, 0 );
-               send_ldap_msgresult( clientsb, ADDTAG, m,
-                   LDAP_PROTOCOL_ERROR, NULL, "" );
-               return( 0 );
-       }
-
-       Debug( LDAP_DEBUG_ARGS, "do_add: dn (%s)\n", dn, 0, 0 );
-
-       aa.ada_object = ldap_str2dn( dn );
-       free( dn );
-       if ( aa.ada_object == NULLDN ) {
-               Debug( LDAP_DEBUG_ANY, "ldap_str2dn failed\n", 0, 0, 0 );
-               send_ldap_msgresult( clientsb, ADDTAG, m,
-                   LDAP_INVALID_DN_SYNTAX, NULL, "" );
-               return( 0 );
-       }
-
-       /* break out once we read them all, or return out on error */
-       aa.ada_entry = NULLATTR;
-       for ( tag = ber_first_element( ber, &len, &last ); tag != LBER_DEFAULT;
-           tag = ber_next_element( ber, &len, last ) ) {
-               Attr_Sequence   as;
-
-               if ( ber_scanf( ber, "{a{V}}", &type, &bvals ) == LBER_ERROR )
-                       break;
-
-               if ( (as = get_as( clientsb, LDAP_RES_ADD, m, type,
-                   bvals )) == NULLATTR )
-                       return( 0 );
-
-               aa.ada_entry = as_merge( aa.ada_entry, as );
-       }
-
-       aa.ada_common = common; /* struct copy */
-
-       rc = initiate_dap_operation( OP_ADDENTRY, m, &aa );
-
-       dn_free( aa.ada_object );
-       as_free( aa.ada_entry );
-
-       if ( rc != 0 ) {
-               send_ldap_msgresult( clientsb, ADDTAG, m, rc, NULL, "" );
-               return( 0 );
-       }
-
-       return( 1 );
-}
-
-void
-add_result(
-    Sockbuf    *sb,
-    struct msg *m
-)
-{
-       send_ldap_msgresult( sb, ADDTAG, m, LDAP_SUCCESS, NULL, "" );
-
-       return;
-}
diff --git a/servers/ldapd/association.c b/servers/ldapd/association.c
deleted file mode 100644 (file)
index d704851..0000000
+++ /dev/null
@@ -1,286 +0,0 @@
-/* $OpenLDAP$ */
-/*
- * Copyright (c) 1990 Regents of the University of Michigan.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that this notice is preserved and that due credit is given
- * to the University of Michigan at Ann Arbor. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission. This software
- * is provided ``as is'' without express or implied warranty.
- */
-
-#include "portable.h"
-
-#include <stdio.h>
-
-#include <ac/errno.h>
-#include <ac/socket.h>
-#include <ac/string.h>
-#include <ac/time.h>
-
-#include <quipu/commonarg.h>
-#include <quipu/ds_error.h>
-#include <quipu/dap.h>                 /* get dap_unbind() */
-#if ISODEPACKAGE == IC
-#include <ll/isoaddrs.h>
-#else
-#include <isoaddrs.h>
-#endif
-
-#include "lber.h"
-#include "ldap.h"
-#include "common.h"
-
-#ifdef HAVE_SYS_IOCTL_H 
-#include <sys/ioctl.h>
-#endif
-#ifdef HAVE_SYS_FILIO_H 
-#include <sys/filio.h>
-#endif
-
-#ifdef __hpux
-#define FIOGETOWN      FIOGSAIOOWN
-#endif
-
-struct conn    *conns;
-
-struct conn *
-conn_dup( struct conn *cn )
-{
-       struct conn     *new;
-       if ( (new = (struct conn *) malloc( sizeof(struct conn) )) == NULL )
-               return( NULL );
-
-       *new = *cn;
-       new->c_next = NULL;
-       new->c_time = 0L;
-       new->c_paddr = psap_cpy( cn->c_paddr );
-       new->c_dn = strdup( cn->c_dn );
-       if ( new->c_credlen > 0 ) {
-               new->c_cred = (char *) malloc( cn->c_credlen );
-               SAFEMEMCPY( new->c_cred, cn->c_cred, cn->c_credlen );
-       } else {
-               new->c_cred = "";
-       }
-       new->c_credlen = cn->c_credlen;
-       new->c_refcnt = 1;
-
-       return( new );
-}
-
-int
-conn_init( void )
-{
-       struct PSAPaddr *addr;
-
-       if ( (conns = (struct conn *) malloc( sizeof(struct conn) )) == NULL ) {
-               Debug( LDAP_DEBUG_ANY, "conn_init: malloc failed\n", 0, 0, 0 );
-               return( -1 );
-       }
-
-       conns->c_ad = -1;
-       conns->c_dn = NULL;
-       conns->c_cred = NULL;
-       conns->c_credlen = 0;
-
-       if ( dsa_address == NULL || (addr = str2paddr( dsa_address ))
-           == NULLPA ) {
-               conns->c_paddr = NULLPA;
-               Debug( LDAP_DEBUG_ANY, "conn_init: bad DSA address (%s)\n",
-                   dsa_address ? dsa_address : "NULL", 0, 0 );
-       } else {
-           conns->c_paddr = psap_cpy( addr );
-       }
-
-       conns->c_refcnt = 1;    /* this conn is never deleted */
-       conns->c_next = NULL;
-
-       return( 0 );
-}
-
-void
-conn_free( struct conn *conn )
-{
-       struct timeval  tv;
-
-       Debug( LDAP_DEBUG_TRACE, "conn_free (%s): refcnt is %d\n",
-           paddr2str( conn->c_paddr, NULLNA ), conn->c_refcnt, 0 );
-
-       if ( --conn->c_refcnt > 0 )
-               return;
-
-       gettimeofday( &tv, (struct timezone *)NULL );
-       if ( conn->c_time != 0L && (tv.tv_sec - conn->c_time)
-           < referral_connection_timeout ) {
-               Debug( LDAP_DEBUG_TRACE, "conn_free: referral conn ttl is %d\n",
-                   referral_connection_timeout - (tv.tv_sec - conn->c_time),
-                   0, 0 );
-               return;
-       }
-
-
-       conn_del( conn );
-
-       if ( conn->c_paddr )
-               free( (char *) conn->c_paddr );
-       if ( conn->c_dn )
-               free( conn->c_dn );
-       if ( conn->c_credlen > 0 )
-               free( conn->c_cred );
-       free( conn );
-}
-
-void
-conn_del( struct conn *conn )
-{
-       struct conn     *tmp, *prev;
-
-       Debug( LDAP_DEBUG_TRACE, "conn_del (%s)\n",
-           paddr2str( conn->c_paddr, NULLNA ), 0, 0 );
-
-       prev = NULL;
-       for ( tmp = conns; tmp != NULL; tmp = tmp->c_next ) {
-               if ( tmp == conn )
-                       break;
-               prev = tmp;
-       }
-
-       if ( tmp == NULL ) {
-               Debug( LDAP_DEBUG_ANY, "conn_del: cannot find conn\n", 0, 0,
-                   0 );
-               return;
-       }
-
-       if ( prev == NULL ) {
-               conns = conns->c_next;  /* delete head of list */
-       } else {
-               prev->c_next = tmp->c_next;
-       }
-}
-
-void
-conn_setfds( fd_set *fds )
-{
-       struct conn     *tmp;
-
-       for ( tmp = conns; tmp != NULL; tmp = tmp->c_next ) {
-               if ( tmp->c_ad != -1 )
-                       FD_SET( tmp->c_ad, fds );
-       }
-}
-
-void
-conn_badfds( void )
-{
-       struct conn     *tmp;
-
-       for ( tmp = conns; tmp != NULL; tmp = tmp->c_next ) {
-               if ( isclosed( tmp->c_ad ) ) {
-                       Debug( LDAP_DEBUG_ANY, "conn_badfds: fd %d is bad\n",
-                           tmp->c_ad, 0, 0 );
-                       tmp->c_ad = -1;
-               }
-       }
-}
-
-struct conn *
-conn_getfd( fd_set *fds )
-{
-       struct conn     *tmp;
-
-       for ( tmp = conns; tmp != NULL; tmp = tmp->c_next ) {
-               if ( tmp->c_ad != -1 )
-                       if ( FD_ISSET( tmp->c_ad, fds ) )
-                               return( tmp );
-       }
-
-       return( NULL );
-}
-
-void
-conn_add( struct conn *new )
-{
-       struct timeval  tv;
-
-#ifdef LDAP_DEBUG
-       if ( ldap_debug & LDAP_DEBUG_CONNS ) {
-               char    *str;
-
-               str = paddr2str( new->c_paddr, NULLNA );
-               Debug( LDAP_DEBUG_CONNS, "conn_add: (%s)\n", str, 0, 0 );
-       }
-#endif
-
-       gettimeofday( &tv, (struct timezone *)NULL );
-       new->c_time = tv.tv_sec;
-       new->c_next = conns;
-       new->c_refcnt = 1;
-       conns = new;
-}
-
-static int
-psap_cmp( struct PSAPaddr *a, struct PSAPaddr *b )
-{
-       return( bcmp( (char *) a, (char *) b, sizeof(struct PSAPaddr) ) );
-}
-
-struct conn *
-conn_find( struct conn *c )
-{
-       struct conn     *tmp;
-
-#ifdef LDAP_DEBUG
-       if ( ldap_debug & LDAP_DEBUG_CONNS ) {
-               char    *str;
-
-               str = paddr2str( c->c_paddr, NULLNA );
-               Debug( LDAP_DEBUG_CONNS, "conn_find: (%s)\n", str, 0, 0 );
-       }
-#endif
-       for ( tmp = conns; tmp != NULL; tmp = tmp->c_next ) {
-#ifdef LDAP_DEBUG
-               if ( ldap_debug & LDAP_DEBUG_CONNS ) {
-                       char    *str;
-
-                       str = paddr2str( tmp->c_paddr, NULLNA );
-                       Debug( LDAP_DEBUG_CONNS, "conn_find: compare to (%s)\n",
-                           str, 0, 0 );
-               }
-#endif
-               if ( psap_cmp( tmp->c_paddr, c->c_paddr ) == 0
-                   && strcmp( tmp->c_dn, c->c_dn ) == 0
-                   && tmp->c_credlen == c->c_credlen
-                   && bcmp( tmp->c_cred, c->c_cred, c->c_credlen ) == 0 ) {
-                       Debug( LDAP_DEBUG_CONNS, "conn_find: found\n", 0,
-                           0, 0 );
-                       return( tmp );
-               }
-       }
-
-       Debug( LDAP_DEBUG_CONNS, "conn_find: not found\n", 0, 0, 0 );
-       return( NULL );
-}
-
-void
-conn_close( void )
-{
-       struct conn     *tmp;
-
-       for ( tmp = conns; tmp != NULL; tmp = tmp->c_next ) {
-               if ( tmp->c_ad != -1 )
-                       dap_unbind( tmp->c_ad );
-       }
-}
-
-int
-isclosed( int ad )
-{
-       int             o;
-
-       if ( ioctl( ad, FIOGETOWN, &o ) < 0 )
-               return( errno == EBADF ? 1 : 0 );
-       else
-               return( 0 );
-}
diff --git a/servers/ldapd/bind.c b/servers/ldapd/bind.c
deleted file mode 100644 (file)
index fee37d4..0000000
+++ /dev/null
@@ -1,270 +0,0 @@
-/* $OpenLDAP$ */
-/*
- * Copyright (c) 1990 Regents of the University of Michigan.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that this notice is preserved and that due credit is given
- * to the University of Michigan at Ann Arbor. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission. This software
- * is provided ``as is'' without express or implied warranty.
- */
-
-#include "portable.h"
-
-#include <stdio.h>
-
-#include <ac/socket.h>
-#include <ac/string.h>         /* get SAFEMEMCPY */
-
-#include <quipu/commonarg.h>
-#include <quipu/attrvalue.h>
-#include <quipu/ds_error.h>
-#include <quipu/bind.h>
-#include <quipu/compare.h>
-
-#include "lber.h"
-#include "ldap.h"
-#include "common.h"
-
-#ifdef LDAP_COMPAT20
-#define BINDTAG        (ldap_compat == 20 ? OLD_LDAP_RES_BIND : LDAP_RES_BIND)
-#else
-#define BINDTAG        LDAP_RES_BIND
-#endif
-
-/*
- * do_bind - perform an X.500 bind operation.  Since we always respond
- * to the request in here, always return 0 to signify the incoming message
- * can be discarded.
- */
-
-int
-do_bind( 
-    Sockbuf    *clientsb,
-    struct msg *m,
-    BerElement *ber,
-    int                *bound
-)
-{
-       int             err;
-       unsigned long   method;
-       unsigned long   len;
-       char            *dn, *pw;
-       char            *matched;
-       struct PSAPaddr *addr;
-
-       Debug( LDAP_DEBUG_TRACE, "do_bind\n", 0, 0, 0 );
-
-       /*
-        * Parse the bind request.  It looks like this:
-        *      BindRequest ::= SEQUENCE {
-        *              version         INTEGER,                 -- version
-        *              name            DistinguishedName,       -- dn
-        *              authentication  CHOICE {
-        *                      simple          [0] OCTET STRING -- passwd
-        *                      krbv42ldap      [1] OCTET STRING
-        *                      krbv42dsa       [1] OCTET STRING
-        *              }
-        *      }
-        */
-
-       if ( ber_scanf( ber, "{ia", &version, &dn ) == LBER_ERROR ) {
-               Debug( LDAP_DEBUG_ANY, "ber_scanf failed\n", 0, 0, 0 );
-               send_ldap_msgresult( clientsb, BINDTAG, m,
-                   LDAP_PROTOCOL_ERROR, NULL, "Decoding error" );
-               return( 0 );
-       }
-#ifdef LDAP_COMPAT30
-       if ( ldap_compat == 30 )
-               method = ber_skip_tag( ber, &len );
-       else
-#endif
-               method = ber_peek_tag( ber, &len );
-
-       if ( ber_scanf( ber, "la}", &len, &pw ) == LBER_ERROR ) {
-               Debug( LDAP_DEBUG_ANY, "ber_scanf2 failed\n", 0, 0, 0 );
-               send_ldap_msgresult( clientsb, BINDTAG, m,
-                   LDAP_PROTOCOL_ERROR, NULL, "Decoding error" );
-               return( 0 );
-       }
-
-       if ( version != LDAP_VERSION1 && version != LDAP_VERSION2 ) {
-               Debug( LDAP_DEBUG_ANY, "unknown version %d\n", version, 0, 0 );
-               send_ldap_msgresult( clientsb, BINDTAG, m,
-                   LDAP_PROTOCOL_ERROR, NULL, "Version not supported" );
-               return( 0 );
-       }
-
-       Debug( LDAP_DEBUG_ARGS, "do_bind: version %d dn (%s) method %lu\n",
-           version, dn, method );
-
-       if ( m->m_conn->c_paddr == NULLPA ) {
-               char    buf[256];
-
-               sprintf( buf, "Bad DSA address (%s)", dsa_address ?
-                   dsa_address : "NULL" );
-               send_ldap_msgresult( clientsb, BINDTAG, m,
-                   LDAP_OPERATIONS_ERROR, NULL, buf );
-               return( 0 );
-       }
-
-       if ( m->m_conn->c_dn )
-               free( m->m_conn->c_dn );
-       if ( m->m_conn->c_cred )
-               free( m->m_conn->c_cred );
-       m->m_conn->c_dn = dn;
-       m->m_conn->c_cred = pw;
-       m->m_conn->c_credlen = len;
-       m->m_conn->c_method = method;
-
-       err = do_bind_real( m->m_conn, bound, &matched );
-
-       send_ldap_msgresult( clientsb, BINDTAG, m, err, matched, "" );
-
-       if ( matched != NULL )
-               free( matched );
-
-       return( 0 );
-}
-
-int
-do_bind_real(
-    struct conn        *dsaconn,
-    int                *bound,
-    char       **matched
-)
-{
-       struct ds_bind_arg      ba;
-       struct ds_bind_arg      br;
-       struct ds_bind_error    be;
-       struct DSError          dse;
-       char                    *dn = dsaconn->c_dn;
-       int                     err;
-#ifdef LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND
-       u_long                  nonce;
-#endif
-       Debug( LDAP_DEBUG_TRACE, "do_bind_real\n", 0, 0, 0 );
-
-       *matched = NULL;
-       if ( (ba.dba_dn = ldap_str2dn( dn )) == NULLDN && *dn != '\0' ) {
-               Debug( LDAP_DEBUG_ANY, "ldap_str2dn (%s) failed\n", dn, 0, 0 );
-               return( LDAP_INVALID_DN_SYNTAX );
-       }
-
-       switch ( dsaconn->c_method ) {
-#ifdef LDAP_COMPAT20
-       case OLD_LDAP_AUTH_SIMPLE:
-#endif
-#ifdef LDAP_COMPAT30
-       case LDAP_AUTH_SIMPLE_30:
-#endif
-       case LDAP_AUTH_SIMPLE:  /* x.500 simple authentication */
-               if ( dsaconn->c_credlen > DBA_MAX_PASSWD_LEN ) {
-                       Debug( LDAP_DEBUG_ANY, "Password too long\n", 0, 0, 0 );
-                       return( LDAP_INAPPROPRIATE_AUTH );
-               }
-               if (( ba.dba_passwd_len = dsaconn->c_credlen ) > 0 ) {
-                       SAFEMEMCPY( ba.dba_passwd, dsaconn->c_cred,
-                           ba.dba_passwd_len );
-                       ba.dba_auth_type = DBA_AUTH_SIMPLE;
-               } else {
-                       ba.dba_auth_type = DBA_AUTH_NONE;
-               }
-               ba.dba_version = DBA_VERSION_V1988;
-               break;
-
-#ifdef LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND
-#ifdef LDAP_COMPAT20
-       case OLD_LDAP_AUTH_KRBV4:
-#endif
-#ifdef LDAP_COMPAT30
-       case LDAP_AUTH_KRBV41_30:
-#endif
-       case LDAP_AUTH_KRBV41:  /* kerberos authentication to ldap server */
-               return( kerberosv4_ldap_auth( dsaconn->c_cred,
-                   dsaconn->c_credlen ) );
-               break;
-
-#ifdef LDAP_COMPAT20
-       case OLD_LDAP_AUTH_KRBV42:
-#endif
-#ifdef LDAP_COMPAT30
-       case LDAP_AUTH_KRBV42_30:
-#endif
-       case LDAP_AUTH_KRBV42:  /* kerberos authentication to x500 dsa */
-               if ( (err = kerberosv4_bindarg( &ba, ba.dba_dn, dsaconn->c_cred,
-                   dsaconn->c_credlen, &nonce )) != 0 )
-                       return( err );
-               break;
-#endif
-
-       default:
-               return( LDAP_PROTOCOL_ERROR );
-               break;
-       }
-
-       if ( dsaconn->c_ad != -1 )
-               dap_unbind( dsaconn->c_ad );
-
-       Debug( LDAP_DEBUG_TRACE, "dap_bind to dsa (%s)...\n", paddr2str(
-           dsaconn->c_paddr, NULLNA ), 0, 0 );
-
-       err = dap_bind( &dsaconn->c_ad, &ba, &be, &br, dsaconn->c_paddr );
-
-       if ( err != DS_OK && ba.dba_dn != NULLDN && ba.dba_auth_type
-           == DBA_AUTH_NONE && be.dbe_type == DBE_TYPE_SECURITY ) {
-               /* if doing a NULL bind, retry with a NULL dn */
-               Debug( LDAP_DEBUG_TRACE, "retring NULL dap_bind\n", 0, 0, 0 );
-               dn_free( ba.dba_dn );
-               ba.dba_dn = NULLDN;
-               err = dap_bind( &dsaconn->c_ad, &ba, &be, &br,
-                   dsaconn->c_paddr );
-       }
-
-       if ( err != DS_OK ) {
-               if ( ba.dba_dn != NULLDN )
-                       dn_free( ba.dba_dn );
-
-               if ( be.dbe_type == DBE_TYPE_SERVICE ) {
-                       dse.dse_type = DSE_SERVICEERROR;
-                       dse.ERR_SERVICE.DSE_sv_problem = be.dbe_value;
-               } else if ( be.dbe_type == DBE_TYPE_SECURITY ) {
-                       dse.dse_type = DSE_SECURITYERROR;
-                       dse.ERR_SECURITY.DSE_sc_problem = be.dbe_value;
-               } else {
-                       dse.dse_type = DSE_REMOTEERROR;
-               }
-               err = x500err2ldaperr( &dse, matched );
-
-#ifdef LDAP_DEBUG
-               if ( ldap_debug )
-                       print_error( &dse );    /* prints and then frees */
-               else
-#endif
-                       ds_error_free( &dse );
-
-               dsaconn->c_ad = -1;
-
-               return( err );
-       }
-       bind_arg_free( &br );
-
-       Debug( LDAP_DEBUG_TRACE, "dap_bind successful\n", 0, 0, 0 );
-
-#ifdef LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND
-/* XXX why doesn't this work??
-       if ( dsaconn->c_method == LDAP_AUTH_KRBV42 &&
-           kerberos_check_mutual( &br, nonce ) != 0 ) {
-               Debug( LDAP_DEBUG_ANY, "Mutual authentication failed\n", 0, 0,
-                   0 );
-               return( LDAP_INVALID_CREDENTIALS );
-       }
-*/
-#endif
-
-       *bound = 1;
-
-       return( LDAP_SUCCESS );
-}
diff --git a/servers/ldapd/certificate.c b/servers/ldapd/certificate.c
deleted file mode 100644 (file)
index 5903046..0000000
+++ /dev/null
@@ -1,321 +0,0 @@
-/* $OpenLDAP$ */
-/*
- * certificate.c - ldap version of quipu certificate syntax handler
- *                donated by Eric Rosenquist and BNR
- */
-
-#include "portable.h"
-
-#include <stdio.h>
-
-#include <ac/ctype.h>
-#include <ac/socket.h>
-#include <ac/string.h>
-
-#include <quipu/commonarg.h>
-#include <quipu/attrvalue.h>
-#include <quipu/ds_error.h>
-#include <quipu/ds_search.h>
-#include <quipu/dap2.h>
-#include <quipu/dua.h>
-extern sntx_table *get_syntax_table( short int sntx );
-extern PE asn2pe( char * );
-
-#include "lber.h"
-#include "ldap.h"
-#include "common.h"
-
-int
-ldap_certif_print( PS ps, struct certificate *parm, int format )
-{
-       Debug( LDAP_DEBUG_TRACE, "ldap_certif_print()\n", 0, 0, 0 );
-
-/*
- *     An ldap certificate looks like this:
- *
- *     <certificate> ::= <version> '#' <serial> '#' <signature-algorithm-id>
- *                  '#' <issuer> '#' <validity> '#' <subject>
- *                  '#' <public-key-info> '#' <encrypted-sign-value>
- *     <version> ::= <integervalue>
- *     <serial> ::= <integervalue>
- *     <signature-algorithm-id> ::= <algorithm-id>
- *     <issuer> ::= an encoded Distinguished Name
- *     <validity> ::= <not-before-time> '#' <not-after-time>
- *     <not-before-time> ::= <utc-time>
- *     <not-after-time> ::= <utc-time>
- *     <algorithm-parameters> ::=  <null> | <integervalue> |
- *                              '{ASN}' <hex-string>
- *     <subject> ::= an encoded Distinguished Name
- *     <public-key-info> ::= <algorithm-id> '#' <encrypted-sign-value>
- *     <encrypted-sign-value> ::= <hex-string> | <hex-string> '-' <d>
- *     <algorithm-id> ::= <oid> '#' <algorithm-parameters>
- *     <utc-time> ::= an encoded UTCTime value
- *     <hex-string> ::= <hex-digit> | <hex-digit> <hex-string>
- */
-
-        ps_printf(ps, "%d#%d#", parm->version, parm->serial);
-
-        ldap_print_algid(ps, &(parm->sig.alg), format);
-
-        dn_print_real(ps, parm->issuer, format);
-        ps_printf(ps, "#");
-
-        utcprint(ps, parm->valid.not_before, format);
-        ps_printf(ps, "#");
-        utcprint(ps, parm->valid.not_after, format);
-        ps_printf(ps, "#");
-
-        dn_print_real(ps, parm->subject, format);
-        ps_printf(ps, "#");
-
-        ldap_print_algid(ps, &(parm->key.alg), format);
-        print_encrypted(ps, parm->key.value, parm->key.n_bits, format);
-
-        print_encrypted(ps, parm->sig.encrypted, parm->sig.n_bits, format);
-}
-
-void
-ldap_print_algid( PS ps, struct alg_id *parm, int format )
-{
-  ps_printf(ps, "%s#", oid2name (parm->algorithm, OIDPART));
-
-  switch(parm->p_type) {
-     case ALG_PARM_ABSENT:
-       if(parm->asn != NULLPE)
-             pe_print(ps, parm->asn, format);
-       ps_printf(ps, "#");
-       break;
-     case ALG_PARM_NUMERIC:
-       if (format == READOUT)
-         ps_printf(ps, "%d#", parm->un.numeric);
-       else
-         ps_printf(ps, "%d#", parm->un.numeric);
-       break;
-      default:
-       if (format == READOUT)
-       {
-         if ((parm->asn->pe_class == PE_CLASS_UNIV)
-           &&(parm->asn->pe_form  == PE_FORM_PRIM)
-           &&(parm->asn->pe_id    == PE_PRIM_INT))
-           ps_printf(ps, "%d", prim2num(parm->asn));
-         else if ((parm->asn->pe_class == PE_CLASS_UNIV)
-           &&(parm->asn->pe_form  == PE_FORM_PRIM)
-           &&(parm->asn->pe_id    == PE_PRIM_NULL))
-           ps_printf(ps, "NULL");
-         else
-         {
-           vpushquipu (ps);
-           vunknown(parm->asn);
-           vpopquipu ();
-         }
-       }
-       else
-       {
-        /* This routine will print a {ASN} prefix */
-         pe_print(ps, parm->asn, format);
-       }
-       ps_printf(ps, "#");
-   }
-}
-
-struct certificate *
-ldap_str2cert( char *str )
-{
-struct certificate *result;
-char *ptr;
-OID oid;
-
-  Debug( LDAP_DEBUG_TRACE, "ldap_str2cert(%s)\n", str, 0, 0 );
-
-  result = (struct certificate *) calloc(1, sizeof(*result));
-
-  /* version */
-  ptr = strchr(str, '#');
-  if (ptr == NULLCP)
-  {
-    parse_error("version not present",NULLCP);
-    cert_free(result);
-    return (struct certificate *) 0;
-  }
-  *ptr++ = '\0';
-  result->version = atoi(str);
-
-  /* serial number */
-  str = ptr;
-  ptr = strchr(str, '#');
-  if (ptr == NULLCP)
-  {
-    parse_error("serial number not present",NULLCP);
-    cert_free(result);
-    return (struct certificate *) 0;
-  }
-  *ptr++ = '\0';
-  result->serial = atoi(str);
-
-  /* signature algorithm id - oid */
-  str = ptr;
-  ptr = strchr(str, '#');
-  if (ptr == NULLCP)
-  {
-    parse_error("signature algorithm id not present",NULLCP);
-    cert_free(result);
-    return (struct certificate *) 0;
-  }
-  *ptr++ = '\0';
-  oid = name2oid(SkipSpace(str));
-  if (oid == NULLOID)
-  {
-    parse_error("Bad algorithm identifier (SIGNED Value)",NULLCP);
-    cert_free(result);
-    return (struct certificate *) 0;
-  }
-  result->sig.alg.algorithm = oid;
-  result->alg.algorithm     = oid_cpy(oid);
-
-  /* signature algorithm id - parameters */
-  str = ptr;
-  ptr = strchr(str, '#');
-  if (ptr == NULLCP)
-  {
-    parse_error("algorithm id parameters not present",NULLCP);
-    cert_free(result);
-    return (struct certificate *) 0;
-  }
-  *ptr++ = '\0';
-  ldap_str2alg(str, &(result->sig.alg));
-  ldap_str2alg(str, &(result->alg));
-
-  /* issuer */
-  str = ptr;
-  ptr = strchr(str, '#');
-  if (ptr == NULLCP)
-  {
-    parse_error("Issuer not present",NULLCP);
-    cert_free(result);
-    return (struct certificate *) 0;
-  }
-  *ptr++ = '\0';
-  result->issuer = ldap_str2dn(str);
-
-  /* validity - not before */
-  str = ptr;
-  ptr = strchr(str, '#');
-  if (ptr == NULLCP)
-  {
-    parse_error("Start time not present",NULLCP);
-    cert_free(result);
-    return (struct certificate *) 0;
-  }
-  *ptr++ = '\0';
-  result->valid.not_before = strdup(str);
-
-  /* validity - not after */
-  str = ptr;
-  ptr = strchr(str, '#');
-  if (ptr == NULLCP)
-  {
-    parse_error("End time not present",NULLCP);
-    cert_free(result);
-    return (struct certificate *) 0;
-  }
-  *ptr++ = '\0';
-  result->valid.not_after = strdup(str);
-
-  /* subject */
-  str = ptr;
-  ptr = strchr(str, '#');
-  if (ptr == NULLCP)
-  {
-    parse_error("Subject not present",NULLCP);
-    cert_free(result);
-    return (struct certificate *) 0;
-  }
-  *ptr++ = '\0';
-  result->subject = ldap_str2dn(str);
-
-  /* public key info - algorithm id - oid */
-  str = ptr;
-  ptr = strchr(str, '#');
-  if (ptr == NULLCP)
-  {
-    parse_error("public key info algid oid not present",NULLCP);
-    cert_free(result);
-    return (struct certificate *) 0;
-  }
-  *ptr++ = '\0';
-  oid = name2oid(SkipSpace(str));
-  if (oid == NULLOID)
-  {
-    free((char*)result);
-    return (struct certificate *) 0;
-  }
-  result->key.alg.algorithm = oid;
-
-  /* public key info - algorithm id - parameters */
-  str = ptr;
-  ptr = strchr(str, '#');
-  if (ptr == NULLCP)
-  {
-    parse_error("Parameters not present (SIGNED Value)",NULLCP);
-    cert_free(result);
-    return (struct certificate *) 0;
-  }
-  *ptr++ = '\0';
-  ldap_str2alg(str, &(result->key.alg));
-
-  /* public key info - encrypted sign value */
-  str = ptr;
-  ptr = strchr(str, '#');
-  if (ptr == NULLCP)
-  {
-    parse_error("Signature not present",NULLCP);
-    cert_free(result);
-    return (struct certificate *) 0;
-  }
-  *ptr++ = '\0';
-  str2encrypted(str, &(result->key.value), &(result->key.n_bits));
-
-  /* encrypted sign value */
-  str = ptr;
-  str2encrypted(str, &(result->sig.encrypted), &(result->sig.n_bits));
-
-  return (result);
-}
-
-void
-ldap_str2alg( char *str, struct alg_id *alg )
-{
-  if ((str == NULLCP) || (*str == '\0'))
-   {
-     alg->asn = NULLPE;
-     alg->p_type = ALG_PARM_ABSENT;
-   }
-  else if (strncmp(str,"{ASN}", 5) == 0)
-    {
-      alg->asn = asn2pe((char*)str+5);
-      alg->p_type = ALG_PARM_UNKNOWN;
-    }
-  else if (strncmp(str, "NULL", 4) == 0)
-    {
-      alg->asn = asn2pe((char*)"0500");
-      alg->p_type = ALG_PARM_UNKNOWN;
-    }
-  else
-    {
-      alg->asn=NULLPE;
-      alg->p_type = ALG_PARM_NUMERIC;
-      alg->un.numeric = atoi(str);
-    }
-}
-
-void
-certif_init( void )
-{
-       sntx_table      *syntax_table;
-
-       if ((syntax_table = get_syntax_table(ldap_certif_syntax)) != NULL) {
-               syntax_table->s_print = (void *) ldap_certif_print;
-               syntax_table->s_parse = (void *) ldap_str2cert;
-       } else
-               fprintf(stderr, "error getting sntx table in certif_init()\n");
-}
diff --git a/servers/ldapd/common.h b/servers/ldapd/common.h
deleted file mode 100644 (file)
index d21fe38..0000000
+++ /dev/null
@@ -1,131 +0,0 @@
-/* $OpenLDAP$ */
-/*
- * Copyright (c) 1990 Regents of the University of Michigan.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that this notice is preserved and that due credit is given
- * to the University of Michigan at Ann Arbor. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission. This software
- * is provided ``as is'' without express or implied warranty.
- */
-
-#ifndef _LDAPD_COMMON_H
-#define _LDAPD_COMMON_H 1
-
-/*
- * This structure represents an association to a dsa.  There is one of
- * these for each association open (a new association is made for each
- * new dsa, and for each dn).
- */
-
-struct conn {
-       int             c_ad;           /* association descriptor */
-       char            *c_dn;          /* the dn this asoc is bound as */
-       char            *c_cred;        /* corresponding pw */
-       long            c_credlen;
-       unsigned long   c_method;
-       struct PSAPaddr *c_paddr;       /* the dsa address */
-       int             c_time;         /* time this association inited */
-       int             c_refcnt;       /* number of ops referencing this ad */
-       struct conn     *c_next;
-};
-
-/*
- * This structure represents a sequence of LDAPMod elements.
- */
-typedef struct LDAPModList {
-       LDAPMod                 m;
-       struct LDAPModList      *mod_next;
-} LDAPModList;
-
-
-/*
- * This structure represents an outstanding request.  There is one of
- * these for each client request for which we have not yet received a
- * response from a dsa.
- */
-
-struct msg {
-       int             m_msgid;        /* the message id */
-       int             m_uniqid;       /* unique id for this message */
-       int             m_msgtype;      /* the ldap operation type */
-       LDAPModList     *m_mods;        /* for modify operations only */
-       BerElement      *m_ber;         /* the unparsed ber for the op */
-       struct conn     *m_conn;        /* connection structure */
-#ifdef LDAP_CONNECTIONLESS
-       int             m_cldap;        /* connectionless transport? (CLDAP) */
-       struct sockaddr m_clientaddr;   /* client address (if using CLDAP) */
-       DN              m_searchbase;   /* base used in search */
-#endif /* LDAP_CONNECTIONLESS */
-       struct msg      *m_next;
-};
-
-#define DEFAULT_TIMEOUT                        3600    /* idle client connections */
-#define DEFAULT_REFERRAL_TIMEOUT       900     /* DSA connections */
-
-#include "proto-ldapd.h"
-#include "ldap_log.h"
-
-/* from ISODE */
-extern char    *dsa_address;
-extern char    *bound_dn, *bound_pw;
-struct PSAPaddr        *psap_cpy(struct PSAPaddr *);
-
-/* in association.c */
-extern struct conn     *conns;
-
-/* in main.c */
-#ifdef LDAP_DEBUG
-extern int     ldap_debug;
-#endif
-extern int     version;
-#ifdef LDAP_COMPAT
-extern int     ldap_compat;
-#endif
-extern int     dosyslog;
-extern int     do_tcp;
-#ifdef LDAP_CONNECTIONLESS
-extern int     do_udp;
-#endif
-extern int     idletime;
-extern int     referral_connection_timeout;
-extern struct timeval  conn_start_tv;
-#ifdef LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND
-extern char    *krb_ldap_service;
-extern char    *krb_x500_service;
-extern char    *krb_x500_instance;
-extern char    *krb_x500_nonce;
-extern char    *kerberos_keyfile;
-#endif
-
-/* syntax.c */
-extern short   ldap_photo_syntax;
-extern short   ldap_jpeg_syntax;
-extern short   ldap_jpeg_nonfile_syntax;
-extern short   ldap_audio_syntax;
-extern short   ldap_dn_syntax;
-extern short   ldap_postaladdress_syntax;
-extern short   ldap_acl_syntax;
-extern short   ldap_mtai_syntax;
-extern short   ldap_rts_cred_syntax;
-extern short   ldap_rtl_syntax;
-extern short   ldap_mailbox_syntax;
-extern short   ldap_caseignorelist_syntax;
-extern short   ldap_caseexactstring_syntax;
-extern short   ldap_certif_syntax;
-extern short   ldap_iattr_syntax;
-extern short   ldap_telex_syntax;
-extern short   ldap_octetstring_syntax;
-extern short   ldap_deliverymethod_syntax;
-extern short   ldap_facsimileTelephoneNumber_syntax;
-extern short   ldap_presentationAddress_syntax;
-extern short   ldap_teletexTerminalIdentifier_syntax;
-extern short   ldap_searchGuide_syntax;
-extern short   ldap_dLSubmitPermission_syntax;
-
-/* Version.c */
-extern char    Versionstr[];
-
-#endif
diff --git a/servers/ldapd/compare.c b/servers/ldapd/compare.c
deleted file mode 100644 (file)
index 721c892..0000000
+++ /dev/null
@@ -1,134 +0,0 @@
-/* $OpenLDAP$ */
-/*
- * Copyright (c) 1990 Regents of the University of Michigan.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that this notice is preserved and that due credit is given
- * to the University of Michigan at Ann Arbor. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission. This software
- * is provided ``as is'' without express or implied warranty.
- */
-
-#include "portable.h"
-
-#include <stdio.h>
-
-#include <ac/socket.h>
-
-#include <quipu/commonarg.h>
-#include <quipu/attrvalue.h>
-#include <quipu/ds_error.h>
-#include <quipu/compare.h>
-#include <quipu/dap2.h>
-#include <quipu/dua.h>
-
-#include "lber.h"
-#include "ldap.h"
-#include "common.h"
-
-#ifdef HAVE_COMPAT20
-#define COMPTAG        (ldap_compat == 20 ? OLD_LDAP_RES_COMPARE : LDAP_RES_COMPARE)
-#else
-#define COMPTAG        LDAP_RES_COMPARE
-#endif
-
-int
-do_compare( 
-    Sockbuf    *clientsb,
-    struct msg *m,
-    BerElement *ber
-)
-{
-       char                    *dn, *attr, *value;
-       int                     rc;
-       struct ds_compare_arg   ca;
-       AttributeType           type;
-       static CommonArgs       common = default_common_args;
-
-       Debug( LDAP_DEBUG_TRACE, "do_compare\n", 0, 0, 0 );
-
-       /*
-        * Parse the compare request.  It looks like this:
-        *      CompareRequest := [APPLICATION 14] SEQUENCE {
-        *              entry   DistinguishedName,
-        *              ava     SEQUENCE {
-        *                      type    AttributeType,
-        *                      value   AttributeValue
-        *              }
-        *      }
-        */
-
-#if ISODEPACKAGE == IC
-#if ICRELEASE > 2
-       DAS_CompareArgument_INIT ( &ca );
-#endif
-#endif
-
-       if ( ber_scanf( ber, "{a{aa}}", &dn, &attr, &value ) == LBER_ERROR ) {
-               Debug( LDAP_DEBUG_ANY, "ber_scanf failed\n", 0, 0, 0 );
-               send_ldap_msgresult( clientsb, COMPTAG, m,
-                   LDAP_PROTOCOL_ERROR, NULL, "" );
-               return( 0 );
-       }
-
-       Debug( LDAP_DEBUG_ARGS, "do_compare: dn (%s) attr (%s) value (%s)\n",
-           dn, attr, value );
-
-       ca.cma_object = ldap_str2dn( dn );
-       free( dn );
-       if ( ca.cma_object == NULLDN ) {
-               Debug( LDAP_DEBUG_ANY, "ldap_str2dn failed\n", 0, 0, 0 );
-               send_ldap_msgresult( clientsb, COMPTAG, m,
-                   LDAP_INVALID_DN_SYNTAX, NULL, "" );
-               return( 0 );
-       }
-
-       type = str2AttrT( attr );
-       if ( type == NULLAttrT ) {
-               Debug( LDAP_DEBUG_ANY, "str2AttrT failed\n", 0, 0, 0 );
-               send_ldap_msgresult( clientsb, COMPTAG, m,
-                   LDAP_UNDEFINED_TYPE, NULL, attr );
-               free( attr );
-               return( 0 );
-       }
-       free( attr );
-       ca.cma_purported.ava_type = type;
-
-       ca.cma_purported.ava_value = ldap_str2AttrV( value, type->oa_syntax );
-       free( value );
-       if ( ca.cma_purported.ava_value == NULLAttrV ) {
-               Debug( LDAP_DEBUG_ANY, "str2AttrV failed\n", 0, 0, 0 );
-               send_ldap_msgresult( clientsb, COMPTAG, m,
-                   LDAP_INVALID_SYNTAX, NULL, "" );
-               return( 0 );
-       }
-
-       ca.cma_common = common; /* struct copy */
-
-       rc = initiate_dap_operation( OP_COMPARE, m, &ca );
-
-       dn_free( ca.cma_object );
-       AttrV_free( ca.cma_purported.ava_value );
-
-       if ( rc != 0 ) {
-               send_ldap_msgresult( clientsb, COMPTAG, m, rc, NULL, "" );
-               return( 0 );
-       }
-
-       return( 1 );
-}
-
-void
-compare_result( 
-    Sockbuf                    *sb,
-    struct msg                 *m,
-    struct ds_compare_result   *cr
-)
-{
-       send_ldap_msgresult( sb, COMPTAG, m, cr->cmr_matched ?
-           LDAP_COMPARE_TRUE : LDAP_COMPARE_FALSE, NULL, "" );
-
-       return;
-}
diff --git a/servers/ldapd/delete.c b/servers/ldapd/delete.c
deleted file mode 100644 (file)
index c4a5da9..0000000
+++ /dev/null
@@ -1,112 +0,0 @@
-/* $OpenLDAP$ */
-/*
- * Copyright (c) 1990 Regents of the University of Michigan.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that this notice is preserved and that due credit is given
- * to the University of Michigan at Ann Arbor. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission. This software
- * is provided ``as is'' without express or implied warranty.
- */
-
-#include "portable.h"
-
-#include <stdio.h>
-/* ac/socket.h must precede ISODE #includes or p_type must be #undeffed
- * after it is included.  (Because ISODE uses p_type as a field name, and
- * SunOS 5.5:sys/vtype.h defines it (and ac/socket.h indirectly includes it) */
-#include <ac/socket.h>
-
-#include <quipu/commonarg.h>
-#include <quipu/attrvalue.h>
-#include <quipu/ds_error.h>
-#include <quipu/remove.h>
-#include <quipu/dap2.h>
-#include <quipu/dua.h>
-
-#include "lber.h"
-#include "ldap.h"
-#include "common.h"
-
-#ifdef HAVE_COMPAT20
-#define DELTAG (ldap_compat == 20 ? OLD_LDAP_RES_DELETE : LDAP_RES_DELETE)
-#else
-#define DELTAG LDAP_RES_DELETE
-#endif
-
-/*
- * do_delete - Initiate an X.500 remove entry operation.  Returns 1 if
- * the operation was initiated successfully, and thus a response will be
- * coming back from the DSA.  Returns 0 if there was trouble and thus no
- * DSA response is expected.
- */
-
-int
-do_delete( 
-    Sockbuf    *clientsb,
-    struct msg *m,
-    BerElement *ber
-)
-{
-       char                            *dn;
-       int                             rc;
-       struct ds_removeentry_arg       ra;
-       static CommonArgs               common = default_common_args;
-
-       Debug( LDAP_DEBUG_TRACE, "do_delete\n", 0, 0, 0 );
-
-       /*
-        * Parse the delete request.  It looks like this:
-        *      DelRequest := DistinguishedName
-        */
-
-#if ISODEPACKAGE == IC
-#if ICRELEASE > 2
-       DAS_RemoveEntryArgument_INIT( &ra );
-#endif
-#endif
-
-       if ( ber_scanf( ber, "a", &dn ) == LBER_ERROR ) {
-               Debug( LDAP_DEBUG_ANY, "ber_scanf failed\n", 0, 0, 0 );
-               send_ldap_msgresult( clientsb, DELTAG, m,
-                   LDAP_PROTOCOL_ERROR, NULL, "" );
-               return( 0 );
-       }
-
-       Debug( LDAP_DEBUG_ARGS, "do_delete: dn (%s)\n", dn, 0, 0 );
-
-       ra.rma_object = ldap_str2dn( dn );
-       free( dn );
-       if ( ra.rma_object == NULLDN ) {
-               Debug( LDAP_DEBUG_ANY, "ldap_str2dn failed\n", 0, 0, 0 );
-               send_ldap_msgresult( clientsb, DELTAG, m,
-                   LDAP_INVALID_DN_SYNTAX, NULL, "" );
-               return( 0 );
-       }
-
-       ra.rma_common = common; /* struct copy */
-
-       rc = initiate_dap_operation( OP_REMOVEENTRY, m, &ra );
-
-       dn_free( ra.rma_object );
-
-       if ( rc != 0 ) {
-               send_ldap_msgresult( clientsb, DELTAG, m, rc, NULL, "" );
-               return( 0 );
-       }
-
-       return( 1 );
-}
-
-void
-delete_result(
-    Sockbuf    *sb,
-    struct msg *m
-)
-{
-       send_ldap_msgresult( sb, DELTAG, m, LDAP_SUCCESS, NULL, "" );
-
-       return;
-}
diff --git a/servers/ldapd/error.c b/servers/ldapd/error.c
deleted file mode 100644 (file)
index bd15803..0000000
+++ /dev/null
@@ -1,196 +0,0 @@
-/* $OpenLDAP$ */
-/*
- * Copyright (c) 1990 Regents of the University of Michigan.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that this notice is preserved and that due credit is given
- * to the University of Michigan at Ann Arbor. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission. This software
- * is provided ``as is'' without express or implied warranty.
- */
-
-#include "portable.h"
-
-#include <stdio.h>
-
-#include <ac/ctype.h>
-#include <ac/socket.h>
-
-#include <quipu/ds_error.h>
-#include <quipu/attrvalue.h>
-#include <quipu/name.h>
-#include <quipu/commonarg.h>
-
-#include "lber.h"
-#include "ldap.h"
-#include "ldap_log.h"
-#include "common.h"                    /* get ldap_dn_print() */
-
-void
-print_error( struct DSError *e )
-{
-       PS      ps;
-
-        if ( (ps = ps_alloc( std_open )) == NULLPS ) {
-                fprintf( stderr, "error in ps_alloc\n" );
-                return;
-        }
-        if ( std_setup( ps, stderr ) == NOTOK ) {
-                fprintf( stderr, "error in std_setup = %d", ps->ps_errno );
-                return;
-        }
-
-       ds_error( ps, e );
-
-       ps_flush( ps );
-       ps_free( ps );
-}
-
-int
-x500err2ldaperr( struct DSError *e, char **matched )
-{
-       int             ldaperr = LDAP_OTHER;
-       static PS       ps;
-
-       Debug( LDAP_DEBUG_TRACE, "x500err2ldaperr\n", 0, 0, 0 );
-
-       *matched = NULL;
-       switch ( e->dse_type ) {
-       case DSE_ATTRIBUTEERROR:
-#if ISODEPACKAGE == IC || ISODEPACKAGE == XT
-               switch ( e->ERR_ATTRIBUTE.DSE_at_plist->DSE_at_what ) {
-#else
-               switch ( e->ERR_ATTRIBUTE.DSE_at_plist.DSE_at_what ) {
-#endif
-               case DSE_AT_NOSUCHATTRIBUTE:
-                       ldaperr = LDAP_NO_SUCH_ATTRIBUTE;
-                       break;
-               case DSE_AT_INVALIDATTRIBUTESYNTAX:
-                       ldaperr = LDAP_INVALID_SYNTAX;
-                       break;
-               case DSE_AT_UNDEFINEDATTRIBUTETYPE:
-                       ldaperr = LDAP_UNDEFINED_TYPE;
-                       break;
-               case DSE_AT_INAPPROPRIATEMATCHING:
-                       ldaperr = LDAP_INAPPROPRIATE_MATCHING;
-                       break;
-               case DSE_AT_CONSTRAINTVIOLATION:
-                       ldaperr = LDAP_CONSTRAINT_VIOLATION;
-                       break;
-               case DSE_AT_TYPEORVALUEEXISTS:
-                       ldaperr = LDAP_TYPE_OR_VALUE_EXISTS;
-                       break;
-               default:
-                       break;
-               }
-               break;
-
-       case DSE_NAMEERROR:
-               switch( e->ERR_NAME.DSE_na_problem ) {
-               case DSE_NA_NOSUCHOBJECT:
-                       ldaperr = LDAP_NO_SUCH_OBJECT;
-                       break;
-               case DSE_NA_ALIASPROBLEM:
-                       ldaperr = LDAP_ALIAS_PROBLEM;
-                       break;
-               case DSE_NA_INVALIDATTRIBUTESYNTAX:
-                       ldaperr = LDAP_INVALID_SYNTAX;
-                       break;
-               case DSE_NA_ALIASDEREFERENCE:
-                       ldaperr = LDAP_ALIAS_DEREF_PROBLEM;
-                       break;
-               default:
-                       break;
-               }
-
-               if ( e->ERR_NAME.DSE_na_matched == NULLDN ) {
-                       break;
-               }
-
-               if ( ps == NULL ) {
-                       ps = ps_alloc( str_open );
-                       str_setup( ps, NULLCP, 0, 0 );
-               }
-               ldap_dn_print( ps, e->ERR_NAME.DSE_na_matched, NULLDN, EDBOUT );
-               *ps->ps_ptr = '\0';
-
-               *matched = (char *) strdup( ps->ps_base );
-
-               ps->ps_ptr = ps->ps_base;
-               ps->ps_cnt = ps->ps_bufsiz;
-               break;
-
-       case DSE_SERVICEERROR:
-               switch( e->ERR_SERVICE.DSE_sv_problem ) {
-               case DSE_SV_BUSY:
-                       ldaperr = LDAP_BUSY;
-                       break;
-               case DSE_SV_UNAVAILABLE:
-                       ldaperr = LDAP_UNAVAILABLE;
-                       break;
-               case DSE_SV_UNWILLINGTOPERFORM:
-                       ldaperr = LDAP_UNWILLING_TO_PERFORM;
-                       break;
-               case DSE_SV_TIMELIMITEXCEEDED:
-                       ldaperr = LDAP_TIMELIMIT_EXCEEDED;
-                       break;
-               case DSE_SV_ADMINLIMITEXCEEDED:
-                       ldaperr = LDAP_SIZELIMIT_EXCEEDED;
-                       break;
-               case DSE_SV_LOOPDETECT:
-                       ldaperr = LDAP_LOOP_DETECT;
-                       break;
-               default:
-                       break;
-               }
-               break;
-
-       case DSE_SECURITYERROR:
-               switch( e->ERR_SECURITY.DSE_sc_problem ) {
-               case DSE_SC_AUTHENTICATION:
-                       ldaperr = LDAP_INAPPROPRIATE_AUTH;
-                       break;
-               case DSE_SC_INVALIDCREDENTIALS:
-                       ldaperr = LDAP_INVALID_CREDENTIALS;
-                       break;
-               case DSE_SC_ACCESSRIGHTS:
-                       ldaperr = LDAP_INSUFFICIENT_ACCESS;
-                       break;
-               default:
-                       break;
-               }
-               break;
-
-       case DSE_UPDATEERROR:
-               switch( e->ERR_UPDATE.DSE_up_problem ) {
-               case DSE_UP_NAMINGVIOLATION:
-                       ldaperr = LDAP_NAMING_VIOLATION;
-                       break;
-               case DSE_UP_OBJECTCLASSVIOLATION:
-                       ldaperr = LDAP_OBJECT_CLASS_VIOLATION;
-                       break;
-               case DSE_UP_NOTONNONLEAF:
-                       ldaperr = LDAP_NOT_ALLOWED_ON_NONLEAF;
-                       break;
-               case DSE_UP_NOTONRDN:
-                       ldaperr = LDAP_NOT_ALLOWED_ON_RDN;
-                       break;
-               case DSE_UP_ALREADYEXISTS:
-                       ldaperr = LDAP_ALREADY_EXISTS;
-                       break;
-               case DSE_UP_NOOBJECTCLASSMODS:
-                       ldaperr = LDAP_NO_OBJECT_CLASS_MODS;
-                       break;
-               default:
-                       break;
-               }
-               break;
-
-       default:
-               break;
-       }
-
-       return( ldaperr );
-}
diff --git a/servers/ldapd/kerberos.c b/servers/ldapd/kerberos.c
deleted file mode 100644 (file)
index 5ba88ae..0000000
+++ /dev/null
@@ -1,142 +0,0 @@
-/* $OpenLDAP$ */
-/*
- * Copyright (c) 1990 Regents of the University of Michigan.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that this notice is preserved and that due credit is given
- * to the University of Michigan at Ann Arbor. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission. This software
- * is provided ``as is'' without express or implied warranty.
- */
-
-#include "portable.h"
-
-#ifdef LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND
-
-#include <stdio.h>
-
-#include <ac/krb.h>
-#include <ac/socket.h>
-
-#include <quipu/bind.h>
-#if ISODEPACKAGE == IC
-#include <quipu/DAS-types.h>
-#else
-#include <pepsy/DAS-types.h>
-#endif
-
-#include "lber.h"
-#include "ldap.h"
-#include "common.h"
-
-int
-kerberosv4_ldap_auth( char *cred, long len )
-{
-       KTEXT_ST        k;
-       KTEXT           ktxt = &k;
-       char            instance[INST_SZ];
-       int             err;
-       AUTH_DAT        ad;
-
-       Debug( LDAP_DEBUG_TRACE, "kerberosv4_ldap_auth\n", 0, 0, 0 );
-
-       SAFEMEMCPY( ktxt->dat, cred, len );
-       ktxt->length = len;
-
-       strcpy( instance, "*" );
-       if ( (err = krb_rd_req( ktxt, krb_ldap_service, instance, 0L,
-           &ad, kerberos_keyfile )) != KSUCCESS ) {
-               Debug( LDAP_DEBUG_ANY, "krb_rd_req failed (%s)\n",
-                   krb_err_txt[err], 0, 0 );
-               return( LDAP_INVALID_CREDENTIALS );
-       }
-
-       return( LDAP_SUCCESS );
-}
-
-int
-kerberosv4_bindarg( 
-    struct ds_bind_arg *ba,
-    DN                 dn,
-    char               *cred,
-    long               len,
-    u_long             *nonce
-)
-{
-       struct type_UNIV_EXTERNAL       *e;
-       struct kerberos_parms           kp;
-       PE                              pe;
-       struct timeval                  tv;
-       char                            realm[REALM_SZ];
-       int                             err;
-
-       Debug( LDAP_DEBUG_TRACE, "kerberosv4_bindarg\n", 0, 0, 0 );
-
-       e = (struct type_UNIV_EXTERNAL *) calloc( 1,
-           sizeof(struct type_UNIV_EXTERNAL) );
-       e->encoding = (struct choice_UNIV_0 *) calloc( 1,
-           sizeof(struct choice_UNIV_0) );
-       ba->dba_external = e;
-       ba->dba_version = DBA_VERSION_V1988;
-       ba->dba_auth_type = DBA_AUTH_EXTERNAL;
-
-       e->indirect__reference = AUTH_TYPE_KERBEROS_V4;
-       e->direct__reference = NULLOID;
-       e->data__value__descriptor = str2qb( "KRBv4 client credentials",
-           24, 1 );
-
-       kp.kp_dn = dn;
-       kp.kp_version = AUTH_TYPE_KERBEROS_V4;
-
-       if ( (err = krb_get_lrealm( realm, 1 )) != KSUCCESS ) {
-               Debug( LDAP_DEBUG_ANY, "krb_get_lrealm failed (%s)\n",
-                   krb_err_txt[err], 0, 0 );
-               return( LDAP_OPERATIONS_ERROR );
-       }
-
-       gettimeofday( &tv, NULL );
-       *nonce = tv.tv_sec;
-       SAFEMEMCPY( kp.kp_ktxt.dat, cred, len );
-       kp.kp_ktxt.length = len;
-       if ( encode_kerberos_parms( &pe, &kp ) == NOTOK ) {
-               Debug( LDAP_DEBUG_ANY, "kerberos parms encoding failed\n", 0,
-                   0, 0 );
-               return( LDAP_OPERATIONS_ERROR );
-       }
-
-       e->encoding->offset = choice_UNIV_0_single__ASN1__type;
-       e->encoding->un.single__ASN1__type = pe;
-
-       return( 0 );
-}
-
-int
-kerberos_check_mutual(
-    struct ds_bind_arg *res,
-    u_long             nonce
-)
-{
-       struct type_UNIV_EXTERNAL       *e = res->dba_external;
-       struct kerberos_parms           *kp;
-       int                             ret;
-
-       Debug( LDAP_DEBUG_TRACE, "kerberos_check_mutual\n", 0, 0, 0 );
-
-       if ( decode_kerberos_parms( e->encoding->un.single__ASN1__type, &kp )
-           == NOTOK )
-               return( NOTOK );
-       ret = ((kp->kp_nonce == (nonce + 1)) ? OK : NOTOK );
-
-       Debug( LDAP_DEBUG_TRACE, "expecting %d got %d\n", nonce, kp->kp_nonce,
-           0 );
-
-       pe_free( e->encoding->un.single__ASN1__type );
-       dn_free( kp->kp_dn );
-       free( (char *) kp );
-
-       return( ret );
-}
-
-#endif
diff --git a/servers/ldapd/ldap.py b/servers/ldapd/ldap.py
deleted file mode 100644 (file)
index c578caa..0000000
+++ /dev/null
@@ -1,231 +0,0 @@
-LDAP DEFINITIONS IMPLICIT TAGS ::=
-
-PREFIXES encode decode print
-
-BEGIN
-
-LDAPMessage ::=
-    SEQUENCE {
-         messageID      MessageID,
-                        -- unique id in request,
-                        -- to be echoed in response(s)
-         protocolOp     CHOICE {
-                             searchRequest       SearchRequest,
-                             searchResponse      SearchResponse,
-                             modifyRequest       ModifyRequest,
-                             modifyResponse      ModifyResponse,
-                             addRequest          AddRequest,
-                             addResponse         AddResponse,
-                             delRequest          DelRequest,
-                             delResponse         DelResponse,
-                             modifyDNRequest     ModifyRDNRequest,
-                             modifyDNResponse    ModifyRDNResponse,
-                             compareDNRequest    CompareRequest,
-                             compareDNResponse   CompareResponse,
-                             bindRequest         BindRequest,
-                             bindResponse        BindResponse,
-                             abandonRequest      AbandonRequest,
-                             unbindRequest       UnbindRequest
-                        }
-    }
-
-BindRequest ::=
-    [APPLICATION 0] SEQUENCE {
-         version        INTEGER (1 .. 127),
-                        -- current version is 2
-         name           LDAPDN,
-                        -- null name implies an anonymous bind
-         authentication CHOICE {
-                             simple        [0] OCTET STRING,
-                                       -- a zero length octet string
-                                       -- implies an unauthenticated
-                                       -- bind.
-                             krbv42LDAP    [1] OCTET STRING,
-                             krbv42DSA     [2] OCTET STRING
-                                       -- values as returned by
-                                       -- krb_mk_req()
-                                       -- Other values in later
-                                       -- versions of this protocol.
-                        }
-    }
-
-BindResponse ::= [APPLICATION 1] LDAPResult
-
-UnbindRequest ::= [APPLICATION 2] NULL
-
-SearchRequest ::=
-    [APPLICATION 3] SEQUENCE {
-         baseObject     LDAPDN,
-         scope          ENUMERATED {
-                             baseObject            (0),
-                             singleLevel           (1),
-                             wholeSubtree          (2)
-                        },
-         derefAliases   ENUMERATED {
-                             neverDerefAliases     (0),
-                             derefInSearching      (1),
-                             derefFindingBaseObj   (2),
-                             alwaysDerefAliases    (3)
-                        },
-         sizeLimit      INTEGER (0 .. maxInt),
-                        -- value of 0 implies no sizelimit
-         timeLimit      INTEGER (0 .. maxInt),
-                        -- value of 0 implies no timelimit
-         attrsOnly     BOOLEAN,
-                        -- TRUE, if only attributes (without values)
-                        -- to be returned.
-         filter         Filter,
-         attributes     SEQUENCE OF AttributeType
-    }
-
-SearchResponse ::=
-    CHOICE {
-         entry          [APPLICATION 4] SEQUENCE {
-                             objectName     LDAPDN,
-                             attributes     SEQUENCE OF SEQUENCE {
-                                              AttributeType,
-                                              SET OF
-                                                AttributeValue
-                                            }
-                        },
-         resultCode     [APPLICATION 5] LDAPResult
-    }
-
-ModifyRequest ::=
-    [APPLICATION 6] SEQUENCE {
-         object         LDAPDN,
-         modifications  SEQUENCE OF SEQUENCE {
-                             operation     ENUMERATED {
-                                             add      (0),
-                                             delete   (1),
-                                             replace  (2)
-                                           },
-                             modification  SEQUENCE {
-                                             type     AttributeType,
-                                             values   SET OF
-                                                        AttributeValue
-                                           }
-                        }
-    }
-
-
-ModifyResponse ::= [APPLICATION 7] LDAPResult
-
-AddRequest ::=
-    [APPLICATION 8] SEQUENCE {
-         entry          LDAPDN,
-         attrs          SEQUENCE OF SEQUENCE {
-                             type          AttributeType,
-                             values        SET OF AttributeValue
-                        }
-    }
-
-AddResponse ::= [APPLICATION 9] LDAPResult
-
-DelRequest ::= [APPLICATION 10] LDAPDN
-
-DelResponse ::= [APPLICATION 11] LDAPResult
-
-ModifyRDNRequest ::=
-    [APPLICATION 12] SEQUENCE {
-         entry          LDAPDN,
-         newrdn         RelativeLDAPDN -- old RDN always deleted
-    }
-
-ModifyRDNResponse ::= [APPLICATION 13] LDAPResult
-
-CompareRequest ::=
-    [APPLICATION 14] SEQUENCE {
-         entry          LDAPDN,
-         ava            AttributeValueAssertion
-    }
-
-CompareResponse ::= [APPLICATION 15] LDAPResult
-
-AbandonRequest ::= [APPLICATION 16] MessageID
-
-MessageID ::= INTEGER (0 .. maxInt)
-
-LDAPDN ::= OCTET STRING
-
-RelativeLDAPDN ::= OCTET STRING
-
-Filter ::=
-    CHOICE {
-        and            [0] SET OF Filter,
-        or             [1] SET OF Filter,
-        not            [2] Filter,
-        equalityMatch  [3] AttributeValueAssertion,
-        substrings     [4] SubstringFilter,
-        greaterOrEqual [5] AttributeValueAssertion,
-        lessOrEqual    [6] AttributeValueAssertion,
-        present        [7] AttributeType,
-        approxMatch    [8] AttributeValueAssertion
-    }
-
-LDAPResult ::=
-    SEQUENCE {
-        resultCode    ENUMERATED {
-                        success                      (0),
-                        operationsError              (1),
-                        protocolError                (2),
-                        timeLimitExceeded            (3),
-                        sizeLimitExceeded            (4),
-                        compareFalse                 (5),
-                        compareTrue                  (6),
-                        authMethodNotSupported       (7),
-                        strongAuthRequired           (8),
-                        noSuchAttribute              (16),
-                        undefinedAttributeType       (17),
-                        inappropriateMatching        (18),
-                        constraintViolation          (19),
-                        attributeOrValueExists       (20),
-                        invalidAttributeSyntax       (21),
-                        noSuchObject                 (32),
-                        aliasProblem                 (33),
-                        invalidDNSyntax              (34),
-                        isLeaf                       (35),
-                        aliasDereferencingProblem    (36),
-                        inappropriateAuthentication  (48),
-                        invalidCredentials           (49),
-                        insufficientAccessRights     (50),
-                        busy                         (51),
-                        unavailable                  (52),
-                        unwillingToPerform           (53),
-                        loopDetect                   (54),
-                        namingViolation              (64),
-                        objectClassViolation         (65),
-                        notAllowedOnNonLeaf          (66),
-                        notAllowedOnRDN              (67),
-                        entryAlreadyExists           (68),
-                        objectClassModsProhibited    (69),
-                        other                        (80)
-                      },
-        matchedDN     LDAPDN,
-        errorMessage  OCTET STRING
-    }
-
-AttributeType ::= OCTET STRING
-                -- text name of the attribute, or dotted
-                -- OID representation
-
-AttributeValue ::= OCTET STRING
-
-AttributeValueAssertion ::=
-    SEQUENCE {
-        attributeType        AttributeType,
-        attributeValue       AttributeValue
-    }
-
-SubstringFilter ::=
-    SEQUENCE {
-        type               AttributeType,
-        SEQUENCE OF CHOICE {
-          initial          [0] OCTET STRING,
-          any              [1] OCTET STRING,
-          final            [2] OCTET STRING
-      }
-    }
-
-maxInt INTEGER ::= 65535
-END
diff --git a/servers/ldapd/main.c b/servers/ldapd/main.c
deleted file mode 100644 (file)
index 8d1d265..0000000
+++ /dev/null
@@ -1,726 +0,0 @@
-/* $OpenLDAP$ */
-/*
- * Copyright (c) 1990-1996 Regents of the University of Michigan.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that this notice is preserved and that due credit is given
- * to the University of Michigan at Ann Arbor. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission. This software
- * is provided ``as is'' without express or implied warranty.
- */
-/*
- * Some code fragments to run from inetd stolen from the University
- * of Minnesota gopher distribution, which had this copyright on it:
- *
- * Part of the Internet Gopher program, copyright (C) 1991
- * University of Minnesota Microcomputer Workstation and Networks Center
- */
-
-#include "portable.h"
-
-#include <stdio.h>
-
-#include <ac/signal.h>
-#include <ac/socket.h>
-#include <ac/string.h>
-#include <ac/syslog.h>
-#include <ac/time.h>
-#include <ac/unistd.h>
-#include <ac/wait.h>
-
-#ifdef LDAP_PROCTITLE
-#include <ac/setproctitle.h>
-#endif
-
-#include <quipu/commonarg.h>
-#include <quipu/ds_error.h>
-
-#include "lber.h"
-#include "ldap.h"
-#include "common.h"
-#include "lutil.h"             /* Get lutil_detach() */
-
-#ifdef HAVE_TCPD
-#include <tcpd.h>
-
-int allow_severity = LOG_INFO;
-int deny_severity = LOG_NOTICE;
-#endif /* TCP_WRAPPERS */
-
-static int     set_socket( int port, int udp );
-static void    do_queries( int clientsock, int udp );
-static RETSIGTYPE wait4child( int sig );
-#ifdef LDAP_CONNECTIONLESS
-static int     udp_init( int port, int createsocket );
-#endif
-
-#ifdef LDAP_DEBUG
-int    ldap_debug;
-#endif
-int    version;
-#ifdef LDAP_COMPAT
-int    ldap_compat;
-#endif
-int    dosyslog;
-int    do_tcp = 1;
-#ifdef LDAP_CONNECTIONLESS
-int    do_udp = 0;
-#endif
-int    idletime = DEFAULT_TIMEOUT;
-int    referral_connection_timeout = DEFAULT_REFERRAL_TIMEOUT;
-struct timeval conn_start_tv;
-#ifdef LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND
-char   *krb_ldap_service = "ldapserver";
-char   *krb_x500_service = "x500dsa";
-char   *krb_x500_instance;
-char   *krb_x500_nonce;
-char   *kerberos_keyfile;
-#endif
-
-int    dtblsize;
-int    RunFromInetd = 0;
-
-static void
-usage( char *name )
-{
-       fprintf( stderr, "usage: %s [-d debuglvl] [-p port] [-l] [-c dsa] [-r referraltimeout]", name );
-#ifdef LDAP_CONNECTIONLESS
-       fprintf( stderr, " [ -U | -t timeout ]" );
-#else
-       fprintf( stderr, " [ -t timeout ]" );
-#endif
-       fprintf( stderr, " [-I]" );
-#ifdef LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND
-       fprintf( stderr, " [-i dsainstance]" );
-#endif
-       fprintf( stderr, "\n" );
-}
-
-int
-main( int argc, char **argv )
-{
-       int                     tcps, ns;
-#ifdef LDAP_CONNECTIONLESS
-       int                     udps;
-#endif
-       int                     myport = LDAP_PORT;
-       int                     no_detach = 0;
-       int                     i, pid, socktype;
-       char                    *myname;
-       fd_set                  readfds;
-       struct hostent          *hp;
-       struct sockaddr_in      from;
-       socklen_t               len;
-       int                     dsapargc;
-       char                    **dsapargv;
-#ifdef LDAP_PROCTITLE
-       char                    title[80];
-#endif
-
-#ifdef VMS
-       /* Pick up socket from inetd-type server on VMS */
-       if ( (ns = socket_from_server( NULL )) > 0 )
-               RunFromInetd = 1;
-#else
-        /* Socket from inetd is usually 0 */
-        ns = 0;
-#endif
-
-       /* for dsap_init */
-        if ( (dsapargv = (char **) malloc( 4 * sizeof(char *) )) == NULL ) {
-                perror( "malloc" );
-                exit( 1 );
-        }
-        dsapargv[0] = argv[0];
-        dsapargv[1] = 0;
-        dsapargv[2] = 0;
-        dsapargv[3] = 0;
-        dsapargc = 1;
-#ifdef LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND
-       kerberos_keyfile = "";
-#endif
-
-       /* process command line arguments */
-       while ( (i = getopt( argc, argv, "d:lp:f:i:c:r:t:IuU" )) != EOF ) {
-               switch ( i ) {
-               case 'c':       /* specify dsa to contact */
-                       dsapargv[1] = "-call";
-                       dsapargv[2] = strdup( optarg );
-                       dsapargc = 3;
-                       break;
-
-               case 'd':       /* set debug level and 'do not detach' flag */
-                       no_detach = 1;
-#ifdef LDAP_DEBUG
-                       ldap_debug = atoi( optarg );
-                       if ( ldap_debug & LDAP_DEBUG_PACKETS )
-                               ber_set_option( NULL, LBER_OPT_DEBUG_LEVEL, &ldap_debug );
-#else
-                       if ( atoi( optarg ) != 0 )
-                               fputs( "Not compiled with -DLDAP_DEBUG!\n", stderr );
-#endif
-                       break;
-
-               case 'l':       /* do syslogging */
-                       dosyslog = 1;
-                       break;
-
-               case 'p':       /* specify port number */
-                       myport = atoi( optarg );
-                       break;
-
-               case 'r':       /* timeout for referral connections */
-                       referral_connection_timeout = atoi( optarg );
-                       break;
-
-               case 't':       /* timeout for idle connections */
-                       idletime = atoi( optarg );
-                       break;
-
-#ifdef LDAP_API_FEATURE_X_OPENLDAP_V2_KBIND
-               case 'f':       /* kerberos key file */
-                       kerberos_keyfile = strdup( optarg );
-                       break;
-
-               case 'i':       /* x500 dsa kerberos instance */
-                       if ( krb_x500_instance != NULL )
-                               free( krb_x500_instance );
-                       krb_x500_instance = strdup( optarg );
-                       break;
-#endif
-
-               case 'I':       /* Run from inetd */
-                       RunFromInetd = 1;
-                       break;
-
-#ifdef LDAP_CONNECTIONLESS
-               case 'U':       /* UDP only (no TCP) */
-                       do_tcp = 0;
-                       do_udp = 1;
-                       break;
-
-#ifdef NOTYET
-               case 'u':       /* allow UDP requests (CLDAP) */
-                       do_udp = 1;
-                       break;
-#endif /* NOTYET */
-
-#endif /* LDAP_CONNECTIONLESS */
-
-               default:
-                       usage( argv[0] );
-                       exit( 1 );
-               }
-       }
-
-       if ( optind < argc ) {
-               usage( argv[ 0 ] );
-               exit( 1 );
-       }
-
-#ifdef LDAP_CONNECTIONLESS
-       if ( do_udp && !do_tcp && idletime != DEFAULT_TIMEOUT ) {
-               usage( argv[ 0 ] );
-               exit( 1 );
-       }
-#endif
-
-       Debug( LDAP_DEBUG_TRACE, "%s", Versionstr, 0, 0 );
-
-#ifdef HAVE_SYSCONF
-       dtblsize = sysconf( _SC_OPEN_MAX );
-#elif HAVE_GETDTABLESIZE
-       dtblsize = getdtablesize();
-#else
-       dtblsize = FD_SETSIZE;
-#endif
-
-#ifdef FD_SETSIZE
-       if( dtblsize > FD_SETSIZE ) {
-               dtblsize = FD_SETSIZE;
-       }
-#endif /* FD_SETSIZE */
-
-#if defined(LDAP_PROCTITLE) && !defined( HAVE_SETPROCTITLE )
-       /* for setproctitle */
-       Argv = argv;
-       Argc = argc;
-#endif
-
-       if ( (myname = strrchr( argv[0], '/' )) == NULL )
-               myname = strdup( argv[0] );
-       else
-               myname = strdup( myname + 1 );
-
-       /* 
-        * detach from the terminal if stderr is redirected or no
-        * debugging is wanted, and then arrange to reap children
-        * that have exited
-        */
-       if (!RunFromInetd) {
-#ifdef LDAP_PROCTITLE
-               setproctitle( "initializing" );
-#endif
-#ifndef VMS
-               lutil_detach( no_detach, 1 );
-#endif
-               (void) SIGNAL( SIGCHLD, wait4child );
-               (void) SIGNAL( SIGINT, log_and_exit );
-       }
-
-       /* 
-        * set up syslogging (if desired)
-        */
-       if ( dosyslog ) {
-#ifdef LOG_LOCAL4
-               openlog( myname, OPENLOG_OPTIONS, LOG_LOCAL4 );
-#elif LOG_DEBUG
-               openlog( myname, OPENLOG_OPTIONS );
-#endif
-       }
-
-       /* 
-        * load the syntax handlers, oidtables, and initialize some stuff,
-        * then start listening
-        */
-
-       (void) quipu_syntaxes();
-#ifdef LDAP_USE_PP
-       (void) pp_quipu_init( argv[0] );
-#endif
-#if ISODEPACKAGE == IC
-#if ICRELEASE > 2
-       dsa_operation_syntaxes();
-#endif
-#endif
-       (void) dsap_init( &dsapargc, &dsapargv );
-       (void) get_syntaxes();
-       if (RunFromInetd) {
-               len = sizeof( socktype );
-               getsockopt( ns, SOL_SOCKET, SO_TYPE, (char *)&socktype, &len );
-               if ( socktype == SOCK_DGRAM ) {
-#ifdef LDAP_CONNECTIONLESS
-                       Debug( LDAP_DEBUG_ARGS,
-                           "CLDAP request from unknown (%s)\n",
-                           inet_ntoa( from.sin_addr ), 0, 0 );
-                       conn_start_tv.tv_sec = 0;
-                       udp_init( 0, 0 );
-                       do_queries( ns, 1 );
-#else /* LDAP_CONNECTIONLESS */
-                       Debug( LDAP_DEBUG_ARGS,
-                           "Compile with -DLDAP_CONNECTIONLESS for UDP support\n",0,0,0 );
-#endif /* LDAP_CONNECTIONLESS */
-                       exit( 0 );
-               }
-
-               len = sizeof(from);
-               if ( getpeername( ns, (struct sockaddr *) &from, &len )
-                   == 0 ) {
-                       hp = gethostbyaddr( (char *) &(from.sin_addr),
-                       sizeof(from.sin_addr), AF_INET );
-                       Debug( LDAP_DEBUG_ARGS, "connection from %s (%s)\n",
-                           (hp == NULL) ? "unknown" : hp->h_name,
-                           inet_ntoa( from.sin_addr ), 0 );
-
-                       if ( dosyslog ) {
-                               syslog( LOG_INFO, "connection from %s (%s)",
-                                   (hp == NULL) ? "unknown" : hp->h_name,
-                                   inet_ntoa( from.sin_addr ) );
-                       }
-
-#ifdef LDAP_PROCTITLE
-                       sprintf( title, "%s %d\n", hp == NULL ?
-                           inet_ntoa( from.sin_addr ) : hp->h_name, myport );
-                       setproctitle( title );
-#endif
-               }
-               gettimeofday( &conn_start_tv, (struct timezone *) NULL );
-               do_queries( ns, 0 );
-
-               exit( 0 );
-       }
-
-       if ( do_tcp )
-           tcps = set_socket( myport, 0 );
-
-#ifdef LDAP_CONNECTIONLESS
-       if ( do_udp )
-               udps = udp_init( myport, 1 );
-#endif
-
-       /*
-        * loop, wait for a connection, then fork off a child to handle it
-        * if we are doing CLDAP as well, handle those requests on the fly
-        */
-
-#ifdef LDAP_PROCTITLE
-#ifdef LDAP_CONNECTIONLESS
-        sprintf( title, "listening %s/%s %d", do_tcp ? "tcp" : "",
-            do_udp ? "udp" : "", myport );
-#else
-        sprintf( title, "listening %s %d", do_tcp ? "tcp" : "", myport );
-#endif
-       setproctitle( title );
-#endif
-
-       for ( ;; ) {
-               FD_ZERO( &readfds );
-               if ( do_tcp )
-                       FD_SET( tcps, &readfds );
-#ifdef LDAP_CONNECTIONLESS
-               if ( do_udp )
-                       FD_SET( udps, &readfds );
-#endif
-
-               if ( select( dtblsize, &readfds, 0, 0, 0 ) < 1 ) {
-#ifdef LDAP_DEBUG
-                       if ( ldap_debug ) perror( "main select" );
-#endif
-                       continue;
-               }
-
-#ifdef LDAP_CONNECTIONLESS
-               if ( do_udp && FD_ISSET( udps, &readfds ) ) {
-                       do_queries( udps, 1 );
-               }
-#endif
-
-               if ( !do_tcp || ! FD_ISSET( tcps, &readfds ) ) {
-                       continue;
-               }
-
-               len = sizeof(from);
-               if ( (ns = accept( tcps, (struct sockaddr *) &from, &len ))
-                   == -1 ) {
-#ifdef LDAP_DEBUG
-                       if ( ldap_debug ) perror( "accept" );
-#endif
-                       continue;
-               }
-
-               hp = gethostbyaddr( (char *) &(from.sin_addr),
-                   sizeof(from.sin_addr), AF_INET );
-
-#ifdef HAVE_TCPD
-               if ( !hosts_ctl("ldapd", (hp == NULL) ? "unknown" : hp->h_name,
-                       inet_ntoa( from.sin_addr ), STRING_UNKNOWN) ) {
-
-                       Debug( LDAP_DEBUG_ARGS, "connection from %s (%s) denied.\n",
-                               (hp == NULL) ? "unknown" : hp->h_name,
-                               inet_ntoa( from.sin_addr ), 0 );
-
-                       if ( dosyslog ) {
-                               syslog( LOG_NOTICE, "connection from %s (%s) denied.",
-                                   (hp == NULL) ? "unknown" : hp->h_name,
-                                   inet_ntoa( from.sin_addr ) );
-                       }
-
-                       tcp_close(ns);
-                       continue;
-               }
-#endif /* TCP_WRAPPERS */
-
-               Debug( LDAP_DEBUG_ARGS, "connection from %s (%s)\n",
-                   (hp == NULL) ? "unknown" : hp->h_name,
-                   inet_ntoa( from.sin_addr ), 0 );
-
-
-               if ( dosyslog ) {
-                       syslog( LOG_INFO, "connection from %s (%s)",
-                           (hp == NULL) ? "unknown" : hp->h_name,
-                           inet_ntoa( from.sin_addr ) );
-               }
-
-#ifdef VMS
-               /* This is for debug on terminal on VMS */
-               tcp_close( tcps );
-#ifdef LDAP_PROCTITLE
-               setproctitle( hp == NULL ? inet_ntoa( from.sin_addr ) :
-                   hp->h_name );
-#endif
-               gettimeofday( &conn_start_tv, (struct timezone *) NULL );
-               (void) SIGNAL( SIGPIPE, log_and_exit );
-
-               do_queries( ns, 0 );
-               /* NOT REACHED */
-#endif
-
-               switch( pid = fork() ) {
-               case 0:         /* child */
-                       tcp_close( tcps );
-#ifdef LDAP_PROCTITLE
-                        sprintf( title, "%s (%d)\n", hp == NULL ?
-                               inet_ntoa( from.sin_addr ) : hp->h_name,
-                               myport );
-                       setproctitle( title );
-#endif
-                       gettimeofday( &conn_start_tv, (struct timezone *) NULL );
-                       (void) SIGNAL( SIGPIPE, log_and_exit );
-
-                       do_queries( ns, 0 );
-                       break;
-
-               case -1:        /* failed */
-#ifdef LDAP_DEBUG
-                       if ( ldap_debug ) perror( "fork" );
-#endif
-                       tcp_close( ns );
-                       syslog( LOG_ERR, "fork failed %m" );
-                       /* let things cool off */
-                       sleep( 15 );
-                       break;
-
-               default:        /* parent */
-                       tcp_close( ns );
-                       Debug( LDAP_DEBUG_TRACE, "forked child %d\n", pid, 0,
-                           0 );
-                       break;
-               }
-       }
-       /* NOT REACHED */
-}
-
-static void
-do_queries(
-    int        clientsock,
-    int        udp             /* is this a UDP (CLDAP) request? */
-)
-{
-       fd_set          readfds;
-       int             rc;
-       struct timeval  timeout;
-       Sockbuf         *sb;
-#ifdef LDAP_CONNECTIONLESS
-       struct sockaddr saddr, faddr;
-       struct sockaddr *saddrlist[ 1 ];
-#endif /* LDAP_CONNECTIONLESS */
-
-       Debug( LDAP_DEBUG_TRACE, "do_queries%s\n",
-           udp ? " udp" : "", 0, 0 );
-
-       /*
-        * Loop, wait for a request from the client or a response from
-        * a dsa, then handle it.  Dsap_ad is always a connection to the
-        * "default" dsa.  Other connections can be made as a result of
-        * a referral being chased down.  These association descriptors
-        * are kept track of with the message that caused the referral.
-        * The set_dsa_fds() routine traverses the list of outstanding
-        * messages, setting the appropriate bits in readfds.
-        */
-
-       if ( !udp ) {
-               conn_init();
-       }
-
-       sb = ber_sockbuf_alloc( );
-       ber_sockbuf_add_io( sb, (udp) ? &ber_sockbuf_io_udp :
-               &ber_sockbuf_io_tcp, (void *)&clientsock );
-       timeout.tv_sec = idletime;
-       timeout.tv_usec = 0;
-       for ( ;; ) {
-               struct conn             *dsaconn;
-
-               FD_ZERO( &readfds );
-               FD_SET( clientsock, &readfds );
-               conn_setfds( &readfds );
-
-#ifdef LDAP_DEBUG
-               if ( ldap_debug & LDAP_DEBUG_CONNS ) {
-                       int i;
-                       Debug( LDAP_DEBUG_CONNS, "FDLIST:", 0, 0, 0 );
-                       for ( i = 0; i < dtblsize; i++ ) {
-                               if ( FD_ISSET( i, &readfds ) ) {
-                                       Debug( LDAP_DEBUG_CONNS, " %d", i, 0,
-                                           0);
-                               }
-                       }
-                       Debug( LDAP_DEBUG_CONNS, "\n", 0, 0, 0 );
-               }
-#endif
-
-               /* 
-                * hack - because of lber buffering, there might be stuff
-                * already waiting for us on the client sock.
-                */
-
-               if ( ! ber_sockbuf_ctrl( sb, LBER_SB_OPT_DATA_READY, NULL ) ) {
-                       if ( (rc = select( dtblsize, &readfds, 0, 0,
-                           udp ? 0 : &timeout )) < 1 ) {
-#ifdef LDAP_DEBUG
-                               if ( ldap_debug ) perror( "do_queries select" );
-#endif
-                               if ( rc == 0 )
-                                       log_and_exit( 0 ); /* idle timeout */
-
-                               Debug( LDAP_DEBUG_ANY, "select returns %d!\n",
-                                   rc, 0, 0 );
-
-                               /* client gone away - we can too */
-                               if ( isclosed( clientsock ) )
-                                       log_and_exit( 0 );
-
-                               /*
-                                * check if a dsa conn has gone away -
-                                * mark it bad if so
-                                */
-                               conn_badfds();
-
-                               continue;
-                       }
-               }
-
-               if ( ber_sockbuf_ctrl( sb, LBER_SB_OPT_DATA_READY, NULL ) ||
-                   FD_ISSET( clientsock, &readfds ) ) {
-                       client_request( sb, conns, udp );
-               } else {
-                       if ( (dsaconn = conn_getfd( &readfds )) == NULL ) {
-                               Debug( LDAP_DEBUG_ANY, "No DSA activity!\n",
-                                   0, 0, 0 );
-                               continue;
-                       }
-
-                       dsa_response( dsaconn, sb );
-               }
-       }
-       /* NOT REACHED */
-}
-
-static int
-set_socket(
-    int        port,
-    int        udp     /* UDP port? */
-)
-{
-       int                     s, i;
-       struct sockaddr_in      addr;
-
-       if ( (s = socket( AF_INET, udp ? SOCK_DGRAM:SOCK_STREAM, 0 )) == -1 ) {
-                perror( "socket" );
-                exit( 1 );
-        }
-
-#ifdef SO_REUSEADDR
-        /* set option so clients can't keep us from coming back up */
-               i = 1;
-        if ( setsockopt( s, SOL_SOCKET, SO_REUSEADDR, (void *) &i, sizeof(i) )
-                   < 0 )
-               {
-                perror( "setsockopt" );
-                exit( 1 );
-        }
-#endif
-#ifdef SO_KEEPALIVE
-        /* enable keep alives */
-               i = 1;
-        if ( setsockopt( s, SOL_SOCKET, SO_KEEPALIVE, (void *) &i, sizeof(i) )
-                   < 0 )
-               {
-                perror( "setsockopt" );
-                exit( 1 );
-        }
-#endif
-
-        /* bind to a name */
-       (void)memset( (void *)&addr, '\0', sizeof( addr ));
-        addr.sin_family = AF_INET;
-        addr.sin_addr.s_addr = htonl(INADDR_ANY);
-        addr.sin_port = htons( port );
-        if ( bind( s, (struct sockaddr *) &addr, sizeof(addr) ) ) {
-                perror( "bind" );
-                exit( 1 );
-        }
-
-       if ( !udp ) {
-               /* listen for connections */
-               if ( listen( s, 5 ) == -1 ) {
-                       perror( "listen" );
-                       exit( 1 );
-               }
-       }
-       Debug( LDAP_DEBUG_TRACE, "listening on %s port %d\n",
-               udp ? "udp" : "tcp", port, 0 );
-
-       return( s );
-}
-
-static RETSIGTYPE
-wait4child( int sig )
-{
-#ifndef HAVE_WAITPID
-       WAITSTATUSTYPE     status;
-#endif
-
-       Debug( LDAP_DEBUG_TRACE, "parent: catching child status\n", 0, 0, 0 );
-
-#ifdef HAVE_WAITPID
-       while( waitpid( (pid_t) -1, (int *) NULL, WAIT_FLAGS ) > 0 )
-               ;       /* NULL */
-#else
-       while ( wait4( (pid_t) -1, &status, WAIT_FLAGS, 0 ) > 0 )
-               ;       /* NULL */
-#endif
-
-       (void) SIGNAL( SIGCHLD, wait4child );
-}
-
-
-RETSIGTYPE
-log_and_exit( int exitcode )
-{
-       struct timeval  tv;
-
-       if ( dosyslog ) {
-               if ( conn_start_tv.tv_sec == 0 ) {
-                       syslog( LOG_INFO, "UDP exit(%d)", exitcode );
-               } else {
-                       gettimeofday( &tv, (struct timezone *)NULL );
-                       syslog( LOG_INFO, "TCP closed %d seconds,  exit(%d)",
-                           tv.tv_sec - conn_start_tv.tv_sec, exitcode );
-               }
-       }
-
-       exit( exitcode );
-}
-
-
-#ifdef LDAP_CONNECTIONLESS
-static int
-udp_init(
-    int        port,
-    int        createsocket
-)
-{
-       int     s, bound;
-       char    *matched;
-
-       if ( createsocket )
-               s = set_socket( port, 1 );
-
-       conn_init();
-       conns->c_dn = strdup("");
-       conns->c_cred = strdup("");
-       conns->c_credlen = 0;
-       conns->c_method = LDAP_AUTH_SIMPLE;
-
-       if ( dsa_address == NULL || (conns->c_paddr = str2paddr( dsa_address ))
-            == NULLPA ) {
-                fprintf(stderr, "Bad DSA address (%s)\n", dsa_address ?
-                    dsa_address : "NULL" );
-                exit( 1 );
-        } else {
-                conns->c_paddr = psap_cpy(conns->c_paddr);
-       }
-
-        if ( do_bind_real(conns, &bound, &matched) != LDAP_SUCCESS) {
-                fprintf(stderr, "Cannot bind to directory\n");
-                exit( 1 );
-        }
-        if ( matched != NULL )
-                free( matched );
-
-       return( createsocket ? s : 0 );
-}
-#endif
diff --git a/servers/ldapd/message.c b/servers/ldapd/message.c
deleted file mode 100644 (file)
index 23a56c7..0000000
+++ /dev/null
@@ -1,176 +0,0 @@
-/* $OpenLDAP$ */
-/*
- * Copyright (c) 1990 Regents of the University of Michigan.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that this notice is preserved and that due credit is given
- * to the University of Michigan at Ann Arbor. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission. This software
- * is provided ``as is'' without express or implied warranty.
- */
-
-#include "portable.h"
-
-#include <stdio.h>
-
-#include <ac/socket.h>
-#include <ac/string.h>
-
-#include <quipu/commonarg.h>
-#include <quipu/ds_error.h>
-
-#include "lber.h"
-#include "ldap.h"
-#include "common.h"
-
-static struct msg      *messages;
-
-struct msg *add_msg(
-    int                        msgid,
-    int                        msgtype,
-    BerElement         *ber,
-    struct conn                *dsaconn,
-    int                        udp,
-    struct sockaddr    *clientaddr
-)
-{
-       struct msg              *new;
-       static int              uniqid = 0;
-
-       /* make a new message */
-       if ( (new = (struct msg *) malloc( sizeof(struct msg) )) == NULL ) {
-               Debug( LDAP_DEBUG_ANY, "addmsg: malloc failed\n", 0, 0, 0 );
-               return( NULL );
-       }
-       new->m_msgid = msgid;
-       new->m_uniqid = ++uniqid;
-       new->m_msgtype = msgtype;
-       new->m_ber = ber;
-       new->m_mods = NULL;
-       new->m_conn = dsaconn;
-       new->m_conn->c_refcnt++;
-       new->m_next = NULL;
-
-#ifdef LDAP_CONNECTIONLESS
-       new->m_cldap = udp;
-       new->m_searchbase = NULLDN;
-
-       if ( udp ) {
-               new->m_clientaddr = *clientaddr;
-               Debug( LDAP_DEBUG_TRACE, "udp message from %s port %d\n", 
-                   inet_ntoa( ((struct sockaddr_in *)clientaddr)->sin_addr ),
-                   ((struct sockaddr_in *)clientaddr)->sin_port, 0 );
-       }
-#endif
-
-       /* add it to the front of the queue */
-       new->m_next = messages;
-       messages = new;
-
-       return( new );
-}
-
-struct msg *get_msg( int uniqid )
-{
-       struct msg      *tmp;
-
-       for ( tmp = messages; tmp != NULL; tmp = tmp->m_next ) {
-               if ( tmp->m_uniqid == uniqid )
-                       return( tmp );
-       }
-
-       return( NULL );
-}
-
-int
-del_msg( struct msg *m )
-{
-       struct msg      *cur, *prev;
-
-       prev = NULL;
-       for ( cur = messages; cur != NULL; cur = cur->m_next ) {
-               if ( cur == m )
-                       break;
-               prev = cur;
-       }
-
-       if ( cur == NULL ) {
-               Debug( LDAP_DEBUG_ANY, "delmsg: cannot find msg %lx\n",
-                      (unsigned long) m, 0, 0 );
-               return( -1 );
-       }
-
-       if ( prev == NULL ) {
-               messages = cur->m_next;
-       } else {
-               prev->m_next = cur->m_next;
-       }
-       conn_free( cur->m_conn );
-       modlist_free( cur->m_mods );
-       ber_free( cur->m_ber, 1 );
-#ifdef LDAP_CONNECTIONLESS
-       if ( cur->m_searchbase != NULLDN ) {
-           dn_free( cur->m_searchbase );
-       }
-#endif /* LDAP_CONNECTIONLESS */
-       free( (char *) cur );
-
-       return( 0 );
-}
-
-/*
- * send_msg - Send a messge in response to every outstanding request on
- * a given connection.  This is used, for example, when an association to
- * a dsa fails.  It deletes messages to which it responds.
- */
-
-void
-send_msg(
-    struct conn        *conn,
-    Sockbuf    *clientsb,
-    int                err,
-    char       *str
-)
-{
-       struct msg      *tmp, *next;
-
-       next = NULL;
-       for ( tmp = messages; tmp != NULL; tmp = next ) {
-               next = tmp->m_next;
-
-               if ( tmp->m_conn == conn ) {
-                       send_ldap_msgresult( clientsb, tmp->m_msgtype, tmp,
-                           err, NULL, str );
-               }
-
-               del_msg( tmp );
-       }
-}
-
-
-#ifdef LDAP_CONNECTIONLESS
-struct msg *
-get_cldap_msg(
-    int                        msgid,
-    int                        msgtype,
-    struct sockaddr    *fromaddr
-)
-{
-       struct msg      *tmp;
-
-       for ( tmp = messages; tmp != NULL; tmp = tmp->m_next ) {
-               if ( tmp->m_cldap && tmp->m_msgid == msgid &&
-                   tmp->m_msgtype == msgtype &&
-                   ((struct sockaddr_in *)&tmp->m_clientaddr)->sin_port ==
-                   ((struct sockaddr_in *)fromaddr)->sin_port &&
-                   ((struct sockaddr_in *)&tmp->m_clientaddr)->sin_addr
-                   == ((struct sockaddr_in *)fromaddr)->sin_addr ) {
-                       break;
-               }
-       }
-
-       return( tmp );
-}
-#endif /* LDAP_CONNECTIONLESS */
diff --git a/servers/ldapd/modify.c b/servers/ldapd/modify.c
deleted file mode 100644 (file)
index 9e36928..0000000
+++ /dev/null
@@ -1,637 +0,0 @@
-/* $OpenLDAP$ */
-/*
- * Copyright (c) 1990 Regents of the University of Michigan.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that this notice is preserved and that due credit is given
- * to the University of Michigan at Ann Arbor. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission. This software
- * is provided ``as is'' without express or implied warranty.
- */
-
-#include "portable.h"
-
-#include <stdio.h>
-
-#include <ac/ctype.h>
-#include <ac/socket.h>
-#include <ac/string.h>         /* get SAFEMEMCPY */
-
-#include <quipu/commonarg.h>
-#include <quipu/attrvalue.h>
-#include <quipu/ds_error.h>
-#include <quipu/modify.h>
-#include <quipu/dap2.h>
-#include <quipu/dua.h>
-extern IFP     merge_acl;
-
-#include "lber.h"
-#include "ldap.h"
-#include "common.h"
-
-static CommonArgs      common = default_common_args;
-
-static int replace_mod( struct entrymod *, Attr_Sequence, Attr_Sequence );
-
-#ifdef LDAP_COMPAT20
-#define MODTAG (ldap_compat == 20 ? OLD_LDAP_RES_MODIFY : LDAP_RES_MODIFY)
-#else
-#define MODTAG LDAP_RES_MODIFY
-#endif
-
-int
-do_modify(
-    Sockbuf    *clientsb,
-    struct msg *m,
-    BerElement *ber
-)
-{
-       char                    *dn;
-       char                    *last;
-       int                     rc;
-       unsigned long           tag, len;
-       LDAPModList             *mods, *modtail;
-       struct ds_read_arg      ra;
-
-       Debug( LDAP_DEBUG_TRACE, "do_modify\n", 0, 0, 0 );
-
-       /*
-        * Parse the modify request.  It looks like this:
-        *      ModifyRequest := [APPLICATION 6] SEQUENCE {
-        *              name    DistinguishedName,
-        *              mods    SEQUENCE OF SEQUENCE {
-        *                      operation       ENUMERATED {
-        *                              add     (0),
-        *                              delete  (1),
-        *                              replace (2)
-        *                      },
-        *                      modification    SEQUENCE {
-        *                              type    AttributeType,
-        *                              values  SET OF AttributeValue
-        *                      }
-        *              }
-        *      }
-        * We then have to initiate a read of the entry to be modified.
-        * The actual modification is done by do_modify2(), after the
-        * read completes.
-        */
-
-#if ISODEPACKAGE == IC
-#if ICRELEASE > 2
-       DAS_ReadArgument_INIT( &ra );
-#endif
-#endif
-
-       if ( ber_scanf( ber, "{a", &dn ) == LBER_ERROR ) {
-               Debug( LDAP_DEBUG_ANY, "ber_scanf failed\n", 0, 0, 0 );
-               send_ldap_msgresult( clientsb, MODTAG, m,
-                   LDAP_PROTOCOL_ERROR, NULL, "" );
-               return( 0 );
-       }
-
-       Debug( LDAP_DEBUG_ARGS, "do_modify: dn (%s)\n", dn, 0, 0 );
-
-       ra.rda_object = ldap_str2dn( dn );
-       free( dn );
-       if ( ra.rda_object == NULLDN ) {
-               Debug( LDAP_DEBUG_ANY, "ldap_str2dn failed\n", 0, 0, 0 );
-               send_ldap_msgresult( clientsb, MODTAG, m,
-                   LDAP_INVALID_DN_SYNTAX, NULL, "" );
-               return( 0 );
-       }
-       ra.rda_eis.eis_allattributes = TRUE;
-       ra.rda_eis.eis_infotypes = EIS_ATTRIBUTESANDVALUES;
-       ra.rda_eis.eis_select = NULLATTR;
-
-       /* collect modifications & save for later */
-       mods = modtail = NULL;
-       for ( tag = ber_first_element( ber, &len, &last ); tag != LBER_DEFAULT;
-           tag = ber_next_element( ber, &len, last ) ) {
-               LDAPModList     *tmp;
-
-               if ( (tmp = (LDAPModList *) calloc( 1, sizeof(LDAPModList) ))
-                   == NULL ) {
-                       send_ldap_msgresult( clientsb, MODTAG, m,
-                           LDAP_OPERATIONS_ERROR, NULL, "Malloc error" );
-                       return( 0 );
-               }
-                       
-               if ( ber_scanf( ber, "{i{a[V]}}", &tmp->m.mod_op,
-                   &tmp->m.mod_type, &tmp->m.mod_bvalues ) == LBER_ERROR ) {
-                       send_ldap_msgresult( clientsb, MODTAG, m,
-                           LDAP_PROTOCOL_ERROR, NULL, "" );
-                       return( 0 );
-               }
-
-               if ( mods == NULL ) {
-                       mods = tmp;
-               } else {
-                       modtail->mod_next = tmp;
-               }
-               modtail = tmp;
-       }
-       m->m_mods = mods;
-
-       ra.rda_common = common; /* struct copy */
-
-       rc = initiate_dap_operation( OP_READ, m, &ra );
-
-       dn_free( ra.rda_object );
-
-       if ( rc != 0 ) {
-               send_ldap_msgresult( clientsb, MODTAG, m, rc, NULL, "" );
-               return( 0 );
-       }
-
-       return( 1 );
-}
-
-int
-do_modify2(
-    Sockbuf                    *clientsb,
-    struct msg                 *m,
-    struct ds_read_result      *rr
-)
-{
-       struct ds_modifyentry_arg       ma;
-       struct entrymod                 *changetail = NULLMOD;
-       int                             rc;
-       LDAPModList                     *mods;
-
-       Debug( LDAP_DEBUG_TRACE, "do_modify2\n", 0, 0, 0 );
-
-#if ISODEPACKAGE == IC
-#if ICRELEASE > 2
-       DAS_ModifyEntryArgument_INIT( &ma );
-#endif
-#endif
-
-       ma.mea_changes = NULLMOD;
-       for ( mods = m->m_mods; mods != NULL; mods = mods->mod_next ) {
-               struct entrymod *em;
-               Attr_Sequence   as, new;
-
-               if ( (em = (struct entrymod *) calloc( 1,
-                   sizeof(struct entrymod) )) == NULLMOD ) {
-                       send_ldap_msgresult( clientsb, MODTAG, m,
-                           LDAP_OPERATIONS_ERROR, NULL, "Malloc error" );
-                       return( 0 );
-               }
-               em->em_next = NULLMOD;
-
-               if ( (new = get_as( clientsb, MODTAG, m,
-                   mods->m.mod_type, mods->m.mod_bvalues )) == NULLATTR )
-                       return( 0 );
-               em->em_what = new;
-
-               for ( as = rr->rdr_entry.ent_attr; as != NULLATTR;
-                   as = as->attr_link ) {
-                       if ( AttrT_cmp( new->attr_type, as->attr_type ) == 0 )
-                               break;
-               }
-
-               if ( new->attr_value == NULLAV &&
-                   mods->m.mod_op != LDAP_MOD_DELETE ) {
-                       send_ldap_msgresult( clientsb, MODTAG, m,
-                           LDAP_INVALID_SYNTAX, NULL, "No values specified" );
-                       return( 0 );
-               }
-
-               switch ( mods->m.mod_op ) {
-               case LDAP_MOD_ADD:
-                       Debug( LDAP_DEBUG_ARGS, "ADD:\n", 0, 0, 0 );
-
-                       if ( as == NULLATTR ) {
-                               Debug( LDAP_DEBUG_ARGS, "\tattribute\n", 0, 0,
-                                   0 );
-                               em->em_type = EM_ADDATTRIBUTE;
-                       } else {
-                               Debug( LDAP_DEBUG_ARGS, "\tvalues\n", 0, 0, 0 );
-                               em->em_type = EM_ADDVALUES;
-                       }
-                       break;
-
-               case LDAP_MOD_DELETE:
-                       Debug( LDAP_DEBUG_ARGS, "DELETE:\n", 0, 0, 0 );
-
-                       if ( as == NULLATTR ) {
-                               Debug( LDAP_DEBUG_ARGS,
-                                   "\tno existing attribute\n", 0, 0, 0 );
-                               send_ldap_msgresult( clientsb, MODTAG,
-                                   m, LDAP_NO_SUCH_ATTRIBUTE, NULL, "" );
-                               ems_free( em );
-                               return( 0 );
-                       } else {
-                               if ( new->attr_value == NULLAV ) {
-                                       Debug( LDAP_DEBUG_ARGS, "\tattribute\n",
-                                           0, 0, 0 );
-                                       em->em_type = EM_REMOVEATTRIBUTE;
-                               } else {
-                                       if ( avs_cmp( new->attr_value,
-                                           as->attr_value ) == 0 ) {
-                                               Debug( LDAP_DEBUG_ARGS,
-                                                   "\tattribute\n", 0, 0, 0 );
-                                               em->em_type =
-                                                   EM_REMOVEATTRIBUTE;
-                                       } else {
-                                               Debug( LDAP_DEBUG_ARGS,
-                                                   "\tvalues\n", 0, 0, 0 );
-                                               em->em_type = EM_REMOVEVALUES;
-                                       }
-                               }
-                       }
-                       break;
-
-               case LDAP_MOD_REPLACE:
-                       Debug( LDAP_DEBUG_ARGS, "REPLACE:\n", 0, 0, 0 );
-
-                       if ( as == NULLATTR ) {
-                               Debug( LDAP_DEBUG_ARGS, "\tattribute\n", 0, 0,
-                                   0 );
-                               em->em_type = EM_ADDATTRIBUTE;
-                       } else {
-                               if ( replace_mod( em, as, new ) < 0 ) {
-                                       return( 0 );
-                               }
-                       }
-                       break;
-
-               default:
-                       Debug( LDAP_DEBUG_ARGS, "UNKNOWN MOD:\n", 0, 0, 0 );
-
-                       send_ldap_msgresult( clientsb, MODTAG, m,
-                           LDAP_PROTOCOL_ERROR, NULL, "" );
-                       return( 0 );
-                       break;
-               }
-
-               if ( em->em_what == NULL ) {    /* ignore this mod */
-                       free( em );
-               } else {
-                       if ( ma.mea_changes == NULLMOD ) {
-                               ma.mea_changes = em;
-                       } else {
-                               changetail->em_next = em;
-                       }
-                       changetail = em->em_next == NULLMOD ? em : em->em_next;
-               }
-       }
-
-#ifdef LDAP_DEBUG
-       if ( ldap_debug & LDAP_DEBUG_ARGS ) {
-                struct entrymod *e;
-                Attr_Sequence   as;
-                AV_Sequence     val;
-               PS              ps;
-
-               ps = ps_alloc( std_open );
-               std_setup( ps, stderr );
-
-                fprintf( stderr, "Modify changes are:\n");
-                for (e = ma.mea_changes; e; e = e->em_next) {
-                        switch (e->em_type) {
-                        case EM_ADDATTRIBUTE:
-                                fprintf( stderr, "\tADD ATTRIBUTE\n");
-                                break;
-                        case EM_REMOVEATTRIBUTE:
-                                fprintf( stderr, "\tREMOVE ATTRIBUTE\n");
-                                break;
-                        case EM_ADDVALUES:
-                                fprintf( stderr, "\tADD VALUES\n");
-                                break;
-                        case EM_REMOVEVALUES:
-                                fprintf( stderr, "\tREMOVE VALUES\n");
-                                break;
-                        default:
-                                fprintf( stderr, "\tUNKNOWN\n");
-                                break;
-                        }
-
-                        as = e->em_what;
-                        fprintf( stderr, "\t\ttype (" );
-                       AttrT_print( ps, as->attr_type, EDBOUT );
-                       fprintf( stderr, ")" );
-                        if ( e->em_type == EM_REMOVEATTRIBUTE ) {
-                                fprintf( stderr, "\n" );
-                                continue;
-                        }
-                        fprintf( stderr, " values" );
-                        for (val = as->attr_value; val; val = val->avseq_next) {
-                                ps_print( ps, " (" );
-                               AttrV_print( ps, &val->avseq_av, EDBOUT );
-                               ps_print( ps, ")" );
-                       }
-                        fprintf( stderr, "\n" );
-                }
-               ps_free( ps );
-       }
-#endif
-
-       if ( ma.mea_changes == NULLMOD ) {      /* nothing to do */
-               send_ldap_msgresult( clientsb, MODTAG, m,
-                   LDAP_SUCCESS, NULL, "" );
-               return( 0 );
-       }
-
-       ma.mea_object = rr->rdr_entry.ent_dn;
-       ma.mea_common = common; /* struct copy */
-
-       rc = initiate_dap_operation( OP_MODIFYENTRY, m, &ma );
-
-       ems_free( ma.mea_changes );
-
-       if ( rc != 0 ) {
-               send_ldap_msgresult( clientsb, MODTAG, m, rc, NULL, "" );
-               return( 0 );
-       }
-
-       return( 1 );
-}
-
-Attr_Sequence
-get_as(
-    Sockbuf            *clientsb,
-    unsigned long      op,
-    struct msg         *m,
-    char               *type,
-    struct berval      **bvals
-)
-{
-       Attr_Sequence   as;
-       int             i;
-       short           syntax;
-
-       Debug( LDAP_DEBUG_TRACE, "get_as\n", 0, 0, 0 );
-
-       if ( (as = as_comp_new( NULLAttrT, NULLAV, NULLACL_INFO ))
-           == NULLATTR ) {
-               send_ldap_msgresult( clientsb, op, m,
-                   LDAP_OPERATIONS_ERROR, NULL, "Malloc error" );
-               return( NULLATTR );
-       }
-       as->attr_link = NULLATTR;
-       as->attr_value = NULLAV;
-       as->attr_acl = NULLACL_INFO;
-
-       if ( (as->attr_type = str2AttrT( type )) == NULLAttrT ) {
-              send_ldap_msgresult( clientsb, op, m, LDAP_UNDEFINED_TYPE,
-                  NULL, type );
-               return( NULLATTR );
-       }
-
-       if ( bvals == NULL )
-               return( as );
-
-       syntax = as->attr_type->oa_syntax;
-       for ( i = 0; bvals[i] != NULL; i++ ) {
-               AttributeValue  av;
-               int             t61str, ncomp;
-               char            *sval, *s, *news, *n;
-
-               if ( syntax == ldap_jpeg_syntax ||
-                   syntax == ldap_jpeg_nonfile_syntax ||
-                   syntax == ldap_octetstring_syntax ||
-                   syntax == ldap_audio_syntax ) {
-                       if (( av = bv_octet2AttrV( bvals[i] )) == NULLAttrV ) {
-                               send_ldap_msgresult( clientsb, op, m,
-                                   LDAP_INVALID_SYNTAX, NULL, type );
-                               as_free( as );
-                               return( NULLATTR );
-                       }
-               } else if ( syntax == ldap_photo_syntax ) {
-                       if (( av = bv_asn2AttrV( bvals[i] )) == NULLAttrV ) {
-                               send_ldap_msgresult( clientsb, op, m,
-                                   LDAP_INVALID_SYNTAX, NULL, type );
-                               as_free( as );
-                               return( NULLATTR );
-                       }
-               } else {
-
-                       if (( sval = malloc( bvals[i]->bv_len + 1 )) == NULL ) {
-                               send_ldap_msgresult( clientsb, op, m,
-                                   LDAP_OPERATIONS_ERROR, NULL,
-                                  "Malloc error" );
-                               return( NULLATTR );
-                       }
-                       SAFEMEMCPY( sval, bvals[i]->bv_val, bvals[i]->bv_len );
-                       sval[ bvals[i]->bv_len ] = '\0';
-
-                       /* dang quipu - there's no need for this! */
-                       if ( syntax == ldap_postaladdress_syntax ) {
-                               t61str = 0;
-                               ncomp = 1;
-                               for ( s = sval; *s; s++ ) {
-                                       if ( *s == '$' ) {
-                                               ncomp++;
-                                               continue;
-                                       }
-#define ist61(c)  (!isascii(c) || !isalnum(c) \
-                         && c != 047 && c != '(' && c != ')' \
-                         && c != '+' && c != '-' && c != '.' && c != ',' \
-                         && c != '/' && c != ':' && c != '=' && c != '?' \
-                         && c != ' ')
-                                       if ( ist61( *s ) )
-                                               t61str = 1;
-                               }
-#define T61MARK                "{T.61}"
-#define T61MARKLEN     6
-                               if ( t61str ) {
-                                       news = malloc( strlen(sval) +
-                                           ncomp * T61MARKLEN + 1 );
-                                       strcpy( news, T61MARK );
-                                       for ( n = news + T61MARKLEN, s = sval;
-                                           *s; n++, s++ ) {
-                                               *n = *s;
-                                               if ( *s == '$' ) {
-                                                       strcpy( ++n, T61MARK );
-                                                       n += T61MARKLEN - 1;
-                                               }
-                                       }
-                                       *n = '\0';
-                                       free( sval );
-                                       sval = news;
-                               }
-
-                               av = str_at2AttrV( sval, as->attr_type );
-                       } else if ( syntax == ldap_dn_syntax ) {
-                               av = ldap_strdn2AttrV( sval );
-                       } else if ( i != 0 && syntax == ldap_acl_syntax ) {
-                               (void) (*merge_acl)( as->attr_value, sval );
-                               free( sval );
-                               continue;
-                       } else {
-                               av = ldap_str_at2AttrV( sval, as->attr_type );
-                       }
-
-                       if ( av == NULLAttrV ) {
-                               send_ldap_msgresult( clientsb, op, m,
-                                   LDAP_INVALID_SYNTAX, NULL, sval );
-                               free( sval );
-                               as_free( as );
-                               return( NULLATTR );
-                       }
-
-                       free( sval );
-               }
-               as->attr_value = avs_merge( as->attr_value,
-                   avs_comp_new( av ) );
-       }
-
-       return( as );
-}
-
-void
-modify_result( Sockbuf *sb, struct msg *m )
-{
-       send_ldap_msgresult( sb, MODTAG, m, LDAP_SUCCESS, NULL, "" );
-
-       return;
-}
-
-void
-modlist_free( LDAPModList *mods )
-{
-       LDAPModList     *next;
-
-       for ( ; mods != NULL; mods = next ) {
-               free( mods->m.mod_type );
-               if ( mods->m.mod_bvalues != NULL )
-                       ber_bvecfree( mods->m.mod_bvalues );
-               next = mods->mod_next;
-               free( mods );
-       }
-}
-
-/*
- * called when mod is replace to optimize by only deleting old values
- * that are not in the new set and by only adding what isn't in old set
- */
-
-static int
-replace_mod(
-    struct entrymod    *rem,
-    Attr_Sequence      oas,
-    Attr_Sequence      nas
-)
-{
-       AV_Sequence     oavs, navs, davs, prev_navs, tmp;
-#ifdef LDAP_DEBUG
-       PS              ps;
-
-       ps = ps_alloc( std_open );
-       std_setup( ps, stderr );
-
-       if ( ldap_debug & LDAP_DEBUG_ARGS ) {
-               ps_print( ps, "replace_mod(" );
-               AttrT_print( ps, oas->attr_type, EDBOUT );
-               ps_print( ps, ")\n" );
-       }
-#endif
-
-       davs = NULL;
-       for ( oavs = oas->attr_value; oavs != NULL; oavs = oavs->avseq_next ) {
-#ifdef LDAP_DEBUG
-               if ( ldap_debug & LDAP_DEBUG_ARGS ) {
-                       ps_print( ps, "old value " );
-                       AttrV_print( ps, &oavs->avseq_av, EDBOUT );
-                       ps_print( ps, "\n" );
-               }
-#endif
-
-               prev_navs = NULL;
-               for ( navs = nas->attr_value; navs != NULL;
-                   prev_navs = navs, navs = navs->avseq_next ) {
-#ifdef LDAP_DEBUG
-                       if ( ldap_debug & LDAP_DEBUG_ARGS ) {
-                               ps_print( ps, "\tnew value " );
-                               AttrV_print( ps, &navs->avseq_av, EDBOUT );
-                               ps_print( ps, "\n" );
-                       }
-#endif
-                       if ( AttrV_cmp( &oavs->avseq_av, &navs->avseq_av)
-                           == 0) {
-                               break;
-                       }
-               }
-
-               if ( navs == NULL ) {   /* value to delete */
-#ifdef LDAP_DEBUG
-                       if ( ldap_debug & LDAP_DEBUG_ARGS ) {
-                               ps_print( ps, "value to delete " );
-                               AttrV_print( ps, &oavs->avseq_av, EDBOUT );
-                               ps_print( ps, "\n" );
-                       }
-#endif
-                       if ( davs == NULL ) {
-                           davs = avs_comp_cpy( oavs );
-                       } else {
-                           tmp = avs_comp_cpy( oavs );
-                           tmp->avseq_next = davs;
-                           davs = tmp;
-                       }
-               } else {                /* value to keep */
-#ifdef LDAP_DEBUG
-                       if ( ldap_debug & LDAP_DEBUG_ARGS ) {
-                               ps_print( ps, "value to leave alone " );
-                               AttrV_print( ps, &oavs->avseq_av, EDBOUT );
-                               ps_print( ps, "\n" );
-                       }
-#endif
-                       if ( prev_navs == NULL ) {
-                           nas->attr_value = navs->avseq_next;
-                       } else {
-                           prev_navs->avseq_next = navs->avseq_next;
-                       }
-                       avs_comp_free( navs );
-               }
-       }
-
-       if ( davs == NULL && nas->attr_value == NULL ) {
-#ifdef LDAP_DEBUG
-               if ( ldap_debug & LDAP_DEBUG_ARGS ) {
-                       ps_print( ps, "  nothing to do" );
-               }
-#endif
-               rem->em_what = NULL;
-       } else {
-            /*  Must add new values before removing old values.
-             *  Otherwise, removing all existing values causes the
-             *  attribute to be removed such that subsequent add values
-             *  fail.
-             */
-               if ( nas->attr_value != NULL ) {        /* add new values */
-#ifdef LDAP_DEBUG
-                       if ( ldap_debug & LDAP_DEBUG_ARGS ) {
-                               AttrT_print( ps, nas->attr_type, EDBOUT );
-                               ps_print( ps, ": some to add\n" );
-                       }
-#endif
-                       rem->em_type = EM_ADDVALUES;
-                       rem->em_what = nas;
-                       rem->em_next = NULLMOD;
-               }
-
-               if ( davs != NULL ) {   /* delete old values */
-#ifdef LDAP_DEBUG
-                       if ( ldap_debug & LDAP_DEBUG_ARGS ) {
-                               AttrT_print( ps, nas->attr_type, EDBOUT );
-                               ps_print( ps, ": some to delete\n" );
-                       }
-#endif
-                       if ( nas->attr_value != NULL ) {
-                               rem->em_next = (struct entrymod *) calloc( 1,
-                                   sizeof(struct entrymod) );
-                               rem = rem->em_next;
-                       }
-                       rem->em_type = EM_REMOVEVALUES;
-                       rem->em_what = as_comp_new( NULLAttrT, NULLAV,
-                           NULLACL_INFO );
-                       rem->em_what->attr_type = AttrT_cpy( nas->attr_type );
-                       rem->em_what->attr_value = davs;
-               }
-       }
-
-       return( 0 );
-}
diff --git a/servers/ldapd/modrdn.c b/servers/ldapd/modrdn.c
deleted file mode 100644 (file)
index b9053cd..0000000
+++ /dev/null
@@ -1,121 +0,0 @@
-/* $OpenLDAP$ */
-/*
- * Copyright (c) 1990 Regents of the University of Michigan.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that this notice is preserved and that due credit is given
- * to the University of Michigan at Ann Arbor. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission. This software
- * is provided ``as is'' without express or implied warranty.
- */
-
-#include "portable.h"
-
-#include <stdio.h>
-
-#include <ac/socket.h>
-
-#include <quipu/commonarg.h>
-#include <quipu/attrvalue.h>
-#include <quipu/ds_error.h>
-#include <quipu/modifyrdn.h>
-#include <quipu/dap2.h>
-#include <quipu/dua.h>
-
-#include "lber.h"
-#include "ldap.h"
-#include "common.h"
-
-#ifdef LDAP_COMPAT20
-#define MODRDNTAG      (ldap_compat == 20 ? OLD_LDAP_RES_MODRDN : LDAP_RES_MODRDN)
-#else
-#define MODRDNTAG      LDAP_RES_MODRDN
-#endif
-
-int
-do_modrdn(
-    Sockbuf    *clientsb,
-    struct msg *m,
-    BerElement *ber
-)
-{
-       char                    *dn, *newrdn;
-       int                     rc, deleteoldrdn;
-       struct ds_modifyrdn_arg ma;
-       static CommonArgs       common = default_common_args;
-
-       Debug( LDAP_DEBUG_TRACE, "do_modrdn\n", 0, 0, 0 );
-
-       /*
-        * Parse the modrdn request.  It looks like this:
-        *      ModifyRDNRequest := SEQUENCE {
-        *              entry   DistinguishedName,
-        *              newrdn  RelativeDistinguishedName
-        *      }
-        */
-
-#if ISODEPACKAGE == IC
-#if ICRELEASE > 2
-       DAS_ModifyDnArgument_INIT( &ma );
-#endif
-#endif
-
-       if ( ber_scanf( ber, "{aa", &dn, &newrdn ) == LBER_ERROR ) {
-               Debug( LDAP_DEBUG_ANY, "ber_scanf failed\n", 0, 0, 0 );
-               send_ldap_msgresult( clientsb, MODRDNTAG, m,
-                   LDAP_PROTOCOL_ERROR, NULL, "" );
-               return( 0 );
-       }
-
-       deleteoldrdn = 1;
-       if ( ber_scanf( ber, "b", &deleteoldrdn ) == LBER_ERROR ) {
-               Debug( LDAP_DEBUG_ANY, "found old modrdn\n", 0, 0, 0 );
-       }
-
-       Debug( LDAP_DEBUG_ARGS,
-           "do_modrdn: dn (%s) newrdn (%s) deleteoldrdn (%d)\n", dn, newrdn,
-           deleteoldrdn );
-
-       ma.mra_object = ldap_str2dn( dn );
-       free( dn );
-       if ( ma.mra_object == NULLDN ) {
-               Debug( LDAP_DEBUG_ANY, "ldap_str2dn failed\n", 0, 0, 0 );
-               send_ldap_msgresult( clientsb, MODRDNTAG, m,
-                   LDAP_INVALID_DN_SYNTAX, NULL, "" );
-               return( 0 );
-       }
-
-       ma.mra_newrdn = ldap_str2rdn( newrdn );
-       free( newrdn );
-       if ( ma.mra_newrdn == NULLRDN ) {
-               Debug( LDAP_DEBUG_ANY, "str2rdn failed\n", 0, 0, 0 );
-               send_ldap_msgresult( clientsb, MODRDNTAG, m,
-                   LDAP_INVALID_DN_SYNTAX, NULL, "Bad RDN" );
-               return( 0 );
-       }
-       ma.deleterdn = (deleteoldrdn ? 1 : 0);
-
-       ma.mra_common = common; /* struct copy */
-
-       rc = initiate_dap_operation( OP_MODIFYRDN, m, &ma );
-
-       dn_free( ma.mra_object );
-       rdn_free( ma.mra_newrdn );
-
-       if ( rc != 0 ) {
-               send_ldap_msgresult( clientsb, MODRDNTAG, m, rc, NULL, "" );
-               return( 0 );
-       }
-
-       return( 1 );
-}
-
-void
-modrdn_result( Sockbuf *sb, struct msg *m )
-{
-       send_ldap_msgresult( sb, MODRDNTAG, m, LDAP_SUCCESS, NULL, "" );
-
-       return;
-}
diff --git a/servers/ldapd/proto-ldapd.h b/servers/ldapd/proto-ldapd.h
deleted file mode 100644 (file)
index ced8f1b..0000000
+++ /dev/null
@@ -1,182 +0,0 @@
-/* $OpenLDAP$ */
-#ifndef _PROTO_LDAPD_H
-#define _PROTO_LDAPD_H
-
-#include <ldap_cdefs.h>
-
-/*
- * abandon.c
- */
-
-int do_abandon LDAP_P(( struct conn *dsaconn, BerElement *ber, int msgid ));
-
-/*
- * add.c
- */
-
-int do_add LDAP_P(( Sockbuf *clientsb, struct msg *m, BerElement *ber ));
-void add_result LDAP_P(( Sockbuf *sb, struct msg *m ));
-
-/*
- * association.c
- */
-
-struct conn *conn_dup LDAP_P(( struct conn *cn ));
-int conn_init LDAP_P(( void ));
-void conn_free LDAP_P(( struct conn *conn ));
-void conn_del LDAP_P(( struct conn *conn ));
-void conn_setfds LDAP_P(( fd_set *fds ));
-void conn_badfds LDAP_P(( void ));
-struct conn *conn_getfd LDAP_P(( fd_set *fds ));
-void conn_add LDAP_P(( struct conn *new ));
-struct conn *conn_find LDAP_P(( struct conn *c ));
-void conn_close LDAP_P(( void ));
-int isclosed LDAP_P(( int ad ));
-
-/*
- * bind.c
- */
-
-int do_bind LDAP_P(( Sockbuf *clientsb, struct msg *m, BerElement *ber, int *bound ));
-int do_bind_real LDAP_P(( struct conn *dsaconn, int *bound, char **matched ));
-
-/*
- * certificate.c
- */
-
-int ldap_certif_print LDAP_P(( PS ps, struct certificate *parm, int format ));
-void ldap_print_algid LDAP_P(( PS ps, struct alg_id *parm, int format ));
-struct certificate *ldap_str2cert LDAP_P(( char *str ));
-void ldap_str2alg LDAP_P(( char *str, struct alg_id *alg ));
-void certif_init LDAP_P(( void ));
-
-/*
- * compare.c
- */
-
-struct ds_compare_result;
-int do_compare LDAP_P(( Sockbuf *clientsb, struct msg *m, BerElement *ber ));
-void compare_result LDAP_P(( Sockbuf *sb, struct msg *m,
-                            struct ds_compare_result *cr ));
-
-/*
- * delete.c
- */
-
-int do_delete LDAP_P(( Sockbuf *clientsb, struct msg *m, BerElement *ber ));
-void delete_result LDAP_P(( Sockbuf *sb, struct msg *m ));
-
-/*
- * error.c
- */
-
-void print_error LDAP_P(( struct DSError *e ));
-int x500err2ldaperr LDAP_P(( struct DSError *e, char **matched ));
-
-/*
- * kerberos.c
- */
-
-struct ds_bind_arg;
-int kerberosv4_ldap_auth LDAP_P(( char *cred, long len ));
-int kerberosv4_bindarg   LDAP_P(( struct ds_bind_arg *ba, DN dn, char *cred,
-                                 long len, u_long *nonce ));
-int kerberos_check_mutual LDAP_P(( struct ds_bind_arg *res, u_long nonce ));
-
-/*
- * main.c
- */
-
-RETSIGTYPE log_and_exit LDAP_P(( int exitcode )) LDAP_GCCATTR((noreturn));
-
-/*
- * message.c
- */
-
-struct msg *add_msg LDAP_P(( int msgid, int msgtype, BerElement *ber,
-       struct conn *dsaconn, int udp, struct sockaddr *clientaddr ));
-struct msg *get_msg LDAP_P(( int uniqid ));
-int del_msg LDAP_P(( struct msg *m ));
-void send_msg LDAP_P(( struct conn *conn, Sockbuf *clientsb, int err, char *str ));
-struct msg * get_cldap_msg LDAP_P(( int msgid, int msgtype, struct sockaddr *fromaddr ));
-
-/*
- * modify.c
- */
-
-struct ds_read_result;
-int do_modify LDAP_P(( Sockbuf *clientsb, struct msg *m, BerElement *ber ));
-int do_modify2 LDAP_P((Sockbuf *sb, struct msg *m, struct ds_read_result *rr));
-Attr_Sequence get_as LDAP_P(( Sockbuf *clientsb, unsigned long op, struct msg *m,
-                             char *type, struct berval **bvals ));
-void modify_result LDAP_P(( Sockbuf *sb, struct msg *m ));
-void modlist_free LDAP_P(( LDAPModList *mods ));
-
-/*
- * modrdn.c
- */
-
-int do_modrdn LDAP_P(( Sockbuf *clientsb, struct msg *m, BerElement *ber ));
-void modrdn_result  LDAP_P((Sockbuf *sb, struct msg *m));
-
-/*
- * request.c
- */
-
-void client_request LDAP_P(( Sockbuf *clientsb, struct conn *dsaconn, int  udp ));
-int do_request LDAP_P(( Sockbuf *clientsb, struct msg *m, BerElement *ber,
-       int *bound ));
-int initiate_dap_operation LDAP_P(( int op, struct msg *m, void *arg ));
-#ifdef LDAP_DEBUG
-int trace_ber LDAP_P(( int tag, int len, char *ber,
-                      FILE *trace_file, int prepend, int read_pdu ));
-#endif
-
-/*
- * result.c
- */
-
-void dsa_response LDAP_P(( struct conn *dsaconn, Sockbuf *clientsb ));
-int send_ldap_msgresult LDAP_P(( Sockbuf *sb, unsigned long tag, struct msg *m,
-       int err, char *matched, char *text ));
-int send_ldap_result LDAP_P(( Sockbuf *sb, unsigned long tag, int msgid, int err,
-       char *matched, char *text ));
-
-/*
- * search.c
- */
-
-struct ds_search_result;
-int do_search LDAP_P(( Sockbuf *clientsb, struct msg *m, BerElement *ber ));
-void search_result LDAP_P(( Sockbuf *sb, struct msg *m,
-                           struct ds_search_result *sr ));
-
-
-/*
- * syntax.c
- */
-
-void get_syntaxes LDAP_P(( void ));
-int dn_print_real LDAP_P(( PS ps, DN dn, int format));
-void ldap_dn_print LDAP_P(( PS ps, DN dn, DN base, int format));
-int encode_dn LDAP_P(( BerElement *ber, DN dn, DN base));
-int encode_attrs LDAP_P(( BerElement *ber, Attr_Sequence as ));
-AttributeValue bv_octet2AttrV LDAP_P(( struct berval *bv ));
-AttributeValue bv_asn2AttrV LDAP_P(( struct berval *bv ));
-AttributeValue ldap_strdn2AttrV LDAP_P(( char *dnstr ));
-DN ldap_str2dn LDAP_P(( char *str ));
-RDN ldap_str2rdn LDAP_P(( char *rdnstr ));
-AttributeValue ldap_str_at2AttrV LDAP_P(( char *str, AttributeType type ));
-AttributeValue ldap_str2AttrV LDAP_P(( char *value, short syntax ));
-
-/*
- * util.c
- */
-
-void bprint LDAP_P(( char *data, int len ));
-void charlist_free LDAP_P(( char **cl ));
-int get_ava LDAP_P(( BerElement *ber, AVA *tava ));
-int chase_referral LDAP_P(( Sockbuf *clientsb, struct msg *m, struct DSError *err,
-       char **matched ));
-
-#endif /* _proto_ldapd */
diff --git a/servers/ldapd/request.c b/servers/ldapd/request.c
deleted file mode 100644 (file)
index 8f27d30..0000000
+++ /dev/null
@@ -1,514 +0,0 @@
-/* $OpenLDAP$ */
-/*
- * Copyright (c) 1990 Regents of the University of Michigan.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that this notice is preserved and that due credit is given
- * to the University of Michigan at Ann Arbor. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission. This software
- * is provided ``as is'' without express or implied warranty.
- */
-
-#include "portable.h"
-
-#include <stdio.h>
-
-#include <ac/signal.h>
-#include <ac/socket.h>
-#include <ac/string.h>
-#include <ac/syslog.h>
-#include <ac/time.h>
-#include <ac/wait.h>
-
-#include <quipu/commonarg.h>
-#include <quipu/ds_error.h>
-#include <quipu/dap2.h>
-#include <quipu/dua.h>
-
-#include "lber.h"
-#include "ldap.h"
-#include "common.h"
-
-#ifdef PEPSY_DUMP
-#ifndef DEBUG
-#define DEBUG
-#endif
-#include "LDAP-types.h"
-#if ISODEPACKAGE == IC
-#include <compat/logger.h>
-#else
-#include <logger.h>
-#endif
-#endif
-
-/*
- * client_request - called by do_queries() when there is activity on the
- * client socket.  It expects to be able to get an LDAP message from the
- * client socket, parses the first couple of fields, and then calls
- * do_request() to handle the request.  If do_request() (or something
- * called by it) returns a response to the client (e.g., in the case of
- * an error), then client_request() is done.  If the request is not
- * responded to (and needs a response), it is added to the queue of
- * outstanding requests.  It will be responded to later via dsa_response(),
- * once the DSA operation completes.
- */
-
-void
-client_request(
-    Sockbuf    *clientsb,
-    struct conn        *dsaconn,
-    int        udp
-)
-{
-       unsigned long   tag;
-       unsigned long   len;
-       long            msgid;
-       BerElement      ber, *copyofber;
-       struct msg      *m;
-       static int      bound;
-#ifdef LDAP_CONNECTIONLESS
-       struct sockaddr_in *sai;
-#endif   
-       Debug( LDAP_DEBUG_TRACE, "client_request%s\n",
-           udp ? " udp" : "", 0, 0 );
-
-       /*
-        * Get the ldap message, which is a sequence of message id
-
-        * and then the actual request choice.
-        */
-
-       ber_init_w_nullc( &ber, 0 );
-       if ( (tag = ber_get_next( clientsb, &len, &ber )) == LBER_DEFAULT ) {
-               Debug( LDAP_DEBUG_ANY, "ber_get_next failed\n", 0, 0, 0 );
-               log_and_exit( 1 );
-       }
-
-#ifdef LDAP_CONNECTIONLESS
-       if ( udp && dosyslog ) {
-               ber_sockbuf_ctrl( clientsb, LBER_SB_OPT_UDP_GET_SRC,
-                       (void *)&sai );
-               syslog( LOG_INFO, "UDP request from unknown (%s)",
-                       inet_ntoa( sai->sin_addr ) );
-       }
-#endif
-
-#ifdef LDAP_DEBUG
-       if ( ldap_debug & LDAP_DEBUG_BER )
-               trace_ber( tag, len, ber.ber_buf, stderr, 1, 1 );
-#endif
-
-#ifdef LDAP_COMPAT
-       /*
-        * This tag should be a normal SEQUENCE tag.  In release 2.0 this
-        * tag is 0x10.  In the new stuff this is 0x30.  To distinguish
-        * between 3.0 and the "correct" stuff, we look for an extra
-        * sequence tag after the bind tag.
-        */
-
-       Debug( LDAP_DEBUG_ANY, "bound %d\n", bound, 0, 0 );
-       if ( bound == 0 ) {
-               /* check for 2.0 */
-               if ( tag == OLD_LDAP_TAG_MESSAGE ) {
-                       Debug( LDAP_DEBUG_ANY, "version 2.0 detected\n", 0,
-                           0, 0 );
-                       if ( dosyslog ) {
-                               syslog( LOG_INFO, "old version 2.0 detected" );
-                       }
-                       ldap_compat = 20;
-               /* check for 3.0 */
-               } else {
-                       BerElement      tber;
-                       unsigned long   tlen;
-                       unsigned long   ttag;
-
-                       tber = ber;     /* struct copy */
-                       /* msgid */
-                       ttag = ber_skip_tag( &tber, &tlen );
-                       tber.ber_ptr += tlen;
-                       /* bind sequence header */
-                       ttag = ber_skip_tag( &tber, &tlen );
-                       ttag = ber_peek_tag( &tber, &tlen );
-
-                       Debug( LDAP_DEBUG_ANY, "checking for 3.0 tag 0x%lx\n",
-                              ttag, 0, 0 );
-                       if ( ttag == LBER_SEQUENCE ) {
-                               Debug( LDAP_DEBUG_ANY, "version 3.0 detected\n",
-                                   0, 0, 0 );
-                               if ( dosyslog ) {
-                                       syslog( LOG_INFO,
-                                           "old version 3.0 detected" );
-                               }
-                               ldap_compat = 30;
-                       }
-               }
-       }
-#endif
-
-       if ( ber_get_int( &ber, &msgid ) != LDAP_TAG_MSGID ) {
-               send_ldap_result( clientsb, LBER_DEFAULT, msgid,
-                   LDAP_PROTOCOL_ERROR, NULL, "Not an LDAP message" );
-               free( ber.ber_buf );
-               return;
-       }
-
-#ifdef LDAP_CONNECTIONLESS
-       if ( udp ) {
-               char    *logdn = NULL;
-
-               ber_get_stringa( &ber, &logdn );
-               if ( logdn != NULL ) {
-                   if ( dosyslog ) {
-                           syslog( LOG_INFO, "UDP requestor: %s", logdn );
-                   }
-                   Debug( LDAP_DEBUG_ANY, "UDP requestor: %s\n", logdn, 0, 0 );
-                   free( logdn );
-               }
-       }
-#endif /* LDAP_CONNECTIONLESS */
-
-#ifdef LDAP_COMPAT30
-       if ( ldap_compat == 30 )
-               tag = ber_skip_tag( &ber, &len );
-       else
-#endif
-               tag = ber_peek_tag( &ber, &len );
-       if ( !udp && bound == 0 && tag != LDAP_REQ_BIND
-#ifdef LDAP_COMPAT20
-           && tag != OLD_LDAP_REQ_BIND
-#endif
-           ) {
-               send_ldap_result( clientsb, tag, msgid, LDAP_OPERATIONS_ERROR,
-                   NULL, "Bind operation must come first" );
-               free( ber.ber_buf );
-               return;
-       }
-
-#ifdef LDAP_CONNECTIONLESS
-       if (udp && tag != LDAP_REQ_SEARCH && tag != LDAP_REQ_ABANDON ) {
-               send_ldap_result( clientsb, tag, msgid, LDAP_OPERATIONS_ERROR,
-                   NULL, "Only search is supported over UDP/CLDAP" );
-               free( ber.ber_buf );
-               return;
-       }
-       ber_sockbuf_ctrl( clientsb, LBER_SB_OPT_UDP_GET_SRC, (void *)&sai );
-   
-       if ( get_cldap_msg( msgid, tag,
-           (struct sockaddr *)sai ) != NULL ) {
-               /*
-                * duplicate request: toss this one
-                */
-               Debug( LDAP_DEBUG_TRACE,
-                   "client_request tossing dup request id %ld from %s\n",
-                   msgid, inet_ntoa( sai->sin_addr ), 0 );
-          
-               free( ber.ber_buf );
-               return;
-       }
-#endif
-
-       copyofber = ber_dup( &ber );
-
-       m = add_msg( msgid, tag, copyofber, dsaconn, udp,
-#ifdef LDAP_CONNECTIONLESS
-               (struct sockaddr *)sai );
-#else
-               NULL );
-#endif
-
-       /* 
-        * Call the appropriate routine to handle the request.  If it
-        * returns a nonzero result, the message requires a response, and
-        * so it's left in the queue of outstanding requests, otherwise
-        * it's deleted.
-        */
-
-       if ( do_request( clientsb, m, &ber, &bound ) == 0 ) {
-               del_msg( m );
-       }
-
-       return;
-}
-
-/*
- * do_request - called when a client makes a request, or when a referral
- * error is returned.  In the latter case, a connection is made to the
- * referred to DSA, and do_request() is called to retry the operation over
- * that connection.  In the former case, do_request() is called to try
- * the operation over the default association.
- */
-
-int
-do_request(
-    Sockbuf    *clientsb,
-    struct msg *m,
-    BerElement *ber,
-    int                *bound
-)
-{
-       int             resp_required = 0;
-
-       Debug( LDAP_DEBUG_TRACE, "do_request\n", 0, 0, 0 );
-
-       switch ( m->m_msgtype ) {
-#ifdef LDAP_COMPAT20
-       case OLD_LDAP_REQ_BIND:
-#endif
-       case LDAP_REQ_BIND:
-               resp_required = do_bind( clientsb, m, ber, bound );
-               break;
-
-#ifdef LDAP_COMPAT20
-       case OLD_LDAP_REQ_UNBIND:
-#endif
-#ifdef LDAP_COMPAT30
-       case LDAP_REQ_UNBIND_30:
-#endif
-       case LDAP_REQ_UNBIND:
-               conn_close();
-               log_and_exit( 0 );
-               break;
-
-#ifdef LDAP_COMPAT20
-       case OLD_LDAP_REQ_ADD:
-#endif
-       case LDAP_REQ_ADD:
-               resp_required = do_add( clientsb, m, ber );
-               break;
-
-#ifdef LDAP_COMPAT20
-       case OLD_LDAP_REQ_DELETE:
-#endif
-#ifdef LDAP_COMPAT30
-       case LDAP_REQ_DELETE_30:
-#endif
-       case LDAP_REQ_DELETE:
-               resp_required = do_delete( clientsb, m, ber );
-               break;
-
-#ifdef LDAP_COMPAT20
-       case OLD_LDAP_REQ_MODRDN:
-#endif
-       case LDAP_REQ_MODRDN:
-               resp_required = do_modrdn( clientsb, m, ber );
-               break;
-
-#ifdef LDAP_COMPAT20
-       case OLD_LDAP_REQ_MODIFY:
-#endif
-       case LDAP_REQ_MODIFY:
-               resp_required = do_modify( clientsb, m, ber );
-               break;
-
-#ifdef LDAP_COMPAT20
-       case OLD_LDAP_REQ_COMPARE:
-#endif
-       case LDAP_REQ_COMPARE:
-               resp_required = do_compare( clientsb, m, ber );
-               break;
-
-#ifdef LDAP_COMPAT20
-       case OLD_LDAP_REQ_SEARCH:
-#endif
-       case LDAP_REQ_SEARCH:
-               resp_required = do_search( clientsb, m, ber );
-               break;
-
-#ifdef LDAP_COMPAT20
-       case OLD_LDAP_REQ_ABANDON:
-#endif
-#ifdef LDAP_COMPAT30
-       case LDAP_REQ_ABANDON_30:
-#endif
-       case LDAP_REQ_ABANDON:
-               resp_required = do_abandon( m->m_conn, ber, m->m_uniqid );
-               break;
-
-       default:
-               Debug( LDAP_DEBUG_ANY, "unknown operation %d\n", m->m_msgtype,
-                   0, 0 );
-
-               send_ldap_msgresult( clientsb, m->m_msgtype, m,
-                   LDAP_PROTOCOL_ERROR, NULL, "Unknown request type" );
-               break;
-       }
-
-       return( resp_required );
-}
-
-/* 
- * initiate_dap_operation - initiate a dap operation, rebinding and retrying
- * the request if necessary.  If the request is successfully initiated, 0 is
- * returned.  Otherwise, an indication of the error is returned.
- */
-
-int
-initiate_dap_operation(
-    int                op,
-    struct msg *m,
-    void       *arg
-)
-{
-       char                    *matched;
-       int                     i, rc, bound = 0;
-       struct DAPindication    di;
-
-       Debug( LDAP_DEBUG_TRACE, "initiate_dap_operation\n", 0, 0, 0 );
-
-       if ( m->m_conn->c_ad == -1 && do_bind_real( m->m_conn, &bound,
-           &matched ) != LDAP_SUCCESS )
-               return( LDAP_UNAVAILABLE );
-
-       for ( i = 0; i < 2; i++ ) {
-               switch ( op ) {
-               case OP_COMPARE:
-                       rc = DapCompare( m->m_conn->c_ad, m->m_uniqid,
-                           (struct ds_compare_arg *) arg, &di, ROS_ASYNC );
-                       break;
-
-               case OP_SEARCH:
-                       rc = DapSearch( m->m_conn->c_ad, m->m_uniqid,
-                           (struct ds_search_arg *) arg, &di, ROS_ASYNC );
-                       break;
-
-               case OP_ADDENTRY:
-                       rc = DapAddEntry( m->m_conn->c_ad, m->m_uniqid,
-                           (struct ds_addentry_arg *) arg, &di, ROS_ASYNC );
-                       break;
-
-               case OP_REMOVEENTRY:
-                       rc = DapRemoveEntry( m->m_conn->c_ad, m->m_uniqid,
-                           (struct ds_removeentry_arg *) arg, &di, ROS_ASYNC );
-                       break;
-
-               case OP_MODIFYENTRY:
-                       rc = DapModifyEntry( m->m_conn->c_ad, m->m_uniqid,
-                           (struct ds_modifyentry_arg *) arg, &di, ROS_ASYNC );
-                       break;
-
-               case OP_READ:
-                       rc = DapRead( m->m_conn->c_ad, m->m_uniqid,
-                           (struct ds_read_arg *) arg, &di, ROS_ASYNC );
-                       break;
-
-               case OP_MODIFYRDN:
-                       rc = DapModifyRDN( m->m_conn->c_ad, m->m_uniqid,
-                           (struct ds_modifyrdn_arg *) arg, &di, ROS_ASYNC );
-                       break;
-
-               default:
-                       break;
-               }
-
-               Debug( LDAP_DEBUG_TRACE, "operation initiated %d\n", rc, 0,
-                   0 );
-
-               if ( rc == OK )
-                       return( 0 );
-
-               /* 
-                * the operation was not invoked - try rebinding, then 
-                * try it again.
-                */
-
-               (void) dap_unbind( m->m_conn->c_ad );
-
-               if ( do_bind_real( m->m_conn, &bound, &matched )
-                   != LDAP_SUCCESS )
-                       break;
-       }
-
-       m->m_conn->c_ad = -1;
-
-       return( LDAP_UNAVAILABLE );     /* DSA was unreachable */
-}
-
-#ifdef LDAP_DEBUG
-int
-trace_ber(
-    int   tag,
-    int   len,
-    char  *ber,
-    FILE  *trace_file,
-    int          prepend,
-    int   read_pdu     /* If non-zero, PDU was read from client.  0 == PDU is being written */
-)
-{
-       unsigned char   *buf;
-       PS              input_ps  = NULLPS;
-       PE              pe;
-       int             result = -1;
-
-       Debug( LDAP_DEBUG_TRACE, "trace_ber(tag=%#x, ber=%#lx, len=%d)\n", tag,
-           (unsigned long) ber, len );
-
-       if ( (buf = (unsigned char *) malloc( len + 6 )) == NULL ) {
-               fprintf( trace_file, "Unable to allocate memory\n" );
-       } else {
-               if ( prepend ) {
-                       buf[0] = tag;
-                       buf[1] = 0x84;
-                       buf[2] = len >> 24;
-                       buf[3] = len >> 16;
-                       buf[4] = len >> 8;
-                       buf[5] = len;
-                       SAFEMEMCPY( buf + 6, ber, len );
-               } else {
-                       SAFEMEMCPY( buf, ber, len );
-               }
-               if ( (input_ps = ps_alloc( str_open )) == NULLPS )
-                       fprintf( trace_file, "ps_alloc failed\n" );
-               else if ( str_setup( input_ps, (char *)buf, len + 6, 1 ) != OK )
-                       fprintf( trace_file, "str_setup\n" );
-               else if ( (pe = ps2pe( input_ps )) == NULLPE ) {
-                       fprintf(trace_file, "ps2pe: %s\n",
-                           ps_error( input_ps->ps_errno ) );
-                       ber_bprint( (char *) buf, len + 6 );
-               } else {
-#ifdef PEPSY_DUMP
-                       int                             failed = 0;
-                       static LLog                     log = {
-                               "-", NULLCP, NULLCP, LLOG_PDUS,
-                               LLOG_NONE, -1, 0, NOTOK
-                       };
-                       struct type_LDAP_LDAPMessage    *ldap_msg = NULL;
-
-                       if ( decode_LDAP_LDAPMessage(pe, 1, 0, NULL, &ldap_msg)
-                           == -1 ) {
-                               failed = 1;
-                               fprintf( trace_file,
-                                   "Error decoding LDAPMessage:\n  [%s]\n",
-                                   PY_pepy );
-                               fprintf( trace_file, "Here is the PDU:\n" );
-                               vsetfp( trace_file, NULL );
-                               vunknown( pe );
-                       }
-                       if (log.ll_events & LLOG_PDUS) {
-                               pvpdu (&log, print_LDAP_LDAPMessage_P, pe,
-                                   failed ?
-                                   "<Bad LDAPMessage>" : "<LDAPMessage>",
-                                   read_pdu);
-                       }
-/*
-                       PLOGP(&log, LDAP_LDAPMessage, pe, failed ? "<Bad LDAPMessage>" : "<LDAPMessage>", read_pdu);
-*/
-                       if (ldap_msg)
-                               free_LDAP_LDAPMessage(ldap_msg);
-#else
-                       vsetfp( trace_file, NULL );
-                       vunknown( pe );
-#endif
-                       pe_free( pe );
-                       result = 0;
-               }
-               free( buf );
-       }
-
-      if ( input_ps )
-              ps_free( input_ps );
-
-      return( result );
-}
-#endif
diff --git a/servers/ldapd/result.c b/servers/ldapd/result.c
deleted file mode 100644 (file)
index d7a8e14..0000000
+++ /dev/null
@@ -1,371 +0,0 @@
-/* $OpenLDAP$ */
-/*
- * Copyright (c) 1990 Regents of the University of Michigan.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that this notice is preserved and that due credit is given
- * to the University of Michigan at Ann Arbor. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission. This software
- * is provided ``as is'' without express or implied warranty.
- */
-
-#include "portable.h"
-
-#include <stdio.h>
-
-#include <ac/socket.h>
-#include <ac/string.h>
-#include <ac/syslog.h>
-
-#include <quipu/dsap.h>
-#include <quipu/dap2.h>
-#include <quipu/dua.h>
-
-#include "lber.h"
-#include "ldap.h"
-#include "common.h"
-
-/*
- * dsa_response - called by do_queries() when there is activity on one of
- * the DSA associations.  It is passed the association descriptor on which
- * the activity occurred, and the client socket.  It figures out what kind
- * of activity it was (e.g., result of a previously initiated operation,
- * error return, etc), and calls the appropriate routine to send a response
- * to the client, or to continue the operation in some cases (e.g., modify),
- * or to chase a referral and retry an operation.
- *
- * If the client is actually given a response, dsa_response() removes the
- * corresponding request from the queue of outstanding requests.  If the
- * activity was an error referral, a connection is made to the referred to
- * DSA (if possible), and do_request() is called to retry the request.
- */
-
-void
-dsa_response(
-    struct conn        *dsaconn,
-    Sockbuf    *clientsb
-)
-{
-       struct DAPindication    di;
-       struct DSResult         *dr;
-       struct DSError          *de;
-       struct DAPpreject       *dp;
-       struct DAPabort         *da;
-       struct msg              *m = NULL;
-       BerElement              *bercopy;
-       char                    *matched;
-       int                     incr, delete, rc, ldaperr;
-
-       Debug( LDAP_DEBUG_TRACE, "dsa_response on ad %d\n", dsaconn->c_ad, 0,
-           0 );
-       di.di_type = -1;
-       if ( (rc = DapInitWaitRequest( dsaconn->c_ad, OK, &di )) == DONE ) {
-               Debug( LDAP_DEBUG_ANY, "DapInitWaitRequest: DONE\n", 0, 0, 0 );
-               return;
-       }
-
-       Debug( LDAP_DEBUG_ARGS, "DapInitWaitRequest: result %d type %d\n", rc,
-           di.di_type, 0 );
-
-       delete = 1;
-       switch ( di.di_type ) {
-       case DI_RESULT:
-               dr = &di.di_result.dr_res;
-               if ( (m = get_msg( di.di_result.dr_id )) == NULL ) {
-                       Debug( LDAP_DEBUG_ANY, "DI_RESULT: can't find msg %d\n",
-                           di.di_result.dr_id, 0, 0 );
-                       return;
-               }
-
-               Debug( LDAP_DEBUG_ARGS, "DI_RESULT: type %d\n",
-                   dr->result_type, 0, 0 );
-
-               switch ( dr->result_type ) {
-               case OP_COMPARE:
-                       compare_result( clientsb, m, &dr->res_cm );
-                       break;
-
-               case OP_SEARCH:
-                       search_result( clientsb, m, &dr->res_sr );
-                       break;
-
-               case OP_ADDENTRY:
-                       add_result( clientsb, m );
-                       break;
-
-               case OP_REMOVEENTRY:
-                       delete_result( clientsb, m );
-                       break;
-
-               case OP_MODIFYENTRY:
-                       modify_result( clientsb, m );
-                       break;
-
-               case OP_READ:
-                       if ( do_modify2( clientsb, m, &dr->res_rd ) != 0 )
-                               delete = 0;
-                       break;
-
-               case OP_MODIFYRDN:
-                       modrdn_result( clientsb, m );
-                       break;
-
-               default:
-                       break;
-               }
-               ds_res_free( dr );
-               break;
-
-       case DI_ERROR:
-               de = &di.di_error.de_err;
-               if ( (m = get_msg( di.di_error.de_id )) == NULL ) {
-                       Debug( LDAP_DEBUG_ANY, "DI_ERROR: can't find msg %d\n",
-                           di.di_error.de_id, 0, 0 );
-                       return;
-               }
-               if ( m->m_msgtype == LDAP_REQ_SEARCH 
-#ifdef LDAP_COMPAT20
-                   || m->m_msgtype == OLD_LDAP_REQ_SEARCH
-#endif
-                   )
-                       incr = 2;
-               else if ( m->m_msgtype == LDAP_REQ_DELETE )
-                       incr = (LDAP_RES_DELETE - LDAP_REQ_DELETE);
-               else
-                       incr = 1;
-
-               Debug( LDAP_DEBUG_ARGS, "DI_ERROR\n", 0, 0, 0 );
-
-               /* 
-                * chase down referrals, retry operation there.  only do
-                * this for modify-like operations, since we assume the
-                * dsa should have been able to chase anything else that
-                * wasn't really down.
-                */
-
-               if ( de->dse_type == DSE_REFERRAL ) {
-                       int     bound, rc;
-
-                       switch ( m->m_msgtype ) {
-#ifdef LDAP_COMPAT20
-                       case OLD_LDAP_REQ_ADD:
-                       case OLD_LDAP_REQ_MODIFY:
-                       case OLD_LDAP_REQ_MODRDN:
-                       case OLD_LDAP_REQ_DELETE:
-                       case OLD_LDAP_REQ_COMPARE:
-                       case OLD_LDAP_REQ_SEARCH:
-#endif
-#ifdef LDAP_COMPAT30
-                       case LDAP_REQ_DELETE_30:
-#endif
-                       case LDAP_REQ_ADD:
-                       case LDAP_REQ_MODIFY:
-                       case LDAP_REQ_MODRDN:
-                       case LDAP_REQ_DELETE:
-                       case LDAP_REQ_COMPARE:
-                       case LDAP_REQ_SEARCH:
-                               /* chase down the referral */
-                               if ( (rc = chase_referral( clientsb, m, de,
-                                   &matched )) != LDAP_SUCCESS ) {
-                                       send_ldap_msgresult( clientsb,
-                                           m->m_msgtype + incr, m, rc,
-                                           matched, "Can't chase referral" );
-                                       free( matched );
-                                       break;
-                               }
-
-                               /* now retry the operation */
-                               bercopy = ber_dup( m->m_ber );
-                               if ( do_request( clientsb, m, bercopy, &bound )
-                                   == 0 ) {
-                                       del_msg( m );
-                               }
-                               ber_free( bercopy, 0 );
-                               return;
-                               break;
-
-                       default:
-                               send_ldap_msgresult( clientsb, m->m_msgtype +
-                                   incr, m, LDAP_UNAVAILABLE, NULL, "" );
-                               break;
-                       }
-                       break;
-               } else if ( de->dse_type == DSE_ABANDONED ) {
-                       return;
-               }
-               
-
-               /* not a referral - convert the error and return to client */
-               ldaperr = x500err2ldaperr( de, &matched );
-#ifdef LDAP_DEBUG
-               if ( ldap_debug )
-                       print_error( de );      /* prints, then calls free */
-               else
-#endif
-                       ds_error_free( de );
-
-               send_ldap_msgresult( clientsb, m->m_msgtype + incr, m,
-                   ldaperr, matched, "" );
-               free( matched );
-               break;
-
-       case DI_PREJECT:
-               dp = &di.di_preject;
-               if ( (m = get_msg( dp->dp_id )) == NULL ) {
-                       Debug(LDAP_DEBUG_ANY, "DI_PREJECT: can't find msg %d\n",
-                           dp->dp_id, 0, 0 );
-                       return;
-               }
-
-               Debug( LDAP_DEBUG_ARGS, "DI_PREJECT src %d rson %d inf (%s)\n",
-                   dp->dp_source, dp->dp_reason, dp->dp_cc ? dp->dp_data
-                   : "" );
-
-               send_ldap_msgresult( clientsb, m->m_msgtype, m,
-                   LDAP_UNAVAILABLE, NULL, "Got PREJECT from X.500" );
-
-               dsaconn->c_ad = -1;
-               break;
-
-       case DI_ABORT:
-               da = &di.di_abort;
-
-               Debug( LDAP_DEBUG_ARGS, "DI_ABORT src %d rson %d inf (%s)\n",
-                   da->da_source, da->da_reason, da->da_cc ? da->da_data
-                   : "" );
-
-               /* assume this always means more stuff coming... */
-               if ( da->da_reason == DA_ROS )
-                       return;
-
-               /* moby hack - but how else do you tell the difference? */
-               if ( isclosed( dsaconn->c_ad ) ) {
-                       send_msg( dsaconn, clientsb, LDAP_UNAVAILABLE,
-                           "Got ABORT from X.500" );
-                       return;
-               }
-
-               /* notify outstanding requests of the failure */
-               send_msg( dsaconn, clientsb, LDAP_OPERATIONS_ERROR,
-                   "Got unknown ABORT from X.500" );
-
-               dsaconn->c_ad = -1;
-               return;
-               break;
-
-       default:
-               Debug( LDAP_DEBUG_ANY, "unknown result type %d\n", di.di_type,
-                   0, 0 );
-
-               dsaconn->c_ad = -1;     /* better safe... */
-               return;
-               break;
-       }
-
-       if ( delete && m != NULL )
-               del_msg( m );
-}
-
-int
-send_ldap_msgresult(
-    Sockbuf            *sb,
-    unsigned long      tag,
-    struct msg         *m,
-    int                        err,
-    char               *matched,
-    char               *text
-)
-{
-#ifdef LDAP_CONNECTIONLESS
-       if ( m->m_cldap ) {
-               ber_sockbuf_ctrl( sb, LBER_SB_OPT_UDP_SET_DST,
-                   (void *)&m->m_clientaddr );
-
-               Debug( LDAP_DEBUG_TRACE, "UDP response to %s port %d\n", 
-                   inet_ntoa(((struct sockaddr_in *)
-                   &m->m_clientaddr)->sin_addr ),
-                   ((struct sockaddr_in *)&m->m_clientaddr)->sin_port, 0 );
-       }
-#endif
-       return( send_ldap_result( sb, tag, m->m_msgid, err, matched, text ) );
-}
-
-int
-send_ldap_result(
-    Sockbuf            *sb,
-    unsigned long      tag,
-    int                        msgid,
-    int                        err,
-    char               *matched,
-    char               *text
-)
-{
-       BerElement      *ber;
-       int             rc;
-#ifdef LDAP_CONNECTIONLESS
-       int             cldap;
-       cldap = ber_sockbuf_ctrl( sb, LBER_SB_OPT_HAS_IO, &ber_sockbuf_io_udp );
-#endif
-
-       Debug( LDAP_DEBUG_TRACE, "send_ldap_result\n", 0, 0, 0 );
-
-       if ( tag == LBER_DEFAULT )
-#ifdef LDAP_COMPAT20
-               tag = ldap_compat == 20 ? OLD_LBER_SEQUENCE : LBER_SEQUENCE;
-#else
-               tag = LBER_SEQUENCE;
-#endif
-
-       if ( (ber = der_alloc()) == NULL ) {
-               Debug( LDAP_DEBUG_ANY, "der_alloc failed\n", 0, 0, 0 );
-               return( -1 );
-       }
-
-       if ( version != 1 ) {
-#ifdef LDAP_COMPAT20
-               if ( ldap_compat == 20 ) {
-                       rc = ber_printf( ber, "t{it{tess}}", OLD_LBER_SEQUENCE,
-                           msgid, tag, LBER_INTEGER, err,
-                           matched ? matched : "", text );
-               } else
-#endif
-#ifdef LDAP_COMPAT30
-               if ( ldap_compat == 30 ) {
-                       rc = ber_printf( ber, "{it{{ess}}}", msgid, tag, err,
-                           matched ? matched : "", text );
-               } else
-#endif
-#ifdef LDAP_CONNECTIONLESS
-               if ( cldap ) {
-                       rc = ber_printf( ber, "{is{t{ess}}}", msgid, "", tag,
-                           err, matched ? matched : "", text );
-               } else
-#endif
-               rc = ber_printf( ber, "{it{ess}}", msgid, tag, err, matched ?
-                   matched : "", text );
-       } else {
-               /* version 1 always uses the broken stuff */
-               rc = ber_printf( ber, "t{it{is}}", OLD_LBER_SEQUENCE, msgid,
-                   tag, err, text );
-       }
-
-       if ( rc == -1 ) {
-               Debug( LDAP_DEBUG_ANY, "ber_printf failed\n", 0, 0, 0 );
-               return( -1 );
-       }
-
-#ifdef LDAP_DEBUG
-       if ( ldap_debug & LDAP_DEBUG_BER )
-               trace_ber( 0, ber->ber_ptr - ber->ber_buf, ber->ber_buf,
-                   stderr, 0, 0 );
-#endif
-
-       if ( ber_flush( sb, ber, 1 ) != 0 ) {
-               Debug( LDAP_DEBUG_ANY, "ber_flush failed\n", 0, 0, 0 );
-               return( -1 );
-       }
-
-       return( 0 );
-}
diff --git a/servers/ldapd/search.c b/servers/ldapd/search.c
deleted file mode 100644 (file)
index 8ff3c19..0000000
+++ /dev/null
@@ -1,715 +0,0 @@
-/* $OpenLDAP$ */
-/*
- * Copyright (c) 1990 Regents of the University of Michigan.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that this notice is preserved and that due credit is given
- * to the University of Michigan at Ann Arbor. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission. This software
- * is provided ``as is'' without express or implied warranty.
- */
-
-#include "portable.h"
-
-#include <stdio.h>
-
-#include <ac/socket.h>
-#include <ac/string.h>
-
-#include <quipu/commonarg.h>
-#include <quipu/attrvalue.h>
-#include <quipu/ds_error.h>
-#include <quipu/ds_search.h>
-#include <quipu/dap2.h>
-#include <quipu/dua.h>
-
-#include "lber.h"
-#include "ldap.h"
-#include "common.h"
-
-static int     get_filter( BerElement *ber, Filter *filt );
-static int     get_filter_list( BerElement *ber, Filter f );
-static int     get_substring_filter( BerElement *ber, Filter f );
-
-#ifdef LDAP_COMPAT
-#define SEARCHRESTAG   (ldap_compat == 20 ? OLD_LDAP_RES_SEARCH_RESULT : LDAP_RES_SEARCH_RESULT)
-#else
-#define SEARCHRESTAG   LDAP_RES_SEARCH_RESULT
-#endif
-
-int
-do_search(
-    Sockbuf    *clientsb,
-    struct msg *m,
-    BerElement *ber
-)
-{
-       int                     rc, err;
-       int                     deref, attrsonly;
-       int                     sizelimit, timelimit;
-       char                    *base;
-       char                    **attrs;
-       struct ds_search_arg    sa;
-       static CommonArgs       common = default_common_args;
-
-       Debug( LDAP_DEBUG_TRACE, "do_search\n", 0, 0, 0 );
-
-       /*
-        * Parse the search request.  It looks like this:
-        *      SearchRequest := [APPLICATION 3] SEQUENCE {
-        *              baseObject      DistinguishedName,
-        *              scope           ENUMERATED {
-        *                      baseObject      (0),
-        *                      singleLevel     (1),
-        *                      wholeSubtree    (2)
-        *              },
-        *              derefAliases    ENUMERATED {
-        *                      neverDerefaliases       (0),
-        *                      derefInSearching        (1),
-        *                      derefFindingBaseObj     (2),
-        *                      alwaysDerefAliases      (3)
-        *              },
-        *              sizelimit       INTEGER (0 .. 65535),
-        *              timelimit       INTEGER (0 .. 65535),
-        *              attrsOnly       BOOLEAN,
-        *              filter          Filter,
-        *              attributes      SEQUENCE OF AttributeType
-        *      }
-        */
-
-#if ISODEPACKAGE == IC
-#if ICRELEASE > 2
-       DAS_SearchArgument_INIT( &sa );
-#endif
-#endif
-
-       if ( ber_scanf( ber, "{aiiiib", &base, &sa.sra_subset, &deref,
-           &sizelimit, &timelimit, &attrsonly ) == LBER_ERROR ) {
-               send_ldap_msgresult( clientsb, SEARCHRESTAG, m,
-                   LDAP_PROTOCOL_ERROR, NULL, "" );
-               return( 0 );
-       }
-
-       sa.sra_baseobject = ldap_str2dn( base );
-       if ( sa.sra_baseobject == NULLDN && *base != '\0' ) {
-               free( base );
-               send_ldap_msgresult( clientsb, SEARCHRESTAG, m,
-                   LDAP_INVALID_DN_SYNTAX, NULL, "" );
-               return( 0 );
-       }
-       free( base );
-
-       sa.sra_common = common; /* struct copy */
-       sa.sra_searchaliases = (deref == LDAP_DEREF_SEARCHING ||
-           deref == LDAP_DEREF_ALWAYS);
-       if ( deref == LDAP_DEREF_NEVER || deref == LDAP_DEREF_SEARCHING )
-               sa.sra_common.ca_servicecontrol.svc_options |=
-                   SVC_OPT_DONTDEREFERENCEALIAS;
-
-       sa.sra_common.ca_servicecontrol.svc_sizelimit = (sizelimit == 0 ?
-           SVC_NOSIZELIMIT : sizelimit);
-
-       sa.sra_common.ca_servicecontrol.svc_timelimit = (timelimit == 0 ?
-           SVC_NOTIMELIMIT : timelimit);
-
-       sa.sra_eis.eis_infotypes = (attrsonly ? EIS_ATTRIBUTETYPESONLY :
-           EIS_ATTRIBUTESANDVALUES);
-
-       /* search filter */
-       if ( (err = get_filter( ber, &sa.sra_filter )) != 0 ) {
-               send_ldap_msgresult( clientsb, SEARCHRESTAG, m,
-                   err, NULL, "Bad search filter" );
-               return( 0 );
-       }
-
-#ifdef LDAP_DEBUG
-       if ( ldap_debug & LDAP_DEBUG_ARGS ) {
-               PS      ps;
-
-               ps = ps_alloc( std_open );
-               std_setup( ps, stderr );
-               ps_print( ps, "Filter: " );
-               fi_print( ps, sa.sra_filter, EDBOUT );
-               ps_print( ps, "\n" );
-               ps_free( ps );
-       }
-#endif
-
-       /* attrs to return */
-       attrs = NULL;
-       if ( ber_scanf( ber, "{v}}", &attrs ) == LBER_ERROR ) {
-               send_ldap_msgresult( clientsb, SEARCHRESTAG, m,
-                   LDAP_PROTOCOL_ERROR, NULL, "" );
-               return( 0 );
-       }
-       sa.sra_eis.eis_select = NULLATTR;
-       if ( attrs == NULL ) {
-               sa.sra_eis.eis_allattributes = 1;
-       } else {
-               Attr_Sequence   as;
-               int             i;
-
-               sa.sra_eis.eis_allattributes = 0;
-               for ( i = 0; attrs[i] != NULL; i++ ) {
-                       AttributeType   type;
-
-                       if ( (type = AttrT_new( attrs[i] )) == NULLAttrT ) {
-                               Debug( LDAP_DEBUG_TRACE, "unknown attr (%s)\n",
-                                   attrs[i], 0, 0 );
-                               continue;
-                       }
-
-                       as = as_comp_alloc();
-                       as->attr_type = type;
-                       as->attr_acl = NULLACL_INFO;
-                       as->attr_link = NULLATTR;
-                       as->attr_value = NULLAV;
-
-                       sa.sra_eis.eis_select = as_merge( as,
-                           sa.sra_eis.eis_select );
-               }
-
-               /* complain only if we know about none of the attrs */
-               if ( sa.sra_eis.eis_select == NULLATTR ) {
-                       send_ldap_msgresult( clientsb, SEARCHRESTAG,
-                           m, LDAP_UNDEFINED_TYPE, NULL, attrs[0] );
-                       charlist_free( attrs );
-                       return( 0 );
-               }
-
-               charlist_free( attrs );
-       }
-
-       rc = initiate_dap_operation( OP_SEARCH, m, &sa );
-
-#ifdef LDAP_CONNECTIONLESS
-       if (  m->m_cldap )
-               m->m_searchbase = sa.sra_baseobject;
-       else
-#endif /* LDAP_CONNECTIONLESS */
-               dn_free( sa.sra_baseobject );
-
-       filter_free( sa.sra_filter );
-       as_free( sa.sra_eis.eis_select );
-
-       if ( rc != 0 ) {
-               send_ldap_msgresult( clientsb, SEARCHRESTAG, m,
-                   rc, NULL, "" );
-               return( 0 );
-       }
-
-       return( 1 );
-}
-
-static int
-get_filter( BerElement *ber, Filter *filt )
-{
-       unsigned long   tag, len;
-       int             err;
-       char            typestr[64];
-       Filter          f;
-
-       Debug( LDAP_DEBUG_TRACE, "get_filter\n", 0, 0, 0 );
-
-       /*
-        * A filter looks like this coming in:
-        *      Filter ::= CHOICE {
-        *              and             [0]     SET OF Filter,
-        *              or              [1]     SET OF Filter,
-        *              not             [2]     Filter,
-        *              equalityMatch   [3]     AttributeValueAssertion,
-        *              substrings      [4]     SubstringFilter,
-        *              greaterOrEqual  [5]     AttributeValueAssertion,
-        *              lessOrEqual     [6]     AttributeValueAssertion,
-        *              present         [7]     AttributeType,,
-        *              approxMatch     [8]     AttributeValueAssertion
-        *      }
-        *
-        *      SubstringFilter ::= SEQUENCE {
-        *              type               AttributeType,
-        *              SEQUENCE OF CHOICE {
-        *                      initial          [0] IA5String,
-        *                      any              [1] IA5String,
-        *                      final            [2] IA5String
-        *              }
-        *      }
-        */
-
-       f = filter_alloc();
-       *filt = f;
-       f->flt_next = NULLFILTER;
-
-       err = 0;
-       switch (tag = ber_peek_tag( ber, &len )) {
-#ifdef LDAP_COMPAT20
-       case OLD_LDAP_FILTER_EQUALITY:
-#endif
-       case LDAP_FILTER_EQUALITY:
-               Debug( LDAP_DEBUG_ARGS, "EQUALITY\n", 0, 0, 0 );
-               f->flt_type = FILTER_ITEM;
-               f->FUITEM.fi_type = FILTERITEM_EQUALITY;
-#ifdef LDAP_COMPAT30
-               if ( ldap_compat == 30 )
-                       (void) ber_skip_tag( ber, &len );
-#endif
-
-               if ( (err = get_ava( ber, &f->FUITEM.UNAVA )) != 0 ) {
-                       free( f );
-                       return( err );
-               }
-               break;
-
-#ifdef LDAP_COMPAT20
-       case OLD_LDAP_FILTER_SUBSTRINGS:
-#endif
-       case LDAP_FILTER_SUBSTRINGS:
-               Debug( LDAP_DEBUG_ARGS, "SUBSTRINGS\n", 0, 0, 0 );
-               err = get_substring_filter( ber, f );
-               break;
-
-#ifdef LDAP_COMPAT20
-       case OLD_LDAP_FILTER_GE:
-#endif
-       case LDAP_FILTER_GE:
-               Debug( LDAP_DEBUG_ARGS, "GE\n", 0, 0, 0 );
-               f->flt_type = FILTER_ITEM;
-               f->FUITEM.fi_type = FILTERITEM_GREATEROREQUAL;
-#ifdef LDAP_COMPAT30
-               if ( ldap_compat == 30 )
-                       (void) ber_skip_tag( ber, &len );
-#endif
-               if ( (err = get_ava( ber, &f->FUITEM.UNAVA )) != 0 ) {
-                       free( f );
-                       return( err );
-               }
-               break;
-
-#ifdef LDAP_COMPAT20
-       case OLD_LDAP_FILTER_LE:
-#endif
-       case LDAP_FILTER_LE:
-               Debug( LDAP_DEBUG_ARGS, "LE\n", 0, 0, 0 );
-               f->flt_type = FILTER_ITEM;
-               f->FUITEM.fi_type = FILTERITEM_LESSOREQUAL;
-#ifdef LDAP_COMPAT30
-               if ( ldap_compat == 30 )
-                       (void) ber_skip_tag( ber, &len );
-#endif
-
-               if ( (err = get_ava( ber, &f->FUITEM.UNAVA )) != 0 ) {
-                       free( f );
-                       return( err );
-               }
-               break;
-
-#ifdef LDAP_COMPAT20
-       case OLD_LDAP_FILTER_PRESENT:
-#endif
-#ifdef LDAP_COMPAT30
-       case LDAP_FILTER_PRESENT_30:
-#endif
-       case LDAP_FILTER_PRESENT:
-               Debug( LDAP_DEBUG_ARGS, "PRESENT\n", 0, 0, 0 );
-               f->flt_type = FILTER_ITEM;
-               f->FUITEM.fi_type = FILTERITEM_PRESENT;
-               len = sizeof(typestr);
-#ifdef LDAP_COMPAT30
-               if ( ldap_compat == 30 )
-                       (void) ber_skip_tag( ber, &len );
-#endif
-
-               if ( ber_scanf( ber, "s", typestr, &len ) == LBER_ERROR )
-                       return( LDAP_PROTOCOL_ERROR );
-               if ( (f->FUITEM.UNTYPE = str2AttrT( typestr )) == NULLAttrT )
-                       return( LDAP_UNDEFINED_TYPE );
-               break;
-
-#ifdef LDAP_COMPAT20
-       case OLD_LDAP_FILTER_APPROX:
-#endif
-       case LDAP_FILTER_APPROX:
-               Debug( LDAP_DEBUG_ARGS, "APPROX\n", 0, 0, 0 );
-               f->flt_type = FILTER_ITEM;
-               f->FUITEM.fi_type = FILTERITEM_APPROX;
-#ifdef LDAP_COMPAT30
-               if ( ldap_compat == 30 )
-                       (void) ber_skip_tag( ber, &len );
-#endif
-
-               if ( (err = get_ava( ber, &f->FUITEM.UNAVA )) != 0 ) {
-                       free( f );
-                       return( err );
-               }
-               break;
-
-#ifdef LDAP_COMPAT20
-       case OLD_LDAP_FILTER_AND:
-#endif
-       case LDAP_FILTER_AND:
-               Debug( LDAP_DEBUG_ARGS, "AND\n", 0, 0, 0 );
-               f->flt_type = FILTER_AND;
-               err = get_filter_list( ber, f );
-               break;
-
-#ifdef LDAP_COMPAT20
-       case OLD_LDAP_FILTER_OR:
-#endif
-       case LDAP_FILTER_OR:
-               Debug( LDAP_DEBUG_ARGS, "OR\n", 0, 0, 0 );
-               f->flt_type = FILTER_OR;
-               err = get_filter_list( ber, f );
-               break;
-
-#ifdef LDAP_COMPAT20
-       case OLD_LDAP_FILTER_NOT:
-#endif
-       case LDAP_FILTER_NOT:
-               Debug( LDAP_DEBUG_ARGS, "NOT\n", 0, 0, 0 );
-               f->flt_type = FILTER_NOT;
-               (void) ber_skip_tag( ber, &len );
-               err = get_filter( ber, &f->FUFILT );
-               break;
-
-       default:
-               Debug( LDAP_DEBUG_ANY, "unknown filter type %lu\n", tag, 0, 0 );
-               free( f );
-               return( LDAP_PROTOCOL_ERROR );
-               break;
-       }
-
-       Debug( LDAP_DEBUG_TRACE, "end get_filter\n", 0, 0, 0 );
-       return( err );
-}
-
-static int
-get_filter_list( BerElement *ber, Filter f )
-{
-       Filter          new, tail;
-       int             err;
-       unsigned long   tag, len;
-       char            *last;
-
-       Debug( LDAP_DEBUG_TRACE, "get_filter_list\n", 0, 0, 0 );
-
-#ifdef LDAP_COMPAT30
-       if ( ldap_compat == 30 )
-               (void) ber_skip_tag( ber, &len );
-#endif
-       f->FUFILT = tail = NULLFILTER;
-       for ( tag = ber_first_element( ber, &len, &last ); tag != LBER_DEFAULT;
-           tag = ber_next_element( ber, &len, last ) ) {
-               if ( (err = get_filter( ber, &new )) != 0 )
-                       return( err );
-
-               if ( f->FUFILT == NULLFILTER ) {
-                       f->FUFILT = new;
-               } else {
-                       tail->flt_next = new;
-               }
-               tail = new;
-       }
-
-       Debug( LDAP_DEBUG_TRACE, "end get_filter_list\n", 0, 0, 0 );
-       return( 0 );
-}
-
-static int
-get_substring_filter( BerElement *ber, Filter f )
-{
-       unsigned long   tag, len;
-       char            typestr[64];
-       AttributeType   type;
-       char            *valstr, *last;
-       AttributeValue  value;
-
-       Debug( LDAP_DEBUG_TRACE, "get_substring_filter\n", 0, 0, 0 );
-
-#ifdef LDAP_COMPAT30
-       if ( ldap_compat == 30 )
-               (void) ber_skip_tag( ber, &len );
-#endif
-
-       f->flt_type = FILTER_ITEM;
-       f->FUITEM.fi_type = FILTERITEM_SUBSTRINGS;
-       len = sizeof(typestr);
-       if ( ber_scanf( ber, "{s", typestr, &len ) == LBER_ERROR ) {
-               return( LDAP_PROTOCOL_ERROR );
-       }
-       if ( (type = str2AttrT( typestr )) == NULLAttrT ) {
-               return( LDAP_UNDEFINED_TYPE );
-       }
-       f->FUITEM.UNSUB.fi_sub_type = type;
-       f->FUITEM.UNSUB.fi_sub_initial = NULLAV;
-       f->FUITEM.UNSUB.fi_sub_any = NULLAV;
-       f->FUITEM.UNSUB.fi_sub_final = NULLAV;
-       for ( tag = ber_first_element( ber, &len, &last ); tag != LBER_DEFAULT;
-           tag = ber_next_element( ber, &len, last ) ) {
-               AV_Sequence     avs, any_end;
-
-#ifdef LDAP_COMPAT30
-               if ( ldap_compat == 30 ) {
-                       if ( ber_scanf( ber, "{a}", &valstr ) == LBER_ERROR ) {
-                               return( LDAP_PROTOCOL_ERROR );
-                       }
-               } else
-#endif
-                       if ( ber_scanf( ber, "a", &valstr ) == LBER_ERROR ) {
-                               return( LDAP_PROTOCOL_ERROR );
-                       }
-
-               value = ldap_str2AttrV( valstr, type->oa_syntax );
-               free( valstr );
-
-               if ( value == NULLAttrV ) {
-                       return( LDAP_INVALID_SYNTAX );
-               }
-
-               if ( (avs = avs_comp_new( value )) == NULLAV )
-                       return( LDAP_OPERATIONS_ERROR );
-
-               switch ( tag ) {
-#ifdef LDAP_COMPAT20
-               case OLD_LDAP_SUBSTRING_INITIAL:
-#endif
-#ifdef LDAP_COMPAT30
-               case LDAP_SUBSTRING_INITIAL_30:
-#endif
-               case LDAP_SUBSTRING_INITIAL:
-                       Debug( LDAP_DEBUG_ARGS, "  INITIAL\n", 0, 0, 0 );
-                       if ( f->FUITEM.UNSUB.fi_sub_initial != NULLAV
-                           && f->FUITEM.UNSUB.fi_sub_initial->avseq_next
-                           != NULLAV ) {
-                               return( LDAP_PROTOCOL_ERROR );
-                       }
-                       f->FUITEM.UNSUB.fi_sub_initial = avs;
-                       break;
-
-#ifdef LDAP_COMPAT20
-               case OLD_LDAP_SUBSTRING_ANY:
-#endif
-#ifdef LDAP_COMPAT30
-               case LDAP_SUBSTRING_ANY_30:
-#endif
-               case LDAP_SUBSTRING_ANY:
-                       Debug( LDAP_DEBUG_ARGS, "  ANY\n", 0, 0, 0 );
-       
-                       if (f->FUITEM.UNSUB.fi_sub_any != NULLAV) {
-                               any_end->avseq_next = avs;
-                       } else {
-                               f->FUITEM.UNSUB.fi_sub_any = avs;
-                       }
-
-                       any_end = avs;
-                       break;
-
-#ifdef LDAP_COMPAT20
-               case OLD_LDAP_SUBSTRING_FINAL:
-#endif
-#ifdef LDAP_COMPAT30
-               case LDAP_SUBSTRING_FINAL_30:
-#endif
-               case LDAP_SUBSTRING_FINAL:
-                       Debug( LDAP_DEBUG_ARGS, "  FINAL\n", 0, 0, 0 );
-                       if ( f->FUITEM.UNSUB.fi_sub_final != NULLAV
-                           && f->FUITEM.UNSUB.fi_sub_final->avseq_next
-                           != NULLAV ) {
-                               return( LDAP_PROTOCOL_ERROR );
-                       }
-                       f->FUITEM.UNSUB.fi_sub_final = avs;
-                       break;
-
-               default:
-                       Debug( LDAP_DEBUG_ARGS, "  unknown type\n", tag, 0, 0 );
-                       return( LDAP_PROTOCOL_ERROR );
-               }
-       }
-
-       Debug( LDAP_DEBUG_TRACE, "end get_substring_filter\n", 0, 0, 0 );
-       return( 0 );
-}
-
-void
-search_result(
-    Sockbuf                    *sb,
-    struct msg                 *m,
-    struct ds_search_result    *sr
-)
-{
-       EntryInfo       *e;
-       BerElement      *ber;
-       int             rc;
-
-       Debug( LDAP_DEBUG_TRACE, "search_result\n", 0, 0, 0 );
-
-       ber = NULL;
-
-       if ( ! sr->srr_correlated ) {
-               Debug( LDAP_DEBUG_ARGS, "correlating results\n", 0, 0, 0 );
-               correlate_search_results( sr );
-       }
-
-#ifdef LDAP_CONNECTIONLESS
-       if ( m->m_cldap ) {
-               if ((ber = der_alloc()) == NULL ) {
-                       send_ldap_msgresult( sb, SEARCHRESTAG, m,
-                           LDAP_OPERATIONS_ERROR, NULL, "der_alloc" );
-                       return;
-               }
-               if ( ber_printf( ber, "t{is{", LBER_SEQUENCE, m->m_msgid,
-                   "" ) == -1 ) {
-                       send_ldap_msgresult( sb, SEARCHRESTAG, m,
-                           LDAP_OPERATIONS_ERROR, NULL, "ber_printf" );
-                       return;
-               }
-       }
-#endif
-
-       for ( e = sr->CSR_entries; e != NULLENTRYINFO; e = e->ent_next ) {
-               Debug( LDAP_DEBUG_ARGS, "\tentry:\n", 0, 0, 0 );
-
-#ifdef LDAP_CONNECTIONLESS
-               if ( !m->m_cldap )
-#endif /* LDAP_CONNECTIONLESS */
-
-                       if ( (ber = der_alloc()) == NULL ) {
-                               send_ldap_msgresult( sb, SEARCHRESTAG, m,
-                                   LDAP_OPERATIONS_ERROR, NULL, "der_alloc" );
-                               return;
-                       }
-
-#ifdef LDAP_COMPAT20
-               if ( version == 1 ) {
-                       if ( ber_printf( ber, "t{it{", OLD_LBER_SEQUENCE,
-                           m->m_msgid, OLD_LDAP_RES_SEARCH_ENTRY ) == -1 ) {
-                               send_ldap_msgresult( sb, SEARCHRESTAG, m,
-                                   LDAP_OPERATIONS_ERROR, NULL, "ber_printf" );
-                               return;
-                       }
-               } else
-#endif
-#ifdef LDAP_COMPAT30
-               if ( ldap_compat == 30 ) {
-                       if ( ber_printf( ber, "{it{{", m->m_msgid,
-                           LDAP_RES_SEARCH_ENTRY ) == -1 ) {
-                               send_ldap_msgresult( sb, SEARCHRESTAG, m,
-                                   LDAP_OPERATIONS_ERROR, NULL, "ber_printf" );
-                               return;
-                       }
-               } else
-#endif
-#ifdef LDAP_CONNECTIONLESS
-               if ( m->m_cldap )
-                       rc = ber_printf( ber, "t{", LDAP_RES_SEARCH_ENTRY );
-               else
-#endif /* LDAP_CONNECTIONLESS */
-                       rc = ber_printf( ber, "{it{", m->m_msgid,
-                           LDAP_RES_SEARCH_ENTRY );
-
-               if ( rc == -1 ) {
-                       send_ldap_msgresult( sb, SEARCHRESTAG, m,
-                           LDAP_OPERATIONS_ERROR, NULL, "ber_printf" );
-                       return;
-               }
-
-#ifdef LDAP_CONNECTIONLESS
-               if (  m->m_cldap )
-                       rc = encode_dn( ber, e->ent_dn, m->m_searchbase );
-#endif /* LDAP_CONNECTIONLESS */
-               else
-                       rc = encode_dn( ber, e->ent_dn, NULLDN );
-
-               if ( rc == -1 ) {
-                       send_ldap_msgresult( sb, SEARCHRESTAG, m,
-                           LDAP_OPERATIONS_ERROR, NULL, "encode_dn" );
-                       return;
-               }
-
-               if ( encode_attrs( ber, e->ent_attr ) == -1 ) {
-                       send_ldap_msgresult( sb, SEARCHRESTAG, m,
-                           LDAP_OPERATIONS_ERROR, NULL, "encode_attrs" );
-                       return;
-               }
-
-#ifdef LDAP_COMPAT20
-               if ( version == 1 ) {
-                       if ( ber_printf( ber, "}}" ) == -1 ) {
-                               send_ldap_msgresult( sb, SEARCHRESTAG, m,
-                                   LDAP_OPERATIONS_ERROR, NULL,
-                                   "ber_printf 2" );
-                               return;
-                       }
-               } else
-#endif
-#ifdef LDAP_COMPAT30
-               if ( ldap_compat == 30 ) {
-                       if ( ber_printf( ber, "}}}" ) == -1 ) {
-                               send_ldap_msgresult( sb, SEARCHRESTAG, m,
-                                   LDAP_OPERATIONS_ERROR, NULL,
-                                   "ber_printf 2" );
-                               return;
-                       }
-               } else
-#endif
-#ifdef LDAP_CONNECTIONLESS
-               if ( m->m_cldap )
-                       rc = ber_printf( ber, "}" );
-               else
-#endif /* LDAP_CONNECTIONLESS */
-                       rc = ber_printf( ber, "}}" );
-
-               if ( rc == -1 ) {
-                       send_ldap_msgresult( sb, SEARCHRESTAG, m,
-                           LDAP_OPERATIONS_ERROR, NULL, "ber_printf 2" );
-                       return;
-               }
-
-#ifdef LDAP_DEBUG
-               if ( ldap_debug & LDAP_DEBUG_BER )
-                       trace_ber( 0, ber->ber_ptr - ber->ber_buf,
-                           ber->ber_buf, stderr, 0, 0 );
-#endif
-
-#ifdef LDAP_CONNECTIONLESS
-               if ( !m->m_cldap )
-#endif
-                       (void) ber_flush( sb, ber, 1 );
-       }
-
-       switch ( sr->CSR_limitproblem ) {
-       case LSR_NOLIMITPROBLEM:
-               rc = LDAP_SUCCESS;
-               break;
-       case LSR_TIMELIMITEXCEEDED:
-               rc = LDAP_TIMELIMIT_EXCEEDED;
-               break;
-       case LSR_SIZELIMITEXCEEDED:
-       case LSR_ADMINSIZEEXCEEDED:
-               rc = LDAP_SIZELIMIT_EXCEEDED;
-               break;
-       }
-
-       Debug( LDAP_DEBUG_ARGS, "\tresult:\n", 0, 0, 0 );
-
-#ifdef LDAP_CONNECTIONLESS
-       if ( m->m_cldap ) {
-               if ( ber_printf( ber, "t{ess}}}", SEARCHRESTAG, rc, "", "" )
-                   == -1 ) {
-                       send_ldap_msgresult( sb, SEARCHRESTAG, m,
-                           LDAP_OPERATIONS_ERROR, NULL, "ber_printf" );
-                       return;
-               }
-               ber_sockbuf_ctrl( sb, LBER_SB_OPT_UDP_SET_DST,
-                   (void *)&m->m_clientaddr );
-
-               if ( ber_flush( sb, ber, 1 ) != 0 ) {
-                   send_ldap_msgresult( sb, SEARCHRESTAG, m, 
-                       LDAP_RESULTS_TOO_LARGE, NULL, "ber_flush" );
-               }
-       } else
-#endif
-       send_ldap_msgresult( sb, SEARCHRESTAG, m, rc, NULL, "" );
-
-       return;
-}
diff --git a/servers/ldapd/syntax.c b/servers/ldapd/syntax.c
deleted file mode 100644 (file)
index 005fb78..0000000
+++ /dev/null
@@ -1,1039 +0,0 @@
-/* $OpenLDAP$ */
-/*
- * Copyright (c) 1990 Regents of the University of Michigan.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that this notice is preserved and that due credit is given
- * to the University of Michigan at Ann Arbor. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission. This software
- * is provided ``as is'' without express or implied warranty.
- */
-
-#include "portable.h"
-
-#include <stdio.h>
-
-#include <ac/ctype.h>
-#include <ac/socket.h>
-#include <ac/string.h>
-
-#include <quipu/commonarg.h>
-#include <quipu/attrvalue.h>
-#include <quipu/ds_error.h>
-#include <quipu/ds_search.h>
-#include <quipu/dap2.h>
-#include <quipu/dua.h>
-extern oid_table_attr *name2attr( char * );
-/*extern AttributeValue str_at2AttrV( char *, IF_AttributeType * );*/
-
-#include "lber.h"
-#include "../../libraries/liblber/lber-int.h"  /* get struct berelement */
-#include "ldap.h"
-#include "common.h"
-
-short  ldap_photo_syntax;
-short  ldap_jpeg_syntax;
-short  ldap_jpeg_nonfile_syntax;
-short  ldap_audio_syntax;
-short  ldap_dn_syntax;
-short  ldap_postaladdress_syntax;
-short  ldap_acl_syntax;
-short  ldap_mtai_syntax;
-short  ldap_rts_cred_syntax;
-short  ldap_rtl_syntax;
-short  ldap_mailbox_syntax;
-short  ldap_caseignorelist_syntax;
-short  ldap_caseexactstring_syntax;
-short  ldap_certif_syntax;
-short  ldap_iattr_syntax;
-short  ldap_telex_syntax;
-short  ldap_octetstring_syntax;
-short  ldap_deliverymethod_syntax;
-short  ldap_facsimileTelephoneNumber_syntax;
-short  ldap_presentationAddress_syntax;
-short  ldap_teletexTerminalIdentifier_syntax;
-short  ldap_searchGuide_syntax;
-short  ldap_dLSubmitPermission_syntax;
-
-static void    de_t61( char *s, int t61mark );
-static int     syntax_is_string( short syntax );
-
-static int
-get_one_syntax( char *attrib, int required )
-{
-       oid_table_attr  *p;
-
-       if ( (p = name2attr( attrib )) != (oid_table_attr *) 0 )
-           return( p->oa_syntax );
-
-       if ( !required )
-           return( -1 );
-
-       Debug( LDAP_DEBUG_ANY, "name2attr (%s) failed - exiting\n", attrib,
-           0, 0 );
-
-       log_and_exit( 1 );
-}
-
-void
-get_syntaxes( void )
-{
-       Debug( LDAP_DEBUG_TRACE, "get_syntaxes\n", 0, 0, 0 );
-
-       ldap_photo_syntax = get_one_syntax( "photo", 0 );
-       ldap_jpeg_syntax = get_one_syntax( "jpegPhoto", 0 );
-       ldap_jpeg_nonfile_syntax = str2syntax( "jpeg" );
-       ldap_audio_syntax = get_one_syntax( "audio", 0 );
-       ldap_postaladdress_syntax = get_one_syntax( "postaladdress", 0 );
-       ldap_dn_syntax = get_one_syntax( "aliasedObjectName", 1 );
-       ldap_acl_syntax = get_one_syntax( "acl", 0 );
-       ldap_mtai_syntax = get_one_syntax( "mTAInfo", 0 );
-       ldap_rts_cred_syntax= get_one_syntax( "initiatingRTSCredentials", 0 );
-       ldap_rtl_syntax= get_one_syntax( "routingTreeList", 0 );
-       ldap_mailbox_syntax = get_one_syntax( "otherMailbox", 0 );
-       ldap_caseignorelist_syntax = str2syntax( "CaseIgnoreList" );
-       ldap_caseexactstring_syntax = str2syntax( "caseexactstring" );
-       ldap_octetstring_syntax = str2syntax( "OctetString" );
-       ldap_deliverymethod_syntax = str2syntax( "DeliveryMethod" );
-       ldap_iattr_syntax = get_one_syntax( "inheritedAttribute", 0 );
-       ldap_certif_syntax = get_one_syntax( "userCertificate", 0 );
-       ldap_telex_syntax = get_one_syntax( "telexNumber", 0 );
-        ldap_facsimileTelephoneNumber_syntax =
-            get_one_syntax( "facsimileTelephoneNumber", 0 );
-        ldap_presentationAddress_syntax =
-            get_one_syntax( "presentationAddress", 0 );
-        ldap_teletexTerminalIdentifier_syntax =
-            get_one_syntax( "teletexTerminalIdentifier", 0 );
-        ldap_searchGuide_syntax = get_one_syntax( "searchGuide", 0 );
-        ldap_dLSubmitPermission_syntax =
-            get_one_syntax( "mhsDLSubmitPermissions", 0 );
-
-       certif_init();  /* initialize certificate syntax handler */
-}
-
-/*
- *  From RFC 1779 "A String Representation of Distinguished Names"
- *
- *                       Key     Attribute (X.520 keys)
- *                       ------------------------------
- *                       CN      CommonName
- *                       L       LocalityName
- *                       ST      StateOrProvinceName
- *                       O       OrganizationName
- *                       OU      OrganizationalUnitName
- *                       C       CountryName
- *                       STREET  StreetAddress
- *
- *
- *                      Table 1:  Standardised Keywords
- *
- *   There is an escape mechanism from the normal user oriented form, so
- *   that this syntax may be used to print any valid distinguished name.
- *
- *   1.  Attributes types are represented in a (big-endian) dotted
- *       notation.  (e.g., OID.2.6.53).
- *
- */
-static void
-attr_key_rfc1779(
-    AttributeType   at,
-    char            *key    /* return key, caller allocated */
-)
-{
-    char    *x;
-
-    x = attr2name_aux ( at );
-
-    if ( x == NULL ) {
-        x = "?";
-    } else if ( isdigit ( (unsigned char) *x ) ) {
-        sprintf ( key, "OID.%s", x );
-        return;
-    } else if (strcasecmp(x,"commonName")==0) {
-        x = "CN";
-    } else if (strcasecmp(x,"localityName")==0) {
-        x = "l";
-    } else if (strcasecmp(x,"stateOrProvinceName")==0) {
-        x = "st";
-    } else if (strcasecmp(x,"organizationName")==0) {
-        x = "o";
-    } else if (strcasecmp(x,"organizationalUnitName")==0) {
-        x = "ou";
-    } else if (strcasecmp(x,"countryName")==0) {
-        x = "c";
-    } else if (strcasecmp(x,"streetAddress")==0) {
-        x = "street";
-    }
-
-    strcpy ( key, x );
-}
-
-#define SEPARATOR(c)   ((c) == ',' || (c) == ';')
-#define SPACE(c)       ((c) == ' ' || (c) == '\n')
-
-int
-dn_print_real(
-    PS ps,
-    DN dn,
-    int        format
-)
-{
-       RDN     rdn;
-       int     firstrdn;
-       char    *value;
-       PS      rps;
-        char    key[512];
-
-       if ( dn == NULLDN )
-               return( 0 );
-
-       if ( dn->dn_parent != NULLDN ) {
-               dn_print_real( ps, dn->dn_parent, format );
-               ps_print( ps, ", " );
-       }
-
-       if ( (rps = ps_alloc( str_open )) == NULLPS )
-               return( -1 );
-       if ( str_setup( rps, NULLCP, 0, 0 ) == NOTOK )
-               return( -1 );
-
-       firstrdn = 1;
-       for ( rdn = dn->dn_rdn; rdn != NULLRDN; rdn = rdn->rdn_next ) {
-               if ( firstrdn )
-                       firstrdn = 0;
-               else
-                       ps_print( ps, " + " );
-
-                attr_key_rfc1779 ( rdn->rdn_at, key );
-
-                ps_print ( ps, key );
-               ps_print( ps, "=" );
-
-               if ( rdn->rdn_at->oa_syntax == ldap_dn_syntax ) {
-                       dn_print_real( rps, (DN) rdn->rdn_av.av_struct,
-                           format );
-                       *rps->ps_ptr = '\0';
-                       value = rps->ps_base;
-               } else {
-                       AttrV_print( rps, &rdn->rdn_av, EDBOUT );
-                       *rps->ps_ptr = '\0';
-                       if ( rps->ps_ptr - rps->ps_base >= 5 &&
-                           strncmp( rps->ps_base, "{ASN}", 5 ) == 0 ) {
-                               *rps->ps_base = '#';
-                               SAFEMEMCPY( rps->ps_base + 1, rps->ps_base + 5,
-                                       rps->ps_ptr - rps->ps_base - 4 );
-                       }
-                       value = rps->ps_base;
-                       de_t61( value, 0 );
-               }
-
-               /*
-                * ,+="\\\n all go in quotes.  " and \\ need to
-                * be preceeded by \\.
-                */
-
-               if ( strpbrk( value, ",+=\"\\\n" ) != NULL || SPACE( value[0] )
-                   || SPACE( value[max( strlen(value) - 1, (size_t) 0 )] ) ) {
-                       char    *p, *t, *tmp;
-                       int     specialcount;
-
-                       ps_print( ps, "\"" );
-
-                       specialcount = 0;
-                       for ( p = value; *p != '\0'; p++ ) {
-                               if ( *p == '"' || *p == '\\' ) {
-                                       specialcount++;
-                               }
-                       }
-                       if ( specialcount > 0 ) {
-                               tmp = smalloc( strlen( value ) + specialcount
-                                   + 1 );
-                               for ( p = value, t = tmp; *p != '\0'; p++ ) {
-                                       switch ( *p ) {
-                                       case '"':
-                                       case '\\':
-                                               *t++ = '\\';
-                                               /* FALL THROUGH */
-                                       default:
-                                               *t++ = *p;
-                                       }
-                               }
-                               *t = '\0';
-                               ps_print( ps, tmp );
-                               free( tmp );
-                       } else {
-                               ps_print( ps, value );
-                       }
-
-                       ps_print( ps, "\"" );
-               } else {
-                       ps_print( ps, value );
-               }
-
-               rps->ps_ptr = rps->ps_base;
-       }
-
-       ps_free( rps );
-
-       return( 0 );
-}
-
-void
-ldap_dn_print(
-    PS ps,
-    DN dn,
-    DN base,   /* if non-NULL, subsitute '*' for base (for CLDAP) */
-    int        format
-)
-{
-       DN      tmpdn;
-       int     addstar;
-
-       Debug( LDAP_DEBUG_TRACE, "ldap_dn_print\n", 0, 0, 0 );
-
-       addstar = 0;
-       if ( base != NULLDN && dn != NULL ) {
-               for ( tmpdn = dn; base != NULLDN && tmpdn != NULLDN;
-                   base = base->dn_parent, tmpdn = tmpdn->dn_parent ) {
-                       if ( dn_comp_cmp( base, tmpdn ) == NOTOK ) {
-                               break;
-                       }
-               }
-               if (( addstar = ( base == NULLDN && tmpdn != NULL ))) {
-                       dn = tmpdn;
-               }
-       }
-
-       dn_print_real( ps, dn, format );
-       if ( addstar ) {
-           ps_print( ps, ", *" );
-       }
-}
-
-int
-encode_dn(
-    BerElement *ber,
-    DN         dn,
-    DN         base    /* if non-NULL, subsitute '*' for base (for CLDAP) */
-)
-{
-       PS      ps;
-       int     rc;
-
-       Debug( LDAP_DEBUG_TRACE, "encode_dn\n", 0, 0, 0 );
-
-       if ( (ps = ps_alloc( str_open )) == NULLPS )
-               return( -1 );
-       if ( str_setup( ps, NULLCP, 0, 0 ) == NOTOK )
-               return( -1 );
-
-       ldap_dn_print( ps, dn, base, EDBOUT );
-       *ps->ps_ptr = '\0';
-
-       rc = ber_printf( ber, "s", ps->ps_base );
-
-       ps_free( ps );
-
-       return( rc );
-}
-
-static int
-put_jpeg_value( BerElement *ber, AttributeValue av )
-{
-       PE      pe;
-       int     len;
-
-       Debug( LDAP_DEBUG_TRACE, "put_jpeg_value\n", 0, 0, 0 );
-
-       if (av->av_syntax == AV_FILE)
-               pe = (PE) (((struct file_syntax *) av->av_struct)->
-                   fs_attr->av_struct);
-       else
-               pe = (PE) av->av_struct;
-
-       Debug( LDAP_DEBUG_ARGS,
-           "put_jpeg_value: pe_class %x, pe_form %x, pe_id %x\n",
-           pe->pe_class, pe->pe_form, pe->pe_id );
-
-       if ( (pe->pe_class != PE_CLASS_UNIV && pe->pe_class != PE_CLASS_CONT)
-           || pe->pe_form != PE_FORM_PRIM || pe->pe_id != PE_PRIM_OCTS ) {
-               Debug( LDAP_DEBUG_ANY, "put_jpeg_value: unknown type\n", 0,
-                   0, 0 );
-               return( -1 );
-       }
-
-       if ( pe_pullup( pe ) == NOTOK ) {
-               Debug( LDAP_DEBUG_ANY, "put_jpeg_value: cannot pullup\n", 0,
-                   0, 0 );
-               return( -1 );
-       }
-
-       len = ps_get_abs( pe );
-
-       Debug( LDAP_DEBUG_ARGS, "put_jeg_value: ber_printf %d bytes\n",
-           len, 0, 0 );
-       if ( ber_printf( ber, "o", (char *) pe->pe_prim, len ) == -1 ) {
-               Debug( LDAP_DEBUG_ANY, "put_jpeg_value: ber_printf failed\n",
-                   0, 0, 0 );
-               return( -1 );
-       }
-
-       return( 0 );
-}
-
-static int
-put_audio_value( BerElement *ber, AttributeValue av )
-{
-       struct qbuf     *qb, *p;
-       int             rc, len;
-       char            *buf;
-
-       Debug( LDAP_DEBUG_TRACE, "put_audio_value\n", 0, 0, 0 );
-
-       qb = (struct qbuf *) (((struct file_syntax *)
-           av->av_struct)->fs_attr->av_struct);
-
-       len = 0;
-       for ( p = qb->qb_forw; p != qb; p = p->qb_forw ) {
-               len += p->qb_len;
-       }
-
-       if ( (buf = (char *) malloc( len )) == NULL )
-               return( -1 );
-
-       len = 0;
-       for ( p = qb->qb_forw; p != qb; p = p->qb_forw ) {
-               SAFEMEMCPY( buf + len, p->qb_data, p->qb_len );
-               len += p->qb_len;
-       }
-
-       Debug( LDAP_DEBUG_ARGS, "put_audio_value: ber_printf %d bytes\n",
-           len, 0, 0 );
-
-       if ( (rc = ber_printf( ber, "o", buf, len )) == -1 )
-               Debug( LDAP_DEBUG_ANY, "put_audio_value: ber_printf failed\n",
-                   0, 0, 0 );
-
-       free( buf );
-
-       return( rc );
-}
-
-static int
-put_photo_value( BerElement *ber, AttributeValue av )
-{
-       PE              pe;
-       PS              ps;
-       int             len;
-       char            *faxparamset = "\000\300\000\000";
-       BerElement      *phber;
-
-       Debug( LDAP_DEBUG_TRACE, "put_photo_value\n", 0, 0, 0 );
-
-       pe = (PE) (((struct file_syntax *) av->av_struct)->fs_attr->av_struct);
-
-       /* old bit string-like format - only handle this for now */
-       if ( pe->pe_class == PE_CLASS_UNIV && pe->pe_form == PE_FORM_PRIM
-           && pe->pe_id == PE_PRIM_BITS ) {
-               len = ps_get_abs( pe );
-               Debug( LDAP_DEBUG_ARGS, "put_photo_val: ber_printf %d bytes\n",
-                   len, 0, 0 );
-               if (( phber = der_alloc()) == NULL ) {
-                       Debug( LDAP_DEBUG_ANY, "der_alloc failed\n", 0, 0, 0 );
-                       return( -1 );
-               }
-               if ( ber_printf( phber, "t{[tB]{B}}", 0xA3, 0x81, faxparamset,
-                   31, (char *)pe->pe_prim, len * 8 ) == -1 ) {
-                       Debug( LDAP_DEBUG_ANY, "ber_printf failed\n", 0, 0, 0 );
-                       ber_free( phber, 1 );
-                       return( -1 );
-               }
-               if ( ber_printf( ber, "o", phber->ber_buf, phber->ber_ptr
-                   - phber->ber_buf ) == -1 ) {
-                       Debug( LDAP_DEBUG_ANY, "ber_printf failed\n", 0, 0, 0 );
-                       ber_free( phber, 1 );
-                       return( -1 );
-               }
-               ber_free( phber, 1 );
-       } else {
-               /*
-                * try just writing this into a PS and sending it along
-                */
-               ps_len_strategy = PS_LEN_LONG;
-               if ( (ps = ps_alloc( str_open )) == NULLPS )
-                       return( -1 );
-               if ( str_setup( ps, NULLCP, 0, 0 ) == NOTOK ||
-                   pe2ps( ps, pe ) == NOTOK ) {
-                       ps_free( ps );
-                       return( -1 );
-               }
-
-               len = ps->ps_ptr - ps->ps_base;
-               Debug( LDAP_DEBUG_ARGS, "put_photo_val: ber_printf %d bytes\n",
-                   len, 0, 0 );
-               if ( ber_printf( ber, "o", (char *) ps->ps_base, len ) == -1 ) {
-                       Debug( LDAP_DEBUG_ANY, "ber_printf failed\n", 0, 0, 0 );
-                       ps_free( ps );
-                       return( -1 );
-               }
-               ps_free( ps );
-       }
-
-       return( 0 );
-}
-
-static int
-put_values(
-    BerElement *ber,
-    PS         ps,
-    short      syntax,
-    AV_Sequence        vals
-)
-{
-       AV_Sequence     av;
-       char            *strvalue;
-
-       Debug( LDAP_DEBUG_TRACE, "put_values\n", 0, 0, 0 );
-
-       for ( av = vals; av != NULLAV; av = av->avseq_next ) {
-               if ( syntax == ldap_jpeg_syntax ||
-                   syntax == ldap_jpeg_nonfile_syntax ) {
-                       if ( put_jpeg_value( ber, &av->avseq_av ) == -1 )
-                               return( -1 );
-               } else if ( syntax == ldap_photo_syntax ) {
-                       if ( put_photo_value( ber, &av->avseq_av ) == -1 )
-                               return( -1 );
-               } else if ( syntax == ldap_audio_syntax ) {
-                       if ( put_audio_value( ber, &av->avseq_av ) == -1 )
-                               return( -1 );
-               } else if ( syntax == ldap_dn_syntax ) {
-                       if ( encode_dn( ber, (DN) av->avseq_av.av_struct,
-                           NULLDN ) == -1 )
-                               return( -1 );
-               } else if ( syntax > AV_WRITE_FILE ) {
-                       struct file_syntax      *fsyntax;
-
-                       fsyntax = (struct file_syntax *) av->avseq_av.av_struct;
-
-                       ps->ps_ptr = ps->ps_base;
-                       AttrV_print( ps, fsyntax->fs_attr, EDBOUT );
-                       *ps->ps_ptr = '\0';
-
-                       if ( ber_printf( ber, "o", ps->ps_base,
-                           ps->ps_ptr - ps->ps_base ) == -1 )
-                               return( -1 );
-               } else {
-                       ps->ps_ptr = ps->ps_base;
-                       AttrV_print( ps, &av->avseq_av, EDBOUT );
-                       *ps->ps_ptr = '\0';
-                       de_t61( ps->ps_base, 0 );
-
-                       if ( syntax_is_string( av->avseq_av.av_syntax ) &&
-                               *ps->ps_base == '\0' ) {
-                           /*
-                            * If this is a zero-length string, make it
-                            * a single blank (this is gross, but it works
-                            * around a dsap library bug).
-                            */
-                           Debug( LDAP_DEBUG_ANY,
-                                   "put_values: replaced zero-length string with single blank\n", 0, 0, 0 );
-                           strvalue = " ";
-                       } else {
-                           strvalue = ps->ps_base;
-                       }
-                       if ( ber_printf( ber, "s", strvalue ) == -1 )
-                               return( -1 );
-               }
-       }
-
-       return( 0 );
-}
-
-int
-encode_attrs( BerElement *ber, Attr_Sequence as )
-{
-       PS              ps;
-
-       Debug( LDAP_DEBUG_TRACE, "encode_attrs\n", 0, 0, 0 );
-
-       if ( (ps = ps_alloc( str_open )) == NULLPS )
-               return( -1 );
-       if ( str_setup( ps, NULLCP, 0, 0 ) == NOTOK )
-               return( -1 );
-
-#ifdef LDAP_COMPAT20
-       if ( ber_printf( ber, "t{", ldap_compat == 20 ? OLD_LBER_SEQUENCE :
-           LBER_SEQUENCE ) == -1 ) {
-#else
-       if ( ber_printf( ber, "{" ) == -1 ) {
-#endif
-               ps_free( ps );
-               return( -1 );
-       }
-
-       while ( as != NULLATTR ) {
-               ps->ps_ptr = ps->ps_base;
-               AttrT_print( ps, as->attr_type, EDBOUT );
-               *ps->ps_ptr = '\0';
-
-#ifdef LDAP_COMPAT20
-               if ( ber_printf( ber, "t{st[", ldap_compat == 20 ?
-                   OLD_LBER_SEQUENCE : LBER_SEQUENCE, ps->ps_base,
-                   ldap_compat == 20 ? OLD_LBER_SET : LBER_SET ) == -1 ) {
-#else
-               if ( ber_printf( ber, "{s[", ps->ps_base ) == -1 ) {
-#endif
-                       ps_free( ps );
-                       return( -1 );
-               }
-
-               put_values( ber, ps, as->attr_type->oa_syntax, as->attr_value );
-
-               if ( ber_printf( ber, "]}" ) == -1 ) {
-                       ps_free( ps );
-                       return( -1 );
-               }
-
-               as = as->attr_link;
-       }
-       ps_free( ps );
-
-       if ( ber_printf( ber, "}" ) == -1 )
-               return( -1 );
-
-       return( 0 );
-}
-
-static void
-trim_trailing_spaces( char *s )
-{
-       char    *t;
-
-       t = s + strlen( s );
-       while ( --t > s ) {
-               if ( SPACE( *t ) ) {
-                       *t = '\0';
-               } else {
-                       break;
-               }
-       }
-}
-
-DN
-ldap_str2dn( char *str )
-{
-       DN              dn, save;
-       RDN             rdn, newrdn, tmprdn;
-       AttributeType   at;
-       AttributeValue  av;
-       char            *type, *value, *savestr;
-       int             morerdncomps;
-
-       Debug( LDAP_DEBUG_TRACE, "ldap_str2dn\n", 0, 0, 0 );
-
-       savestr = str = strdup( str );
-       dn = NULLDN;
-       do {
-               char    *r;
-               int     state;
-
-               rdn = NULLRDN;
-               morerdncomps = 1;
-               do {
-                       /* get the type */
-                       while ( *str == ' ' || *str == '\n' )
-                               str++;
-                       type = str;
-                       while ( *str != '\0' && *str != '=' )
-                               str++;
-                       if ( *str == '\0' ) {
-                               free( savestr );
-                               Debug( LDAP_DEBUG_ARGS, "no =\n", 0, 0, 0 );
-                               return( NULLDN );
-                       }
-                       *str++ = '\0';
-                       if ( strncmp( type, "OID.", 4 ) == 0 )
-                               type += 4;
-
-#define BEGINVALUE     1
-#define INVALUE                2
-#define INQUOTE        3
-#define ENDVALUE       4
-                       if ( *str == '#' ) {
-                               ++str;
-                       }
-                       r = value = str;
-                       state = BEGINVALUE;
-                       /* break or return out */
-                       while ( state != ENDVALUE ) {
-                               switch ( *str ) {
-                               case '"':
-                                       if ( state == BEGINVALUE ) {
-                                               state = INQUOTE;
-                                               str++;
-                                       } else if ( state == INQUOTE ) {
-                                               state = ENDVALUE;
-                                               str++;
-                                       } else {
-                                               free( savestr );
-                                               Debug( LDAP_DEBUG_ARGS,
-                                                   "quote state %d\n", state,
-                                                   0, 0 );
-                                               return( NULLDN );
-                                       }
-                                       break;
-
-                               case ',':
-                               case ';':
-                               case '+':
-                                       if ( state == INVALUE ) {
-                                               state = ENDVALUE;
-                                       } else if ( state == INQUOTE ) {
-                                               *r++ = *str++;
-                                       } else {
-                                               free( savestr );
-                                               Debug( LDAP_DEBUG_ARGS,
-                                                   "comma state %d\n", state,
-                                                   0, 0 );
-                                               return( NULLDN );
-                                       }
-                                       break;
-
-                               case ' ':
-                               case '\n':
-                                       if ( state == BEGINVALUE ) {
-                                               str++;
-                                       } else {
-                                               *r++ = *str++;
-                                       }
-                                       break;
-
-                               case '\\':
-                                       str++;
-                                       *r++ = *str++;
-                                       break;
-
-                               case '\0':
-                                       state = ENDVALUE;
-                                       break;
-
-                               default:
-                                       if ( state == BEGINVALUE )
-                                               state = INVALUE;
-                                       *r++ = *str++;
-                                       break;
-                               }
-                       }
-
-                       while ( SPACE( *str ) )
-                               str++;
-                       if ( *str == '+' ) {
-                               morerdncomps = 1;
-                               str++;
-                       } else {
-                               morerdncomps = 0;
-                               if ( SEPARATOR( *str ) )
-                                       str++;
-                       }
-                       *r = '\0';
-
-                       /* type */
-                       trim_trailing_spaces( type );
-                       if ( (at = str2AttrT( type )) == NULLAttrT ) {
-                               dn_free( dn );
-                               free( savestr );
-                               Debug( LDAP_DEBUG_ARGS, "bad type (%s)\n",
-                                   type, 0, 0 );
-                               return( NULLDN ); /* LDAP_UNDEFINED_TYPE */
-                       }
-                       /* value */
-                       if ( (av = ldap_str2AttrV( value, at->oa_syntax ))
-                           == NULLAttrV ) {
-                               dn_free( dn );
-                               free( savestr );
-                               Debug( LDAP_DEBUG_ARGS, "bad val\n", 0, 0, 0 );
-                               return( NULLDN ); /* LDAP_INVALID_SYNTAX */
-                       }
-                       /* make the rdn */
-                       newrdn = rdn_comp_new( at, av );
-
-                       /* add it to the list */
-                       for ( tmprdn = rdn; tmprdn != NULLRDN &&
-                           tmprdn->rdn_next != NULLRDN;
-                           tmprdn = tmprdn->rdn_next )
-                               ;       /* NULL */
-                       if ( tmprdn != NULLRDN )
-                               tmprdn->rdn_next = newrdn;
-                       else
-                               rdn = newrdn;
-
-                       AttrV_free( av );
-               } while ( morerdncomps );
-
-               save = dn;
-               dn = dn_comp_new( rdn );
-               dn->dn_parent = save;
-       } while ( str != NULL && *str != '\0' );
-
-       free( savestr );
-       Debug( LDAP_DEBUG_TRACE, "ldap_str2dn OK\n", 0, 0, 0 );
-       return( dn );
-}
-
-#define T61    "{T.61}"
-#define T61LEN 6
-
-static void
-de_t61( char *s, int t61mark )
-{
-       char    *next = s;
-       unsigned char   c;
-       unsigned int    hex;
-
-       while ( *s ) {
-               switch ( *s ) {
-               case '{' :
-                       if ( strncasecmp( s, T61, T61LEN) == 0 ) {
-                               s += T61LEN;
-                               if ( t61mark )
-                                       *next++ = '@';
-                       } else {
-                               *next++ = *s++;
-                       }
-                       break;
-
-               case '\\':
-                       c = *(s + 1);
-                       if ( c == '\n' ) {
-                               s += 2;
-                               if ( *s == '\t' )
-                                       s++;
-                               break;
-                       }
-                        if ( c == '\\' ) {
-                            /* reverse solidus character itself */
-                            s += 2;
-                            *next++ = c;
-                            break;
-                        }
-                       if ( isdigit( c ) )
-                               hex = c - '0';
-                       else if ( c >= 'A' && c <= 'F' )
-                               hex = c - 'A' + 10;
-                       else if ( c >= 'a' && c <= 'f' )
-                               hex = c - 'a' + 10;
-                       else {
-                               *next++ = *s++;
-                               break;
-                       }
-                       hex <<= 4;
-                       c = *(s + 2);
-                       if ( isdigit( c ) )
-                               hex += c - '0';
-                       else if ( c >= 'A' && c <= 'F' )
-                               hex += c - 'A' + 10;
-                       else if ( c >= 'a' && c <= 'f' )
-                               hex += c - 'a' + 10;
-                       else {
-                               *next++ = *s++;
-                               *next++ = *s++;
-                               break;
-                       }
-
-                       *next++ = hex;
-                       s += 3;
-                       break;
-
-               default:
-                       *next++ = *s++;
-                       break;
-               }
-       }
-       *next = '\0';
-}
-
-
-static PE
-bv_asn2pe( struct berval *bv )
-{
-       PS      ps;
-       PE      pe;
-
-       if (( ps = ps_alloc(str_open)) == NULLPS || str_setup( ps, bv->bv_val,
-           bv->bv_len, 0 ) == NOTOK ) {
-               Debug( LDAP_DEBUG_TRACE, "bv_asn2pe: ps_alloc failed\n",
-                   0, 0, 0 );
-               return( NULLPE );
-       }
-
-       pe = ps2pe( ps );
-       if ( ps->ps_errno != PS_ERR_NONE ) {
-               Debug( LDAP_DEBUG_TRACE, "bv_asn2pe: ps2pe failed %s\n",
-                   ps_error(ps->ps_errno), 0, 0 );
-               if ( pe != NULLPE ) {
-                       pe_free( pe );
-               }
-               return( NULLPE );
-       }
-
-       return( pe );
-}
-
-
-AttributeValue
-bv_octet2AttrV( struct berval *bv )
-{
-       AttributeValue  av;
-
-       av = AttrV_alloc();
-       if ( av == NULLAttrV ) {
-               return( NULLAttrV );
-       }
-
-       if (( av->av_struct = (caddr_t) str2prim( bv->bv_val, bv->bv_len,
-           PE_CLASS_UNIV, PE_PRIM_OCTS )) == NULL ) {
-               free((char *)av );
-               return( NULLAttrV );
-       }
-
-       av->av_syntax = 0;
-       return( av );
-}
-
-
-AttributeValue
-bv_asn2AttrV( struct berval *bv )
-{
-       AttributeValue  av;
-
-       av = AttrV_alloc();
-       if ( av == NULLAttrV ) {
-               return( NULLAttrV );
-       }
-
-       if (( av->av_struct = (caddr_t) bv_asn2pe( bv )) == NULL ) {
-               free((char *)av );
-               return( NULLAttrV );
-       }
-
-       av->av_syntax = 0;
-       return( av );
-}
-
-
-AttributeValue
-ldap_strdn2AttrV( char *dnstr )
-{
-       DN              dn;
-       AttributeValue  av;
-
-       if (( dn = ldap_str2dn( dnstr )) == NULL ) {
-               return( NULLAttrV );
-       }
-
-       av = AttrV_alloc();
-       if ( av == NULLAttrV ) {
-               dn_free( dn );
-               return( NULLAttrV );
-       }
-
-       av->av_struct = (caddr_t)dn; 
-       av->av_syntax = ldap_dn_syntax;
-       return( av );
-}
-
-RDN
-ldap_str2rdn( char *rdnstr )
-{
-       DN      dn;
-       RDN     rdn;
-
-       if ( (dn = ldap_str2dn( rdnstr )) == NULL ) {
-               return( NULL );
-       }
-
-       if ( (rdn = rdn_cpy( dn->dn_rdn )) == NULL ) {
-               return( NULL );
-       }
-
-       dn_free( dn );
-
-       return( rdn );
-}
-
-AttributeValue
-ldap_str_at2AttrV( char *str, AttributeType type )
-{
-       char            *s, *res, *r;
-
-       Debug( LDAP_DEBUG_TRACE, "ldap_str_at2AttrV str (%s) type (%s)\n", str,
-           type->oa_ot.ot_name, 0 );
-
-       if ( type->oa_syntax == ldap_rts_cred_syntax ||
-           type->oa_syntax == ldap_mtai_syntax ||
-           type->oa_syntax == ldap_acl_syntax ||
-           type->oa_syntax == ldap_mailbox_syntax ||
-           type->oa_syntax == ldap_caseignorelist_syntax ||
-           type->oa_syntax == ldap_certif_syntax ||
-           type->oa_syntax == ldap_iattr_syntax ||
-           type->oa_syntax == ldap_telex_syntax ||
-           type->oa_syntax == ldap_deliverymethod_syntax ||
-           type->oa_syntax == ldap_facsimileTelephoneNumber_syntax ||
-           type->oa_syntax == ldap_presentationAddress_syntax ||
-           type->oa_syntax == ldap_teletexTerminalIdentifier_syntax ||
-           type->oa_syntax == ldap_searchGuide_syntax ||
-            type->oa_syntax == ldap_dLSubmitPermission_syntax ||
-           type->oa_syntax == ldap_rtl_syntax ) {
-               res = str;
-       } else {
-               res = (char *) malloc( max( 2 * strlen( str ), (size_t) 10 ) );
-
-               r = res;
-               for ( s = str; *s; s++ ) {
-                       switch ( *s ) {
-                       case '&':
-                       case '#':
-                       case '$':
-                       case '%':
-                       case '@':
-                       case '\\':
-                               sprintf( r, "\\%02x", *s & 0xff );
-                               r += 3;
-                               break;
-
-                       default:
-                               *r++ = *s;
-                       }
-               }
-               *r = '\0';
-       }
-
-       Debug( LDAP_DEBUG_TRACE, "ldap_str_at2AttrV returning (%s)\n", res,
-           0, 0 );
-
-       return( str_at2AttrV( res, type ) );
-}
-
-AttributeValue
-ldap_str2AttrV( char *value, short syntax )
-{
-       if ( syntax == ldap_dn_syntax ) {
-               return( ldap_strdn2AttrV( value ) );
-       } else {
-               return( str2AttrV( value, syntax ) );
-       }
-}
-
-
-static int
-syntax_is_string( short syntax )
-{
-/*
- * this code depends on the order and nunber of strings that are in
- * the ISODE file lib/syntax/x500/string.c 
- */
-    return ( syntax >= ldap_caseexactstring_syntax &&
-           syntax <= ldap_caseexactstring_syntax + 8 );
-}
diff --git a/servers/ldapd/util.c b/servers/ldapd/util.c
deleted file mode 100644 (file)
index 4403be4..0000000
+++ /dev/null
@@ -1,190 +0,0 @@
-/* $OpenLDAP$ */
-/*
- * Copyright (c) 1990 Regents of the University of Michigan.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms are permitted
- * provided that this notice is preserved and that due credit is given
- * to the University of Michigan at Ann Arbor. The name of the University
- * may not be used to endorse or promote products derived from this
- * software without specific prior written permission. This software
- * is provided ``as is'' without express or implied warranty.
- */
-
-#include "portable.h"
-
-#include <stdio.h>
-
-#include <ac/ctype.h>
-#include <ac/errno.h>
-#include <ac/socket.h>
-#include <ac/string.h>
-
-#include <sys/ioctl.h>
-
-#include <quipu/commonarg.h>
-#include <quipu/ds_error.h>
-
-#include "lber.h"
-#include "ldap.h"
-#include "common.h"
-
-/*
- * Print arbitrary stuff, for debugging.
- */
-
-
-#define BPLEN  48
-
-void
-bprint( char *data, int len )
-{
-    static const char  hexdig[] = "0123456789abcdef";
-    char       out[ BPLEN ];
-    int                i = 0;
-
-    (void) memset( out, 0, BPLEN );
-    for ( ;; ) {
-       if ( len < 1 ) {
-           printf( "\t%s\n", ( i == 0 ) ? "(end)" : out );
-           break;
-       }
-
-       if ( isgraph( (unsigned char)*data )) {
-           out[ i ] = ' ';
-           out[ i+1 ] = *data;
-       } else {
-           out[ i ] = hexdig[ ( (unsigned char)*data & 0xf0 ) >> 4 ];
-           out[ i+1 ] = hexdig[ (unsigned char)*data & 0x0f ];
-       }
-       i += 2;
-       len--;
-       data++;
-
-       if ( i > BPLEN - 2 ) {
-           printf( "\t%s\n", out );
-           (void) memset( out, 0, BPLEN );
-           i = 0;
-           continue;
-       }
-       out[ i++ ] = ' ';
-    }
-}
-
-void
-charlist_free( char **cl )
-{
-       int     i;
-
-       if ( cl == NULL )
-               return;
-
-       for ( i = 0; cl[i] != NULL; i++ )
-               free( cl[i] );
-       free( (char *) cl );
-}
-
-int
-get_ava( BerElement *ber, AVA *tava )
-{
-       char                    *type, *value;
-
-       Debug( LDAP_DEBUG_TRACE, "get_ava\n", 0, 0, 0 );
-
-       /*
-        * An AVA looks like this:
-        *      AttributeValueAsertion ::= SEQUENCE {
-        *              attributeType   AttributeType,
-        *              attributeValue  AttributeValue
-        *      }
-        */
-
-       if ( ber_scanf( ber, "{aa}", &type, &value ) == LBER_ERROR )
-               return( LDAP_PROTOCOL_ERROR );
-
-       if ( (tava->ava_type = str2AttrT( type )) == NULLAttrT ) {
-               free( type );
-               free( value );
-               return( LDAP_UNDEFINED_TYPE );
-       }
-
-       if ( (tava->ava_value = ldap_str2AttrV( value,
-           tava->ava_type->oa_syntax )) == NULLAttrV ) {
-               free( type );
-               free( value );
-               return( LDAP_INVALID_SYNTAX );
-       }
-
-       free( type );
-       free( value );
-
-       return( 0 );
-}
-
-int
-chase_referral(
-    Sockbuf            *clientsb,
-    struct msg         *m,
-    struct DSError     *err,
-    char               **matched
-)
-{
-       ContinuationRef         cr;
-       struct access_point     *ap;
-       int                     rc, bound;
-       struct conn             *save, *dup, *found;
-
-       Debug( LDAP_DEBUG_TRACE, "chase_referral\n", 0, 0, 0 );
-
-       save = m->m_conn;
-       dup = conn_dup( m->m_conn );
-       m->m_conn = dup;
-       m->m_conn->c_ad = -1;
-
-       /* for each dsa candidate */
-       rc = LDAP_OTHER;
-       for ( cr = err->ERR_REFERRAL.DSE_ref_candidates;
-           cr != NULLCONTINUATIONREF; cr = cr->cr_next ) {
-
-               /* for each access point listed for the dsa */
-               for ( ap = cr->cr_accesspoints; ap != NULLACCESSPOINT;
-                   ap = ap->ap_next ) {
-#ifdef LDAP_DEBUG
-                       if ( ldap_debug & LDAP_DEBUG_ARGS ) {
-                               char    *str;
-
-                               str = paddr2str( ap->ap_address, NULLNA );
-                               fprintf( stderr, "Referring to (%s)...\n",
-                                   str );
-                       }
-#endif
-
-                       if ( m->m_conn->c_paddr )
-                               free( (char *) m->m_conn->c_paddr );
-                       m->m_conn->c_paddr = psap_cpy( ap->ap_address );
-
-                       if ( (found = conn_find( m->m_conn )) != NULL ) {
-                               conn_free( m->m_conn );
-                               m->m_conn = found;
-                               m->m_conn->c_refcnt++;
-                               conn_free( save );
-                               return( LDAP_SUCCESS );
-                       }
-
-                       rc = do_bind_real( m->m_conn, &bound, matched );
-
-                       if ( rc == LDAP_SUCCESS ) {
-                               conn_free( save );
-                               conn_add( m->m_conn );
-                               return( LDAP_SUCCESS );
-                       }
-               }
-
-       }
-
-       /* so the conn can be found and freed later */
-       conn_free( m->m_conn );
-       m->m_conn = save;
-
-       return( rc );
-}
index 0d4efed85055dab67c3526cb5adfe525dfb95a26..11fe1c0a8dbd2e7c0d6f60d9fe194b6caa97bc81 100644 (file)
@@ -28,7 +28,7 @@ XDEFS = $(MODULES_CPPFLAGS)
 XLDFLAGS = $(MODULES_LDFLAGS) $(SLAPD_MODULES)
 
 XLIBS = -lavl -lldif -lldbm -llutil -lldap_r -llber
-XXLIBS = $(LDAPD_LIBS) $(SLAPD_LIBS) \
+XXLIBS = $(QUIPU_LIBS) $(SLAPD_LIBS) \
        $(LDBM_LIBS) $(SECURITY_LIBS) \
        $(LDIF_LIBS) $(LUTIL_LIBS)
 XXXLIBS = $(LTHREAD_LIBS) $(MODULES_LIBS)