version 1.34, 2000/10/09 20:11:34
|
version 1.35, 2001/06/14 22:14:56
|
Line 1
|
Line 1
|
/* $OpenLDAP: pkg/ldap/libraries/libldap/sasl.c,v 1.33 2000/09/14 22:09:24 kurt Exp $ */ |
/* $OpenLDAP: pkg/ldap/libraries/libldap/sasl.c,v 1.34 2000/10/09 20:11:34 kurt Exp $ */ |
/* |
/* |
* Copyright 1998-2000 The OpenLDAP Foundation, All Rights Reserved. |
* Copyright 1998-2000 The OpenLDAP Foundation, All Rights Reserved. |
* COPYING RESTRICTIONS APPLY, see COPYRIGHT file |
* COPYING RESTRICTIONS APPLY, see COPYRIGHT file |
Line 37
|
Line 37
|
|
|
#include "ldap-int.h" |
#include "ldap-int.h" |
|
|
|
|
/* |
/* |
* ldap_sasl_bind - bind to the ldap server (and X.500). |
* ldap_sasl_bind - bind to the ldap server (and X.500). |
* The dn (usually NULL), mechanism, and credentials are provided. |
* The dn (usually NULL), mechanism, and credentials are provided. |
Line 417 ldap_sasl_interactive_bind_s(
|
Line 416 ldap_sasl_interactive_bind_s(
|
{ |
{ |
int rc; |
int rc; |
|
|
|
#if defined( LDAP_R_COMPILE ) && defined( HAVE_CYRUS_SASL ) |
|
ldap_pvt_thread_mutex_lock( &ldap_int_sasl_mutex ); |
|
#endif |
|
|
if( mechs == NULL || *mechs == '\0' ) { |
if( mechs == NULL || *mechs == '\0' ) { |
char *smechs; |
char *smechs; |
|
|
rc = ldap_pvt_sasl_getmechs( ld, &smechs ); |
rc = ldap_pvt_sasl_getmechs( ld, &smechs ); |
|
|
if( rc != LDAP_SUCCESS ) { |
if( rc != LDAP_SUCCESS ) { |
return rc; |
goto done; |
} |
} |
|
|
Debug( LDAP_DEBUG_TRACE, |
Debug( LDAP_DEBUG_TRACE, |
Line 442 ldap_sasl_interactive_bind_s(
|
Line 445 ldap_sasl_interactive_bind_s(
|
serverControls, clientControls, |
serverControls, clientControls, |
flags, interact, defaults ); |
flags, interact, defaults ); |
|
|
|
done: |
|
#if defined( LDAP_R_COMPILE ) && defined( HAVE_CYRUS_SASL ) |
|
ldap_pvt_thread_mutex_unlock( &ldap_int_sasl_mutex ); |
|
#endif |
|
|
return rc; |
return rc; |
} |
} |