collect_tombstones: Allow links to recycled objects to be deleted
authorGarming Sam <garming@catalyst.net.nz>
Fri, 21 Oct 2016 02:50:09 +0000 (15:50 +1300)
committerAndrew Bartlett <abartlet@samba.org>
Thu, 3 Nov 2016 00:46:43 +0000 (01:46 +0100)
The reason we choose to provide the string DN is because extended_dn_in
will try to correct the <GUID=...> by searching on it (despite the fact
it does not exist and then failing on a ldb_dn_validate in
objectclass_attrs).

We can now also remove the dangling link test from the knownfail.

Signed-off-by: Garming Sam <garming@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
BUG: https://bugzilla.samba.org/show_bug.cgi?id=12385

Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
Autobuild-Date(master): Thu Nov  3 01:46:43 CET 2016 on sn-devel-144

selftest/knownfail
source4/dsdb/kcc/garbage_collect_tombstones.c

index de7e920de08a777394df9b57d3fe3868326e27c3..38b5f51bb369bdf8545c462b83333a2cb3dd01db 100644 (file)
 ^samba4.rpc.echo.*on.*with.object.echo.sinkdata.*nt4_dc
 ^samba4.rpc.echo.*on.*with.object.echo.addone.*nt4_dc
 ^samba4.rpc.echo.*on.*ncacn_ip_tcp.*with.object.*nt4_dc
-^samba4.blackbox.tombstones-expunge.release-4-5-0-pre1.tombstones_expunge
index ad14d5e55bb188d1e5539cc608f18e62087fe8af..1909cfeff76c7631e63fea688279a0d16c858b22 100644 (file)
@@ -193,8 +193,9 @@ static NTSTATUS garbage_collect_tombstones_part(TALLOC_CTX *mem_ctx,
 
                                guid_buf_str = GUID_buf_string(&guid, &buf_guid);
                                guid_search_str = talloc_asprintf(mem_ctx,
-                                                                 "<GUID=%s>",
-                                                                 guid_buf_str);
+                                                                 "<GUID=%s>;%s",
+                                                                 guid_buf_str,
+                                                                 dsdb_dn_get_linearized(mem_ctx, dn));
                                cleanup_val = data_blob_string_const(guid_search_str);
 
                                talloc_free(dn);