diff options
Diffstat (limited to 'usr/src/lib/libadutils/common/addisc.c')
| -rw-r--r-- | usr/src/lib/libadutils/common/addisc.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/usr/src/lib/libadutils/common/addisc.c b/usr/src/lib/libadutils/common/addisc.c index f98461554d..7a9805bc68 100644 --- a/usr/src/lib/libadutils/common/addisc.c +++ b/usr/src/lib/libadutils/common/addisc.c @@ -834,7 +834,6 @@ ldap_lookup_init(idmap_ad_disc_ds_t *ds) ldversion = LDAP_VERSION3; (void) ldap_set_option(ld, LDAP_OPT_PROTOCOL_VERSION, &ldversion); - (void) ldap_set_option(ld, LDAP_OPT_REFERRALS, LDAP_OPT_OFF); (void) ldap_set_option(ld, LDAP_OPT_TIMELIMIT, &zero); @@ -845,6 +844,14 @@ ldap_lookup_init(idmap_ad_disc_ds_t *ds) (void) ldap_set_option(ld, LDAP_OPT_RESTART, LDAP_OPT_ON); + rc = adutils_set_thread_functions(ld); + if (rc != LDAP_SUCCESS) { + /* Error has already been logged */ + (void) ldap_unbind(ld); + ld = NULL; + continue; + } + rc = ldap_sasl_interactive_bind_s(ld, "" /* binddn */, saslmech, NULL, NULL, saslflags, &saslcallback, NULL /* defaults */); |
