[Fedora-directory-commits] ldapserver/ldap/servers/slapd saslbind.c, 1.13, 1.14
Noriko Hosoi (nhosoi)
fedora-directory-commits at redhat.com
Thu Nov 10 22:38:01 UTC 2005
Author: nhosoi
Update of /cvs/dirsec/ldapserver/ldap/servers/slapd
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv22242/ldap/servers/slapd
Modified Files:
saslbind.c
Log Message:
[172824] Link SASL library dynamically
i1) For non-RHEL platforms, package cyrus sasl library and the supported plugins.
2) by default, cyrus sasl expects to see the plugins in /usr/lib/sasl2.
Instead, tell sasl to search "../../../lib/sasl2" (relative path from ns-slapd)
for the plugins.
Index: saslbind.c
===================================================================
RCS file: /cvs/dirsec/ldapserver/ldap/servers/slapd/saslbind.c,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- saslbind.c 8 Nov 2005 15:58:22 -0000 1.13
+++ saslbind.c 10 Nov 2005 22:37:54 -0000 1.14
@@ -551,7 +551,18 @@
return returnvalue;
}
-static sasl_callback_t ids_sasl_callbacks[5] =
+#ifdef CYRUS_SASL
+#if !defined(LINUX)
+static int ids_sasl_getpluginpath(sasl_conn_t *conn, const char **path)
+{
+ static char *pluginpath = "../../../lib/sasl2";
+ *path = pluginpath;
+ return SASL_OK;
+}
+#endif
+#endif
+
+static sasl_callback_t ids_sasl_callbacks[] =
{
{
SASL_CB_GETOPT,
@@ -577,6 +588,19 @@
(IFP) ids_sasl_canon_user,
NULL
},
+#ifdef CYRUS_SASL
+ /* On Linux: we use system sasl and plugins are found in the default path
+ * /usr/lib/sasl2
+ * On other platforms: we need to tell cyrus sasl where they are localted.
+ */
+#if !defined(LINUX)
+ {
+ SASL_CB_GETPATH,
+ (IFP) ids_sasl_getpluginpath,
+ NULL
+ },
+#endif
+#endif
{
SASL_CB_LIST_END,
(IFP) NULL,
More information about the Fedora-directory-commits
mailing list