[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: Objectclass inheritance mechanism in queries doesn't seem to work (ITS#2053)



A fix for this has been committed to the HEAD branch.
        Kurt

At 12:47 AM 2002-08-29, dev.openldap@cynode.org wrote:
>Full_Name: M.-A. DARCHE
>Version: 2.1.4
>OS: GNU/Linux
>URL: 
>Submission from: (NULL) (213.41.87.82)
>
>
>
>RFC 2251 has a very short paragraph about objectclass inheritance :
>   Each entry MUST have an objectClass attribute.
>   ...
>   When creating an entry or adding an objectClass value to
>   an entry, all superclasses of the named classes are _implicitly_added_
>   _as_well_if_not_already_present_, and the client must supply values for
>   any mandatory attributes of new superclasses.
>
>So, if an entry present in OpenLDAP has a superclass, querying for the
>superclass should return this entry. Right now it doesn't :-(
>
>
>There is a test in the source code distribution about search, named :
>tests/scripts/test003-search
>This test is passing, but doesn't contain a "true" case for inheritance
>mechanism
>testing.
>
>test003-search tests querying, but only after populating with an LDIF content 
>that _explicitly_ specifies objectclass attributes, thus invalidating any tests
>on
>inheritance.
>The LDIF content is :
>tests/data/test-ordered.ldif
>
>As said, in this LDIF content every OpenLDAPperson entry is _explicitly_
>specified
>as a person objectclass :
>
>  dn: cn=Ursula Hampster,ou=Alumni Association,ou=People,o=University of
>Michigan,c=US
>  objectclass: top
>  objectclass: person
>  objectclass: OpenLDAPperson
>
>To exactly test inheritance, just add the following entry at the end of :
>tests/data/test-ordered.ldif
>
>  dn: cn=testEntry,ou=Alumni Association,ou=People,o=University of
>Michigan,c=US
>  objectclass: inetOrgPerson
>  cn: testEntry
>  sn: Test
>
>And in test003-search, add the following :
>echo "Testing inheritance searching..."
>$LDAPSEARCH -S "" -b "$BASEDN" -h $LOCALHOST -p $PORT \
>        '(objectclass=person)'
>
>If OpenLDAP work as I understand it should, we should see the testEntry
>entry returned... which is not the case.