Commit e8f1038d authored by Ondřej Kuzník's avatar Ondřej Kuzník Committed by Quanah Gibson-Mount
Browse files

ITS#9647 Treat glue entries as missing

We're using MANAGE_DSAIT control so we get to see them, but they don't
really exist (except for their CSN sometimes).
parent 8d514517
...@@ -1411,7 +1411,8 @@ syncprov_matchops( Operation *op, opcookie *opc, int saveit ) ...@@ -1411,7 +1411,8 @@ syncprov_matchops( Operation *op, opcookie *opc, int saveit )
} }
} }
if ( fc.fscope ) { rc = LDAP_COMPARE_FALSE;
if ( !is_entry_glue( e ) && fc.fscope ) {
ldap_pvt_thread_mutex_lock( &ss->s_mutex ); ldap_pvt_thread_mutex_lock( &ss->s_mutex );
op2 = *ss->s_op; op2 = *ss->s_op;
oh = *op->o_hdr; oh = *op->o_hdr;
...@@ -2949,6 +2950,9 @@ syncprov_search_response( Operation *op, SlapReply *rs ) ...@@ -2949,6 +2950,9 @@ syncprov_search_response( Operation *op, SlapReply *rs )
"bogus referral in context\n", op->o_log_prefix ); "bogus referral in context\n", op->o_log_prefix );
return SLAP_CB_CONTINUE; return SLAP_CB_CONTINUE;
} }
if ( is_entry_glue( rs->sr_entry ) ) {
return LDAP_SUCCESS;
}
a = attr_find( rs->sr_entry->e_attrs, slap_schema.si_ad_entryCSN ); a = attr_find( rs->sr_entry->e_attrs, slap_schema.si_ad_entryCSN );
if ( a == NULL && rs->sr_operational_attrs != NULL ) { if ( a == NULL && rs->sr_operational_attrs != NULL ) {
a = attr_find( rs->sr_operational_attrs, slap_schema.si_ad_entryCSN ); a = attr_find( rs->sr_operational_attrs, slap_schema.si_ad_entryCSN );
......
...@@ -5719,6 +5719,10 @@ nonpresent_callback( ...@@ -5719,6 +5719,10 @@ nonpresent_callback(
if ( a == NULL ) return 0; if ( a == NULL ) return 0;
} }
if ( is_entry_glue( rs->sr_entry ) ) {
return LDAP_SUCCESS;
}
if ( present_uuid == NULL ) { if ( present_uuid == NULL ) {
int covered = 1; /* covered by our new contextCSN? */ int covered = 1; /* covered by our new contextCSN? */
......
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