From: Kurt Zeilenga Date: Thu, 15 Mar 2001 04:18:07 +0000 (+0000) Subject: Check for DN separator X-Git-Tag: OPENLDAP_REL_ENG_2_0_8~31 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=c5d24232a44d54c831d2d6a5668167cf073fea76;p=openldap Check for DN separator --- diff --git a/servers/slapd/backend.c b/servers/slapd/backend.c index bbcfdea56b..8d3d2cfead 100644 --- a/servers/slapd/backend.c +++ b/servers/slapd/backend.c @@ -442,12 +442,16 @@ select_backend( len = strlen( backends[i].be_nsuffix[j] ); if ( len > dnlen ) { + /* suffix is longer than DN */ continue; } - if ( strcmp( backends[i].be_nsuffix[j], - dn + (dnlen - len) ) == 0 ) - { + if ( len < dnlen && DN_SEPARATOR( dn[(dnlen-len)-1] ) ) { + /* make sure we have a separator */ + continue; + } + + if ( strcmp( backends[i].be_nsuffix[j], &dn[dnlen-len] ) == 0 ) { if( be == NULL ) { be = &backends[i];