On 2013-06-06 at 02:57 +0000, Prashanth Katuri wrote:
> but still I am having the same issue. Btw I have attached the files as requested.
Thanks.
As an aside: you should not be using LOOKUP_MODULE_DIR, it makes life
more complicated and is intended purely for OS packagers who want to
build against "everything" and only make some functionality available,
depending upon what's installed. It's overhead and complexity you don't
need when compiling for yourself.
That's not the problem here, but worth cleaning up to make your life
easier.
> gcc -o exim
> ld: warning: global symbol '_END_' has non-global binding:
> (file /usr/local/lib/liblber.so value=LOCL);
> ld: warning: global symbol '_START_' has non-global binding:
> (file /usr/local/lib/liblber.so value=LOCL);
> Undefined first referenced
> symbol in file
> ldap_start_tls_s lookups/lookups.a(ldap.o)
Hrm, I didn't think that the native Solaris LDAP libraries installed
into /usr/local so I wonder which version that is?
It seems that LDAP_OPT_X_TLS being defined, but that "extended TLS"
option isn't making available the function "ldap_start_tls_s".
Could you please try this change, adjusting the guard in
src/lookups/ldap.c ?
--- a/src/lookups/ldap.c
+++ b/src/lookups/ldap.c
@@ -519,7 +519,7 @@ if (!lcp->bound ||
{
DEBUG(D_lookup) debug_printf("%sbinding with user=%s password=%s\n",
(lcp->bound)? "re-" : "", user, password);
-#ifdef LDAP_OPT_X_TLS
+#if defined(LDAP_OPT_X_TLS) && !defined(LDAP_LIB_SOLARIS)
/* The Oracle LDAP libraries (LDAP_LIB_TYPE=SOLARIS) don't support this: */
if (eldap_start_tls)
{