Commit 1f3d88f3 authored by Pierangelo Masarati's avatar Pierangelo Masarati
Browse files

recent check for syncrepl searchbase broke test048; fixing...

parent a73826b8
...@@ -693,6 +693,26 @@ be_issuffix( ...@@ -693,6 +693,26 @@ be_issuffix(
return 0; return 0;
} }
int
be_issubordinate(
Backend *be,
struct berval *bvsubordinate )
{
int i;
if ( be->be_nsuffix == NULL ) {
return 0;
}
for ( i = 0; !BER_BVISNULL( &be->be_nsuffix[i] ); i++ ) {
if ( dnIsSuffix( bvsubordinate, &be->be_nsuffix[i] ) ) {
return 1;
}
}
return 0;
}
int int
be_isroot_dn( Backend *be, struct berval *ndn ) be_isroot_dn( Backend *be, struct berval *ndn )
{ {
......
...@@ -340,6 +340,8 @@ LDAP_SLAPD_F (BackendDB *) select_backend LDAP_P(( ...@@ -340,6 +340,8 @@ LDAP_SLAPD_F (BackendDB *) select_backend LDAP_P((
LDAP_SLAPD_F (int) be_issuffix LDAP_P(( Backend *be, LDAP_SLAPD_F (int) be_issuffix LDAP_P(( Backend *be,
struct berval *suffix )); struct berval *suffix ));
LDAP_SLAPD_F (int) be_issubordinate LDAP_P(( Backend *be,
struct berval *subordinate ));
LDAP_SLAPD_F (int) be_isroot LDAP_P(( Operation *op )); LDAP_SLAPD_F (int) be_isroot LDAP_P(( Operation *op ));
LDAP_SLAPD_F (int) be_isroot_dn LDAP_P(( Backend *be, struct berval *ndn )); LDAP_SLAPD_F (int) be_isroot_dn LDAP_P(( Backend *be, struct berval *ndn ));
LDAP_SLAPD_F (int) be_isroot_pw LDAP_P(( Operation *op )); LDAP_SLAPD_F (int) be_isroot_pw LDAP_P(( Operation *op ));
......
...@@ -3358,8 +3358,9 @@ parse_syncrepl_line( ...@@ -3358,8 +3358,9 @@ parse_syncrepl_line(
Debug( LDAP_DEBUG_ANY, "%s: %s.\n", c->log, c->cr_msg, 0 ); Debug( LDAP_DEBUG_ANY, "%s: %s.\n", c->log, c->cr_msg, 0 );
return -1; return -1;
} }
if ( select_backend( &si->si_base, 0 ) != c->be ) { if ( !be_issubordinate( c->be, &si->si_base ) ) {
ber_memfree( si->si_base.bv_val ); ch_free( si->si_base.bv_val );
BER_BVZERO( &si->si_base );
snprintf( c->cr_msg, sizeof( c->cr_msg ), snprintf( c->cr_msg, sizeof( c->cr_msg ),
"Base DN \"%s\" is not within the database naming context", "Base DN \"%s\" is not within the database naming context",
val ); val );
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment