我正在使用ldap函数来获取使用win32 api的用户属性值。
用户名是arun
。
在ldap_functions里像init,set_options,connect,bind是成功的,但是ldap的search函数返回错误码10。
在这里我的代码
errorCode = ldap_search_s( pLdapConnection, // Session handle pMyDN, // DN to start search LDAP_SCOPE_SUBTREE, // Scope LDAP_SCOPE_BASE LDAP_SCOPE_SUBTREE pMyFilter, // Filter NULL, // Retrieve list of attributes 0, // Get both attributes and values &pSearchResult);
在pMyDN
指定`“DC = SANJU,DC = CO,DC = IN”…
返回代码10给出的错误是LDAP_REFERRAL
但我不能得到它。
但是我把pMyDN
值写入"OU=Marketing,DC=SANJU,DC=CO,DC=IN"
现在searchfunction成功了,那么问题是什么?
我需要这个function,而不使用OU,任何人都可以帮忙吗?
LDAP_REFERRAL:如果给定的基本DN是当前服务器未处理的条目,并且引用URL标识用于处理该条目的不同服务器,则由Directory server发送。
不管DNS和AD在不同的URL(IP)中是否有可信规则,都会出现这个问题。
LDAP响应不使用error codes
,它们使用result codes
– 所谓的,因为非零响应不一定是错误。 10就是一个例子,这是一个推荐。 引荐将包含有关可以处理请求的服务器的信息。 如果目录代理服务器不适用于引荐,则LDAP客户端必须遵循引荐。
比较操作响应也使用结果代码来传送比较结果。