error code 32 means "no such object", not zero entries match a query.

On Oct 15, 2008, at 10:57 AM, Agarwal, Sharad wrote:

Hi All,

Is it standard behavior for an LDAP server to respond with (LDAP Error
32) when a query is run that has no match?

I tried a zero result query with the embedded LDAP Server (that comes
with WebLogic). This query does not return LDAP Error 32, it just
returns an empty result set.

Code snippet:
~~~~
       int ldapVersion   = LDAPConnection.LDAP_V3;
       int ldapPort      = 27001;
       String ldapHost   = "fesbosbgdd33v3";
       String loginDN    =
"uid=vgnadmin,ou=people,ou=VgnLDAPRealm,dc=vgndomain";
       String password   = "password masked";
       String searchBase = "ou=groups,ou=VgnLDAPRealm,dc=vgndomain";
       String searchFilter =
"(&(uniquemember
=cn=Administrators,ou=groups,ou=VgnLDAPRealm,dc=vgndomai
n)(objectclass=groupOfUniqueNames))";
~~~~

Code output:
~~~~
searchResults.getCount() = 0
~~~~

The same kind of query against another LDAP interface (Oracle Virtual
Directory) returns LDAP Error 32.
~~~~
searchResults.getCount() = 0
Error: LDAPException: No Such Object (32) No Such Object
LDAPException: Server Message: LDAP Error 32 : No Such Object
LDAPException: Matched DN:
~~~~

I tried all kinds of queries (valid, invalid, meaningless) against the
embedded LDAP, and each succeeded with either no result or the correct
result.

Please advise,
Sharad



http://twitter.com/tgardner

"True glory consists in doing what deserves to be written; in writing what deserves to be read" - Pliny the Elder


Reply via email to