Round 2 of subentry changes

This commit is contained in:
Kurt Zeilenga 2002-01-09 19:43:15 +00:00
parent 9b0585f393
commit 74421a28ec
3 changed files with 20 additions and 1 deletions

View file

@ -309,6 +309,23 @@ bdb_search(
goto loop_continue;
}
if ( is_entry_subentry( e ) ) {
if( scope != LDAP_SCOPE_BASE ) {
if(!get_subentries_visibility( op )) {
/* only subentries are visible */
goto loop_continue;
}
} else if ( get_subentries( op ) &&
!get_subentries_visibility( op ))
{
/* only subentries are visible */
goto loop_continue;
}
} else if ( get_subentries_visibility( op )) {
/* only subentries are visible */
goto loop_continue;
}
#ifdef BDB_ALIASES
if ( deref & LDAP_DEREF_SEARCHING && is_entry_alias( e ) ) {
Entry *matched;

View file

@ -800,6 +800,8 @@ LDAP_SLAPD_F (int) is_entry_objectclass LDAP_P((
is_entry_objectclass((e), slap_schema.si_oc_alias)
#define is_entry_referral(e) \
is_entry_objectclass((e), slap_schema.si_oc_referral)
#define is_entry_subentry(e) \
is_entry_objectclass((e), slap_schema.si_oc_subentry)
/*

View file

@ -124,7 +124,7 @@ static struct slap_schema_oc_map {
{ "alias", offsetof(struct slap_internal_schema, si_oc_alias) },
{ "referral", offsetof(struct slap_internal_schema, si_oc_referral) },
{ "LDAProotDSE", offsetof(struct slap_internal_schema, si_oc_rootdse) },
{ "LDAPsubentry", offsetof(struct slap_internal_schema, si_oc_subentry) },
{ "subentry", offsetof(struct slap_internal_schema, si_oc_subentry) },
{ "subschema", offsetof(struct slap_internal_schema, si_oc_subschema) },
{ NULL, 0 }
};