Ian Kent cf2ca1
diff --git a/CHANGELOG b/CHANGELOG
Ian Kent cf2ca1
index 624fe9e..98855f5 100644
Ian Kent cf2ca1
--- a/CHANGELOG
Ian Kent cf2ca1
+++ b/CHANGELOG
Ian Kent cf2ca1
@@ -1,3 +1,7 @@
Ian Kent cf2ca1
+??/??/2008 autofs-5.0.4
Ian Kent cf2ca1
+-----------------------
Ian Kent cf2ca1
+- correct configure test for ldapr page control functions.
Ian Kent cf2ca1
+ 
Ian Kent cf2ca1
 14/01/2008 autofs-5.0.3
Ian Kent cf2ca1
 -----------------------
Ian Kent cf2ca1
 - include krb5.h in lookup_ldap.h (some openssl doesn't implicitly include it).
Ian Kent cf2ca1
diff --git a/aclocal.m4 b/aclocal.m4
Ian Kent cf2ca1
index 118ef0d..f24e076 100644
Ian Kent cf2ca1
--- a/aclocal.m4
Ian Kent cf2ca1
+++ b/aclocal.m4
Ian Kent cf2ca1
@@ -222,3 +222,69 @@ AC_TRY_LINK(
Ian Kent cf2ca1
 LDFLAGS="$af_check_hesiod_save_ldflags"
Ian Kent cf2ca1
 ])
Ian Kent cf2ca1
 
Ian Kent cf2ca1
+dnl --------------------------------------------------------------------------
Ian Kent cf2ca1
+dnl AF_CHECK_FUNC_LDAP_CREATE_PAGE_CONTROL
Ian Kent cf2ca1
+dnl
Ian Kent cf2ca1
+dnl Check for function ldap_create_page_control
Ian Kent cf2ca1
+dnl --------------------------------------------------------------------------
Ian Kent cf2ca1
+AC_DEFUN([AF_CHECK_FUNC_LDAP_CREATE_PAGE_CONTROL],
Ian Kent cf2ca1
+[AC_MSG_CHECKING(for ldap_create_page_control in -lldap)
Ian Kent cf2ca1
+
Ian Kent cf2ca1
+# save current ldflags
Ian Kent cf2ca1
+af_check_ldap_create_page_control_save_ldflags="$LDFLAGS"
Ian Kent cf2ca1
+LDFLAGS="$LDFLAGS -lldap_r"
Ian Kent cf2ca1
+
Ian Kent cf2ca1
+AC_TRY_LINK(
Ian Kent cf2ca1
+  [ #include <ldap.h> ],
Ian Kent cf2ca1
+  [ LDAP *ld;
Ian Kent cf2ca1
+    ber_int_t ps;
Ian Kent cf2ca1
+    struct berval *c;
Ian Kent cf2ca1
+    int ic, ret;
Ian Kent cf2ca1
+    LDAPControl **clp;
Ian Kent cf2ca1
+    ret = ldap_create_page_control(ld,ps,c,ic,clp); ],
Ian Kent cf2ca1
+  [ af_have_ldap_create_page_control=yes
Ian Kent cf2ca1
+    AC_MSG_RESULT(yes) ],
Ian Kent cf2ca1
+  [ AC_MSG_RESULT(no) ])
Ian Kent cf2ca1
+
Ian Kent cf2ca1
+if test "$af_have_ldap_create_page_control" = "yes"; then
Ian Kent cf2ca1
+  AC_DEFINE(HAVE_LDAP_CREATE_PAGE_CONTROL, 1,
Ian Kent cf2ca1
+        [Define to 1 if you have the `ldap_create_page_control' function.])
Ian Kent cf2ca1
+fi
Ian Kent cf2ca1
+
Ian Kent cf2ca1
+# restore ldflags
Ian Kent cf2ca1
+LDFLAGS="$af_check_ldap_create_page_control_save_ldflags"
Ian Kent cf2ca1
+])
Ian Kent cf2ca1
+
Ian Kent cf2ca1
+dnl --------------------------------------------------------------------------
Ian Kent cf2ca1
+dnl AF_CHECK_FUNC_LDAP_PARSE_PAGE_CONTROL
Ian Kent cf2ca1
+dnl
Ian Kent cf2ca1
+dnl Check for function ldap_parse_page_control
Ian Kent cf2ca1
+dnl --------------------------------------------------------------------------
Ian Kent cf2ca1
+AC_DEFUN([AF_CHECK_FUNC_LDAP_PARSE_PAGE_CONTROL],
Ian Kent cf2ca1
+[AC_MSG_CHECKING(for ldap_parse_page_control in -lldap)
Ian Kent cf2ca1
+
Ian Kent cf2ca1
+# save current ldflags
Ian Kent cf2ca1
+af_check_ldap_parse_page_control_save_ldflags="$LDFLAGS"
Ian Kent cf2ca1
+LDFLAGS="$LDFLAGS -lldap_r"
Ian Kent cf2ca1
+
Ian Kent cf2ca1
+AC_TRY_LINK(
Ian Kent cf2ca1
+  [ #include <ldap.h> ],
Ian Kent cf2ca1
+  [ LDAP *ld;
Ian Kent cf2ca1
+    ber_int_t ct;
Ian Kent cf2ca1
+    struct berval *c;
Ian Kent cf2ca1
+    int ret;
Ian Kent cf2ca1
+    LDAPControl **clp;
Ian Kent cf2ca1
+    ret = ldap_parse_page_control(ld,clp,ct,c); ],
Ian Kent cf2ca1
+  [ af_have_ldap_parse_page_control=yes
Ian Kent cf2ca1
+    AC_MSG_RESULT(yes) ],
Ian Kent cf2ca1
+  [ AC_MSG_RESULT(no) ])
Ian Kent cf2ca1
+
Ian Kent cf2ca1
+if test "$af_have_ldap_create_page_control" = "yes"; then
Ian Kent cf2ca1
+  AC_DEFINE(HAVE_LDAP_PARSE_PAGE_CONTROL, 1,
Ian Kent cf2ca1
+        [Define to 1 if you have the `ldap_parse_page_control' function.])
Ian Kent cf2ca1
+fi
Ian Kent cf2ca1
+
Ian Kent cf2ca1
+# restore ldflags
Ian Kent cf2ca1
+LDFLAGS="$af_check_ldap_parse_page_control_save_ldflags"
Ian Kent cf2ca1
+])
Ian Kent cf2ca1
+
Ian Kent cf2ca1
diff --git a/configure b/configure
Ian Kent cf2ca1
index d212b05..e872392 100755
Ian Kent cf2ca1
--- a/configure
Ian Kent cf2ca1
+++ b/configure
Ian Kent cf2ca1
@@ -3631,7 +3631,7 @@ if test "${with_hesiod+set}" = set; then
Ian Kent cf2ca1
 fi
Ian Kent cf2ca1
 
Ian Kent cf2ca1
 
Ian Kent cf2ca1
-if test -z "$HAVE_HESIOD"
Ian Kent cf2ca1
+if test -z "$HAVE_HESIOD" -o "$HAVE_HESIOD" != "0"
Ian Kent cf2ca1
 then
Ian Kent cf2ca1
 	HAVE_HESIOD=0
Ian Kent cf2ca1
 	{ echo "$as_me:$LINENO: checking for libhesiod" >&5
Ian Kent cf2ca1
@@ -4498,7 +4498,7 @@ if test "${with_openldap+set}" = set; then
Ian Kent cf2ca1
 
Ian Kent cf2ca1
 fi
Ian Kent cf2ca1
 
Ian Kent cf2ca1
-if test -z "$HAVE_LDAP"; then
Ian Kent cf2ca1
+if test -z "$HAVE_LDAP" -o "$HAVE_LDAP" != "0"; then
Ian Kent cf2ca1
 	HAVE_LDAP=0
Ian Kent cf2ca1
 	LDAP_FLAGS="$LDAP_FLAGS -DLDAP_DEPRECATED=1"
Ian Kent cf2ca1
 	{ echo "$as_me:$LINENO: checking for ldap_initialize in -lldap" >&5
Ian Kent cf2ca1
@@ -4566,71 +4566,106 @@ if test $ac_cv_lib_ldap_ldap_initialize = yes; then
Ian Kent cf2ca1
   HAVE_LDAP=1 LIBLDAP="$LIBLDAP -lldap_r -llber -lresolv"
Ian Kent cf2ca1
 fi
Ian Kent cf2ca1
 
Ian Kent cf2ca1
-	if test "$HAVE_LDAP" == "1"; then
Ian Kent cf2ca1
+	if test "$HAVE_LDAP" = "1"; then
Ian Kent cf2ca1
 
Ian Kent cf2ca1
 cat >>confdefs.h <<\_ACEOF
Ian Kent cf2ca1
 #define WITH_LDAP 1
Ian Kent cf2ca1
 _ACEOF
Ian Kent cf2ca1
 
Ian Kent cf2ca1
 	fi
Ian Kent cf2ca1
+	{ echo "$as_me:$LINENO: checking for ldap_create_page_control in -lldap" >&5
Ian Kent cf2ca1
+echo $ECHO_N "checking for ldap_create_page_control in -lldap... $ECHO_C" >&6; }
Ian Kent cf2ca1
+
Ian Kent cf2ca1
+# save current ldflags
Ian Kent cf2ca1
+af_check_ldap_create_page_control_save_ldflags="$LDFLAGS"
Ian Kent cf2ca1
+LDFLAGS="$LDFLAGS -lldap_r"
Ian Kent cf2ca1
+
Ian Kent cf2ca1
+cat >conftest.$ac_ext <<_ACEOF
Ian Kent cf2ca1
+/* confdefs.h.  */
Ian Kent cf2ca1
+_ACEOF
Ian Kent cf2ca1
+cat confdefs.h >>conftest.$ac_ext
Ian Kent cf2ca1
+cat >>conftest.$ac_ext <<_ACEOF
Ian Kent cf2ca1
+/* end confdefs.h.  */
Ian Kent cf2ca1
+ #include <ldap.h>
Ian Kent cf2ca1
+int
Ian Kent cf2ca1
+main ()
Ian Kent cf2ca1
+{
Ian Kent cf2ca1
+ LDAP *ld;
Ian Kent cf2ca1
+    ber_int_t ps;
Ian Kent cf2ca1
+    struct berval *c;
Ian Kent cf2ca1
+    int ic, ret;
Ian Kent cf2ca1
+    LDAPControl **clp;
Ian Kent cf2ca1
+    ret = ldap_create_page_control(ld,ps,c,ic,clp);
Ian Kent cf2ca1
+  ;
Ian Kent cf2ca1
+  return 0;
Ian Kent cf2ca1
+}
Ian Kent cf2ca1
+_ACEOF
Ian Kent cf2ca1
+rm -f conftest.$ac_objext conftest$ac_exeext
Ian Kent cf2ca1
+if { (ac_try="$ac_link"
Ian Kent cf2ca1
+case "(($ac_try" in
Ian Kent cf2ca1
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
Ian Kent cf2ca1
+  *) ac_try_echo=$ac_try;;
Ian Kent cf2ca1
+esac
Ian Kent cf2ca1
+eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
Ian Kent cf2ca1
+  (eval "$ac_link") 2>conftest.er1
Ian Kent cf2ca1
+  ac_status=$?
Ian Kent cf2ca1
+  grep -v '^ *+' conftest.er1 >conftest.err
Ian Kent cf2ca1
+  rm -f conftest.er1
Ian Kent cf2ca1
+  cat conftest.err >&5
Ian Kent cf2ca1
+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
Ian Kent cf2ca1
+  (exit $ac_status); } && {
Ian Kent cf2ca1
+	 test -z "$ac_c_werror_flag" ||
Ian Kent cf2ca1
+	 test ! -s conftest.err
Ian Kent cf2ca1
+       } && test -s conftest$ac_exeext &&
Ian Kent cf2ca1
+       $as_test_x conftest$ac_exeext; then
Ian Kent cf2ca1
+   af_have_ldap_create_page_control=yes
Ian Kent cf2ca1
+    { echo "$as_me:$LINENO: result: yes" >&5
Ian Kent cf2ca1
+echo "${ECHO_T}yes" >&6; }
Ian Kent cf2ca1
+else
Ian Kent cf2ca1
+  echo "$as_me: failed program was:" >&5
Ian Kent cf2ca1
+sed 's/^/| /' conftest.$ac_ext >&5
Ian Kent cf2ca1
+
Ian Kent cf2ca1
+	 { echo "$as_me:$LINENO: result: no" >&5
Ian Kent cf2ca1
+echo "${ECHO_T}no" >&6; }
Ian Kent cf2ca1
 fi
Ian Kent cf2ca1
 
Ian Kent cf2ca1
+rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
Ian Kent cf2ca1
+      conftest$ac_exeext conftest.$ac_ext
Ian Kent cf2ca1
 
Ian Kent cf2ca1
+if test "$af_have_ldap_create_page_control" = "yes"; then
Ian Kent cf2ca1
 
Ian Kent cf2ca1
+cat >>confdefs.h <<\_ACEOF
Ian Kent cf2ca1
+#define HAVE_LDAP_CREATE_PAGE_CONTROL 1
Ian Kent cf2ca1
+_ACEOF
Ian Kent cf2ca1
 
Ian Kent cf2ca1
-LDFLAGS="${AF_tmp_ldflags}"
Ian Kent cf2ca1
+fi
Ian Kent cf2ca1
 
Ian Kent cf2ca1
+# restore ldflags
Ian Kent cf2ca1
+LDFLAGS="$af_check_ldap_create_page_control_save_ldflags"
Ian Kent cf2ca1
 
Ian Kent cf2ca1
+	{ echo "$as_me:$LINENO: checking for ldap_parse_page_control in -lldap" >&5
Ian Kent cf2ca1
+echo $ECHO_N "checking for ldap_parse_page_control in -lldap... $ECHO_C" >&6; }
Ian Kent cf2ca1
 
Ian Kent cf2ca1
-for ac_func in ldap_create_page_control ldap_parse_page_control
Ian Kent cf2ca1
-do
Ian Kent cf2ca1
-as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
Ian Kent cf2ca1
-{ echo "$as_me:$LINENO: checking for $ac_func" >&5
Ian Kent cf2ca1
-echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; }
Ian Kent cf2ca1
-if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then
Ian Kent cf2ca1
-  echo $ECHO_N "(cached) $ECHO_C" >&6
Ian Kent cf2ca1
-else
Ian Kent cf2ca1
-  cat >conftest.$ac_ext <<_ACEOF
Ian Kent cf2ca1
+# save current ldflags
Ian Kent cf2ca1
+af_check_ldap_parse_page_control_save_ldflags="$LDFLAGS"
Ian Kent cf2ca1
+LDFLAGS="$LDFLAGS -lldap_r"
Ian Kent cf2ca1
+
Ian Kent cf2ca1
+cat >conftest.$ac_ext <<_ACEOF
Ian Kent cf2ca1
 /* confdefs.h.  */
Ian Kent cf2ca1
 _ACEOF
Ian Kent cf2ca1
 cat confdefs.h >>conftest.$ac_ext
Ian Kent cf2ca1
 cat >>conftest.$ac_ext <<_ACEOF
Ian Kent cf2ca1
 /* end confdefs.h.  */
Ian Kent cf2ca1
-/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
Ian Kent cf2ca1
-   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
Ian Kent cf2ca1
-#define $ac_func innocuous_$ac_func
Ian Kent cf2ca1
-
Ian Kent cf2ca1
-/* System header to define __stub macros and hopefully few prototypes,
Ian Kent cf2ca1
-    which can conflict with char $ac_func (); below.
Ian Kent cf2ca1
-    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
Ian Kent cf2ca1
-    <limits.h> exists even on freestanding compilers.  */
Ian Kent cf2ca1
-
Ian Kent cf2ca1
-#ifdef __STDC__
Ian Kent cf2ca1
-# include <limits.h>
Ian Kent cf2ca1
-#else
Ian Kent cf2ca1
-# include <assert.h>
Ian Kent cf2ca1
-#endif
Ian Kent cf2ca1
-
Ian Kent cf2ca1
-#undef $ac_func
Ian Kent cf2ca1
-
Ian Kent cf2ca1
-/* Override any GCC internal prototype to avoid an error.
Ian Kent cf2ca1
-   Use char because int might match the return type of a GCC
Ian Kent cf2ca1
-   builtin and then its argument prototype would still apply.  */
Ian Kent cf2ca1
-#ifdef __cplusplus
Ian Kent cf2ca1
-extern "C"
Ian Kent cf2ca1
-#endif
Ian Kent cf2ca1
-char $ac_func ();
Ian Kent cf2ca1
-/* The GNU C library defines this for functions which it implements
Ian Kent cf2ca1
-    to always fail with ENOSYS.  Some functions are actually named
Ian Kent cf2ca1
-    something starting with __ and the normal name is an alias.  */
Ian Kent cf2ca1
-#if defined __stub_$ac_func || defined __stub___$ac_func
Ian Kent cf2ca1
-choke me
Ian Kent cf2ca1
-#endif
Ian Kent cf2ca1
-
Ian Kent cf2ca1
+ #include <ldap.h>
Ian Kent cf2ca1
 int
Ian Kent cf2ca1
 main ()
Ian Kent cf2ca1
 {
Ian Kent cf2ca1
-return $ac_func ();
Ian Kent cf2ca1
+ LDAP *ld;
Ian Kent cf2ca1
+    ber_int_t ct;
Ian Kent cf2ca1
+    struct berval *c;
Ian Kent cf2ca1
+    int ret;
Ian Kent cf2ca1
+    LDAPControl **clp;
Ian Kent cf2ca1
+    ret = ldap_parse_page_control(ld,clp,ct,c);
Ian Kent cf2ca1
   ;
Ian Kent cf2ca1
   return 0;
Ian Kent cf2ca1
 }
Ian Kent cf2ca1
@@ -4653,28 +4688,37 @@ eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5
Ian Kent cf2ca1
 	 test ! -s conftest.err
Ian Kent cf2ca1
        } && test -s conftest$ac_exeext &&
Ian Kent cf2ca1
        $as_test_x conftest$ac_exeext; then
Ian Kent cf2ca1
-  eval "$as_ac_var=yes"
Ian Kent cf2ca1
+   af_have_ldap_parse_page_control=yes
Ian Kent cf2ca1
+    { echo "$as_me:$LINENO: result: yes" >&5
Ian Kent cf2ca1
+echo "${ECHO_T}yes" >&6; }
Ian Kent cf2ca1
 else
Ian Kent cf2ca1
   echo "$as_me: failed program was:" >&5
Ian Kent cf2ca1
 sed 's/^/| /' conftest.$ac_ext >&5
Ian Kent cf2ca1
 
Ian Kent cf2ca1
-	eval "$as_ac_var=no"
Ian Kent cf2ca1
+	 { echo "$as_me:$LINENO: result: no" >&5
Ian Kent cf2ca1
+echo "${ECHO_T}no" >&6; }
Ian Kent cf2ca1
 fi
Ian Kent cf2ca1
 
Ian Kent cf2ca1
 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
Ian Kent cf2ca1
       conftest$ac_exeext conftest.$ac_ext
Ian Kent cf2ca1
-fi
Ian Kent cf2ca1
-ac_res=`eval echo '${'$as_ac_var'}'`
Ian Kent cf2ca1
-	       { echo "$as_me:$LINENO: result: $ac_res" >&5
Ian Kent cf2ca1
-echo "${ECHO_T}$ac_res" >&6; }
Ian Kent cf2ca1
-if test `eval echo '${'$as_ac_var'}'` = yes; then
Ian Kent cf2ca1
-  cat >>confdefs.h <<_ACEOF
Ian Kent cf2ca1
-#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
Ian Kent cf2ca1
+
Ian Kent cf2ca1
+if test "$af_have_ldap_create_page_control" = "yes"; then
Ian Kent cf2ca1
+
Ian Kent cf2ca1
+cat >>confdefs.h <<\_ACEOF
Ian Kent cf2ca1
+#define HAVE_LDAP_PARSE_PAGE_CONTROL 1
Ian Kent cf2ca1
 _ACEOF
Ian Kent cf2ca1
 
Ian Kent cf2ca1
 fi
Ian Kent cf2ca1
-done
Ian Kent cf2ca1
 
Ian Kent cf2ca1
+# restore ldflags
Ian Kent cf2ca1
+LDFLAGS="$af_check_ldap_parse_page_control_save_ldflags"
Ian Kent cf2ca1
+
Ian Kent cf2ca1
+fi
Ian Kent cf2ca1
+
Ian Kent cf2ca1
+
Ian Kent cf2ca1
+
Ian Kent cf2ca1
+
Ian Kent cf2ca1
+LDFLAGS="${AF_tmp_ldflags}"
Ian Kent cf2ca1
 
Ian Kent cf2ca1
 #
Ian Kent cf2ca1
 # SASL support
Ian Kent cf2ca1
@@ -4703,7 +4747,7 @@ if test "${with_sasl+set}" = set; then
Ian Kent cf2ca1
 
Ian Kent cf2ca1
 fi
Ian Kent cf2ca1
 
Ian Kent cf2ca1
-if test -z "$HAVE_SASL" -a "$HAVE_LIBXML" == "1"
Ian Kent cf2ca1
+if test -z "$HAVE_SASL" -o "$HAVE_SASL" != "0" -a "$HAVE_LIBXML" == "1"
Ian Kent cf2ca1
 then
Ian Kent cf2ca1
 	HAVE_SASL=0
Ian Kent cf2ca1
 	{ echo "$as_me:$LINENO: checking for sasl_client_start in -lsasl2" >&5
Ian Kent cf2ca1
diff --git a/configure.in b/configure.in
Ian Kent cf2ca1
index 952d040..a9c86dd 100644
Ian Kent cf2ca1
--- a/configure.in
Ian Kent cf2ca1
+++ b/configure.in
Ian Kent cf2ca1
@@ -155,7 +155,7 @@ AC_ARG_WITH(hesiod,
Ian Kent cf2ca1
 	fi
Ian Kent cf2ca1
 )	
Ian Kent cf2ca1
 
Ian Kent cf2ca1
-if test -z "$HAVE_HESIOD"
Ian Kent cf2ca1
+if test -z "$HAVE_HESIOD" -o "$HAVE_HESIOD" != "0"
Ian Kent cf2ca1
 then
Ian Kent cf2ca1
 	HAVE_HESIOD=0
Ian Kent cf2ca1
 	AF_CHECK_LIBHESIOD()
Ian Kent cf2ca1
@@ -194,15 +194,17 @@ AC_ARG_WITH(openldap,
Ian Kent cf2ca1
 		LDAP_FLAGS="-I${withval}/include"
Ian Kent cf2ca1
 	fi
Ian Kent cf2ca1
 )
Ian Kent cf2ca1
-if test -z "$HAVE_LDAP"; then
Ian Kent cf2ca1
+if test -z "$HAVE_LDAP" -o "$HAVE_LDAP" != "0"; then
Ian Kent cf2ca1
 	HAVE_LDAP=0
Ian Kent cf2ca1
 	LDAP_FLAGS="$LDAP_FLAGS -DLDAP_DEPRECATED=1"
Ian Kent cf2ca1
 	AC_CHECK_LIB(ldap, ldap_initialize, HAVE_LDAP=1 LIBLDAP="$LIBLDAP -lldap_r -llber -lresolv", ,
Ian Kent cf2ca1
 		     -llber -lresolv $LIBS)
Ian Kent cf2ca1
-	if test "$HAVE_LDAP" == "1"; then
Ian Kent cf2ca1
+	if test "$HAVE_LDAP" = "1"; then
Ian Kent cf2ca1
 		AC_DEFINE(WITH_LDAP,1,
Ian Kent cf2ca1
 			[Define if using LDAP as a source of automount maps])
Ian Kent cf2ca1
 	fi
Ian Kent cf2ca1
+	AF_CHECK_FUNC_LDAP_CREATE_PAGE_CONTROL()
Ian Kent cf2ca1
+	AF_CHECK_FUNC_LDAP_PARSE_PAGE_CONTROL()
Ian Kent cf2ca1
 fi
Ian Kent cf2ca1
 
Ian Kent cf2ca1
 AC_SUBST(LDAP_FLAGS)
Ian Kent cf2ca1
@@ -210,8 +212,6 @@ AC_SUBST(HAVE_LDAP)
Ian Kent cf2ca1
 AC_SUBST(LIBLDAP)
Ian Kent cf2ca1
 LDFLAGS="${AF_tmp_ldflags}"
Ian Kent cf2ca1
 
Ian Kent cf2ca1
-AC_CHECK_FUNCS(ldap_create_page_control ldap_parse_page_control)
Ian Kent cf2ca1
-
Ian Kent cf2ca1
 #
Ian Kent cf2ca1
 # SASL support
Ian Kent cf2ca1
 #   configure magic taken from:
Ian Kent cf2ca1
@@ -236,7 +236,7 @@ AC_ARG_WITH(sasl,
Ian Kent cf2ca1
 		SASL_FLAGS="-I${withval}/include"
Ian Kent cf2ca1
 	fi
Ian Kent cf2ca1
 )
Ian Kent cf2ca1
-if test -z "$HAVE_SASL" -a "$HAVE_LIBXML" == "1"
Ian Kent cf2ca1
+if test -z "$HAVE_SASL" -o "$HAVE_SASL" != "0" -a "$HAVE_LIBXML" == "1"
Ian Kent cf2ca1
 then
Ian Kent cf2ca1
 	HAVE_SASL=0
Ian Kent cf2ca1
 	AC_CHECK_LIB(sasl2, sasl_client_start, HAVE_SASL=1 LIBSASL="$LIBSASL -lsasl2", , -lsasl2 $LIBS)
Ian Kent cf2ca1
diff --git a/modules/lookup_ldap.c b/modules/lookup_ldap.c
Ian Kent cf2ca1
index 0723fd8..e8530f6 100644
Ian Kent cf2ca1
--- a/modules/lookup_ldap.c
Ian Kent cf2ca1
+++ b/modules/lookup_ldap.c
Ian Kent cf2ca1
@@ -55,7 +55,7 @@ struct ldap_search_params {
Ian Kent cf2ca1
 	char *query, **attrs;
Ian Kent cf2ca1
 	struct berval *cookie;
Ian Kent cf2ca1
 	int morePages;
Ian Kent cf2ca1
-	unsigned int totalCount;
Ian Kent cf2ca1
+	ber_int_t totalCount;
Ian Kent cf2ca1
 	LDAPMessage *result;
Ian Kent cf2ca1
 	time_t age;
Ian Kent cf2ca1
 };
Ian Kent cf2ca1
@@ -63,7 +63,7 @@ struct ldap_search_params {
Ian Kent cf2ca1
 static LDAP *auth_init(unsigned logopt, const char *, struct lookup_context *);
Ian Kent cf2ca1
 
Ian Kent cf2ca1
 #ifndef HAVE_LDAP_CREATE_PAGE_CONTROL
Ian Kent cf2ca1
-int ldap_create_page_control(LDAP *ldap, unsigned int pagesize,
Ian Kent cf2ca1
+int ldap_create_page_control(LDAP *ldap, ber_int_t pagesize,
Ian Kent cf2ca1
 			     struct berval *cookie, char isCritical,
Ian Kent cf2ca1
 			     LDAPControl **output)
Ian Kent cf2ca1
 {
Ian Kent cf2ca1
@@ -93,7 +93,7 @@ int ldap_create_page_control(LDAP *ldap, unsigned int pagesize,
Ian Kent cf2ca1
 
Ian Kent cf2ca1
 #ifndef HAVE_LDAP_PARSE_PAGE_CONTROL
Ian Kent cf2ca1
 int ldap_parse_page_control(LDAP *ldap, LDAPControl **controls,
Ian Kent cf2ca1
-			    unsigned int *totalcount, struct berval **cookie)
Ian Kent cf2ca1
+			    ber_int_t *totalcount, struct berval **cookie)
Ian Kent cf2ca1
 {
Ian Kent cf2ca1
 	int i, rc;
Ian Kent cf2ca1
 	BerElement *theBer;
Ian Kent cf2ca1
@@ -1644,7 +1644,7 @@ static int do_paged_query(struct ldap_search_params *sp, struct lookup_context *
Ian Kent cf2ca1
 	struct autofs_point *ap = sp->ap;
Ian Kent cf2ca1
 	LDAPControl *pageControl=NULL, *controls[2] = { NULL, NULL };
Ian Kent cf2ca1
 	LDAPControl **returnedControls = NULL;
Ian Kent cf2ca1
-	static unsigned long pageSize = 1000;
Ian Kent cf2ca1
+	static ber_int_t pageSize = 1000;
Ian Kent cf2ca1
 	static char pagingCriticality = 'T';
Ian Kent cf2ca1
 	int rv, scope = LDAP_SCOPE_SUBTREE;
Ian Kent cf2ca1