]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
Fixed to compile with Solaris LDAP library
authorTimo Sirainen <tss@iki.fi>
Fri, 16 Jul 2004 16:20:54 +0000 (19:20 +0300)
committerTimo Sirainen <tss@iki.fi>
Fri, 16 Jul 2004 16:20:54 +0000 (19:20 +0300)
--HG--
branch : HEAD

configure.in
src/auth/db-ldap.c

index adcaa28db312dfa2f33248241232484337d39861..28f49cbdde5ea02cbfe03cd61ce56b100ceabb21 100644 (file)
@@ -1011,6 +1011,9 @@ fi
 if test $want_ldap = yes; then
        AC_CHECK_LIB(ldap, ldap_init, [
                AC_CHECK_HEADER(ldap.h, [
+                       AC_CHECK_LIB(ldap, ldap_initialize, [
+                               AC_DEFINE(LDAP_HAVE_INITIALIZE,, Define if you have ldap_initialize)
+                       ])
                        AUTH_LIBS="$AUTH_LIBS -lldap"
 
                        AC_DEFINE(USERDB_LDAP,, Build with LDAP support)
index f4fbdbd3483823759647a85d175149fe41149ca6..3406ba4198be40d2e2021407a1e5217199dac49a 100644 (file)
 #  define OPENLDAP_ASYNC_WORKAROUND
 #endif
 
+/* Solaris LDAP library doesn't have LDAP_OPT_SUCCESS */
+#ifndef LDAP_OPT_SUCCESS
+#  define LDAP_OPT_SUCCESS LDAP_SUCCESS
+#endif
+
 #define DEF(type, name) \
        { type, #name, offsetof(struct ldap_settings, name) }
 
@@ -181,8 +186,13 @@ static int ldap_conn_open(struct ldap_connection *conn)
 
        if (conn->ld == NULL) {
                if (conn->set.uris != NULL) {
+#ifdef LDAP_HAVE_INITIALIZE
                        if (ldap_initialize(&conn->ld, conn->set.uris) != LDAP_SUCCESS)
                                conn->ld = NULL;
+#else
+                       i_fatal("LDAP: Your LDAP library doesn't support "
+                               "'uris' setting, use 'hosts' instead.");
+#endif
                } else
                        conn->ld = ldap_init(conn->set.hosts, LDAP_PORT);