Rip out code that second-guesses the libsasl soname / Debian shlibs. If cyrus sasl upstream is breaking the ABI, this needs to be fixed upstream there, not kludged around upstream here! Debian bug #546885 Upstream ITS #6302 filed. --- a/libraries/libldap/cyrus.c +++ b/libraries/libldap/cyrus.c @@ -74,28 +74,6 @@ int ldap_int_sasl_init( void ) /* XXX not threadsafe */ static int sasl_initialized = 0; -#ifdef HAVE_SASL_VERSION - /* stringify the version number, sasl.h doesn't do it for us */ -#define VSTR0(maj, min, pat) #maj "." #min "." #pat -#define VSTR(maj, min, pat) VSTR0(maj, min, pat) -#define SASL_VERSION_STRING VSTR(SASL_VERSION_MAJOR, SASL_VERSION_MINOR, \ - SASL_VERSION_STEP) - { int rc; - sasl_version( NULL, &rc ); - if ( ((rc >> 16) != ((SASL_VERSION_MAJOR << 8)|SASL_VERSION_MINOR)) || - (rc & 0xffff) < SASL_VERSION_STEP) { - char version[sizeof("xxx.xxx.xxxxx")]; - sprintf( version, "%u.%d.%d", (unsigned)rc >> 24, (rc >> 16) & 0xff, - rc & 0xffff ); - - Debug( LDAP_DEBUG_ANY, - "ldap_int_sasl_init: SASL library version mismatch:" - " expected " SASL_VERSION_STRING "," - " got %s\n", version, 0, 0 ); - return -1; - } - } -#endif if ( sasl_initialized ) { return 0; } --- a/servers/slapd/sasl.c +++ b/servers/slapd/sasl.c @@ -1145,26 +1145,6 @@ int slap_sasl_init( void ) #endif #ifdef HAVE_CYRUS_SASL -#ifdef HAVE_SASL_VERSION - /* stringify the version number, sasl.h doesn't do it for us */ -#define VSTR0(maj, min, pat) #maj "." #min "." #pat -#define VSTR(maj, min, pat) VSTR0(maj, min, pat) -#define SASL_VERSION_STRING VSTR(SASL_VERSION_MAJOR, SASL_VERSION_MINOR, \ - SASL_VERSION_STEP) - - sasl_version( NULL, &rc ); - if ( ((rc >> 16) != ((SASL_VERSION_MAJOR << 8)|SASL_VERSION_MINOR)) || - (rc & 0xffff) < SASL_VERSION_STEP) - { - char version[sizeof("xxx.xxx.xxxxx")]; - sprintf( version, "%u.%d.%d", (unsigned)rc >> 24, (rc >> 16) & 0xff, - rc & 0xffff ); - Debug( LDAP_DEBUG_ANY, "slap_sasl_init: SASL library version mismatch:" - " expected %s, got %s\n", - SASL_VERSION_STRING, version, 0 ); - return -1; - } -#endif sasl_set_mutex( ldap_pvt_sasl_mutex_new,