迁移到非弃用的ldap函数时出错

时间:2012-04-19 09:21:34

标签: c openldap

我正在将弃用的ldap函数更改为不推荐使用的函数。但是我遇到了ldap_sasl_bind_s. It returns error code 49的问题,这意味着凭据无效。但我确信凭证有效。否则我添加了

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时,它并没有绑定我的ldap架构中的所有attrbiutes。此外,当我搜索现有属性时,它返回NOSUCH错误。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

基本的C编程涵盖了超级基础知识,虽然有些东西告诉我你已经读过这些东西了:(我无法从你的问题中看出你的应用程序是外部的还是你正在从openldap移动弃用函数?来源)

您是否阅读了this document,其中向我表明ldap_simple_bindldap_sasl_bind_s如果char *LDAP_SASL_SIMPLE = 0;

将会有相同的效果