From: Quanah Gibson-Mount Date: Thu, 15 Apr 2010 00:42:53 +0000 (+0000) Subject: reduce code duplication X-Git-Tag: OPENLDAP_REL_ENG_2_4_22~72 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=302e8d5f840521bd6c9de18d7979cfc0118c8eaf;p=openldap reduce code duplication --- diff --git a/servers/slapd/overlays/dynlist.c b/servers/slapd/overlays/dynlist.c index 706ff59760..26c357ceca 100644 --- a/servers/slapd/overlays/dynlist.c +++ b/servers/slapd/overlays/dynlist.c @@ -108,46 +108,12 @@ dynlist_is_dynlist_next( Operation *op, SlapReply *rs, dynlist_info_t *old_dli ) for ( ; dli; dli = dli->dli_next ) { if ( dli->dli_lud != NULL ) { /* check base and scope */ - if ( !BER_BVISNULL( &dli->dli_uri_nbase ) ) { - int d = rs->sr_entry->e_nname.bv_len - dli->dli_uri_nbase.bv_len; - - if ( d < 0 ) { - continue; - } - - if ( !dnIsSuffix( &rs->sr_entry->e_nname, &dli->dli_uri_nbase ) ) { - continue; - } - - switch ( dli->dli_lud->lud_scope ) { - case LDAP_SCOPE_BASE: - if ( d != 0 ) { - continue; - } - break; - - case LDAP_SCOPE_ONELEVEL: { - struct berval pdn; - - dnParent( &rs->sr_entry->e_nname, &pdn ); - if ( pdn.bv_len != dli->dli_uri_nbase.bv_len ) { - continue; - } - } break; - - case LDAP_SCOPE_SUBORDINATE: - if ( d == 0 ) { - continue; - } - break; - - case LDAP_SCOPE_SUBTREE: - case LDAP_SCOPE_DEFAULT: - break; - - default: - continue; - } + if ( !BER_BVISNULL( &dli->dli_uri_nbase ) + && !dnIsSuffixScope( &rs->sr_entry->e_nname, + &dli->dli_uri_nbase, + dli->dli_lud->lud_scope ) ) + { + continue; } /* check filter */