diff options
-rw-r--r-- | source3/configure.in | 15 | ||||
-rw-r--r-- | source3/lib/ldap_debug_handler.c | 4 |
2 files changed, 17 insertions, 2 deletions
diff --git a/source3/configure.in b/source3/configure.in index 7ed29fe902..5cc9019407 100644 --- a/source3/configure.in +++ b/source3/configure.in @@ -3490,6 +3490,21 @@ if test x"$with_ldap_support" != x"no"; then AC_DEFINE(HAVE_LDAP_SASL_WRAPPING, 1, [Support for SASL wrapping]) fi + ####################################################### + # if we have LBER_OPT_LOG_PRINT_FN, we can intercept + # ldap logging and print it out in the samba logs + AC_CACHE_CHECK([for LBER_OPT_LOG_PRINT_FN], + samba_cv_HAVE_LBER_OPT_LOG_PRINT_FN, + [AC_TRY_COMPILE([#include <lber.h>], + [int val = LBER_OPT_LOG_PRINT_FN;], + samba_cv_HAVE_LBER_OPT_LOG_PRINT_FN=yes, + samba_cv_HAVE_LBER_OPT_LOG_PRINT_FN=no)]) + + if test x"$samba_cv_HAVE_LBER_OPT_LOG_PRINT_FN" = x"yes"; then + AC_DEFINE(HAVE_LBER_LOG_PRINT_FN, 1, + [Support for LDAP/LBER logging interception]) + fi + ######################################################## # now see if we can find the ldap libs in standard paths AC_CHECK_LIB_EXT(ldap, LDAP_LIBS, ldap_init) diff --git a/source3/lib/ldap_debug_handler.c b/source3/lib/ldap_debug_handler.c index 88d0c0beec..2181ff014d 100644 --- a/source3/lib/ldap_debug_handler.c +++ b/source3/lib/ldap_debug_handler.c @@ -30,7 +30,7 @@ static void samba_ldap_log_print_fn(LDAP_CONST char *data) void init_ldap_debugging(void) { -#if HAVE_LDAP +#if defined(HAVE_LDAP) && defined(HAVE_LBER_LOG_PRINT_FN) int ret; int ldap_debug_level = lp_ldap_debug_level(); @@ -48,5 +48,5 @@ void init_ldap_debugging(void) if (ret != LBER_OPT_SUCCESS) { DEBUG(10, ("Error setting LBER log print function.\n")); } -#endif /* HAVE_LDAP */ +#endif /* HAVE_LDAP && HAVE_LBER_LOG_PRINT_FN */ } |