]> git.sur5r.net Git - openldap/commitdiff
Fix delta deletes
authorHoward Chu <hyc@openldap.org>
Sat, 15 Oct 2005 05:13:28 +0000 (05:13 +0000)
committerHoward Chu <hyc@openldap.org>
Sat, 15 Oct 2005 05:13:28 +0000 (05:13 +0000)
servers/slapd/syncrepl.c

index 267d14e2812a4834e84b39eed5e6229b7bd9c164..691c47b00e131283196ae3b3fb315bf2163150bd 100644 (file)
@@ -1182,10 +1182,12 @@ syncrepl_accesslog_mods(
                        *modtail = mod;
                        modtail = &mod->sml_next;
                }
-               bv.bv_val = colon + 3;
-               bv.bv_len = vals[i].bv_len - ( bv.bv_val - vals[i].bv_val );
-               ber_dupbv( &bv2, &bv );
-               ber_bvarray_add( &mod->sml_values, &bv2 );
+               if ( colon[2] == ' ' ) {
+                       bv.bv_val = colon + 3;
+                       bv.bv_len = vals[i].bv_len - ( bv.bv_val - vals[i].bv_val );
+                       ber_dupbv( &bv2, &bv );
+                       ber_bvarray_add( &mod->sml_values, &bv2 );
+               }
        }
        return modlist;
 }
@@ -1344,6 +1346,9 @@ syncrepl_message_to_op(
                op->orr_deleteoldrdn = deleteOldRdn;
                rc = op->o_bd->be_modrdn( op, &rs );
                break;
+       case LDAP_REQ_DELETE:
+               rc = op->o_bd->be_delete( op, &rs );
+               break;
        }
 done:
        slap_graduate_commit_csn( op );