From: Jong Hyuk Choi Date: Wed, 21 May 2003 23:44:10 +0000 (+0000) Subject: If the sync mode is refreshAndPersist, X-Git-Tag: OPENLDAP_REL_ENG_2_2_0ALPHA~94 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=a0faa93683c3168f896c10615cd76d4aa7447278;p=openldap If the sync mode is refreshAndPersist, search does not return error when base entry is not found --- diff --git a/servers/slapd/back-bdb/search.c b/servers/slapd/back-bdb/search.c index 48ffd1e8ff..6acb9303c3 100644 --- a/servers/slapd/back-bdb/search.c +++ b/servers/slapd/back-bdb/search.c @@ -513,7 +513,16 @@ dn2entry_retry: switch(rs->sr_err) { case DB_NOTFOUND: - matched = ei->bei_e; break; + if ( sop->o_sync_mode & SLAP_SYNC_PERSIST ) { + rs->sr_err = LDAP_SUCCESS; + rs->sr_rspoid = LDAP_SYNC_INFO; + rs->sr_ctrls = NULL; + bdb_send_ldap_intermediate( sop, rs, + LDAP_SYNC_REFRESH_DONE, &latest_entrycsn_bv ); + goto done; + } else { + matched = ei->bei_e; break; + } case 0: e = ei->bei_e; break; case LDAP_BUSY: