Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email firstname.lastname@example.org
From: Wietse Venema (wietseporcupine.org)
Date: Wed Jul 11 2007 - 20:52:45 CDT
> On Jul 11, 2007, at 6:59 AM, Victor Duchovni wrote:
> > Not sure whether it would have caught this problem... What are the
> > LDAP_API_VERSION values for the OP's correct and incorrect ldap.h
> > files?
> My fundamental error was to compile Postfix to use the OpenLDAP
> runtime libraries without having loaded the full OpenLDAP
> development package.
> So the object code was compiled using Solaris 10 bundled /usr/include/
> which has an LDAP_API_VERSION of:
> #define LDAP_API_VERSION 2005
> [Which should be appropriate for compiling Postfix with the Solaris 10
> bundled LDAP libraries. I didn't actually try that.]
> Vs. current OpenLDAP development ldap.h files with:
> #define LDAP_API_VERSION 3001
So, indeed, a simple run-time check would have detected this "DLL
hell" problem, just like Postfix already does with SASL and with
It's unfortunate that the C run-time system doesn't report such
library mismatches, and that Postfix will have to do it instead.