2012-04-19 2 views
5

Я меняю устаревшие функции ldap на функции, не устаревшие. Но у меня проблемы с ldap_sasl_bind_s. It returns error code 49, что означает недопустимые учетные данные. Но я уверен, что учетные данные действительны. В противном случае я добавилОшибка при переходе на неустановленные функции ldap

TLS_REQCERT never 

TLSVerifyClient never 

к /etc/openldap/ldap.conf. Тем не менее, я получаю ошибку.

ldap_simple_bind_s(q->ld, binddn, creds.bv_val); //works well 

ldap_sasl_bind_s(q->ld, binddn, LDAP_SASL_SIMPLE , &creds, NULL, NULL, NULL); //returns ldap error code 49 but continues working 

Основная проблема заключается в том, что: Когда я использую ldap_sasl_bind_s, он не связывает все attrbiutes, что я получил в моей Ldap архитектуре. Также, когда я ищу существующий атрибут, он возвращает ошибку NOSUCH.

Любая помощь будет оценена по достоинству.

ответ

0

Basic C программирования покрытия убер-основы, хотя что-то подсказывает мне, что вы читали этот материал уже: (? И я не могу сказать, из вашего вопроса, если ваше приложение является внешним или вы двигаетесь устаревшие функции из OpenLDAP источников)

Вы читали this document, что указывает на то, что ldap_simple_bind и ldap_sasl_bind_s будут работать так же, если char *LDAP_SASL_SIMPLE = 0;