summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGarming Sam <garming@catalyst.net.nz>2016-10-21 15:50:09 +1300
committerAndrew Bartlett <abartlet@samba.org>2016-11-03 01:46:43 +0100
commitef7e46d68a6596be6e904caaa04e917c576dd9d3 (patch)
treee758aeaa5762eb55017e092857f17f253174917c
parentdba624364cde1c885640386c4e2bca17e9d5297c (diff)
downloadsamba-ef7e46d68a6596be6e904caaa04e917c576dd9d3.tar.gz
collect_tombstones: Allow links to recycled objects to be deleted
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
-rw-r--r--selftest/knownfail1
-rw-r--r--source4/dsdb/kcc/garbage_collect_tombstones.c5
2 files changed, 3 insertions, 3 deletions
diff --git a/selftest/knownfail b/selftest/knownfail
index de7e920de08..38b5f51bb36 100644
--- a/selftest/knownfail
+++ b/selftest/knownfail
@@ -306,4 +306,3 @@
^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
diff --git a/source4/dsdb/kcc/garbage_collect_tombstones.c b/source4/dsdb/kcc/garbage_collect_tombstones.c
index ad14d5e55bb..1909cfeff76 100644
--- a/source4/dsdb/kcc/garbage_collect_tombstones.c
+++ b/source4/dsdb/kcc/garbage_collect_tombstones.c
@@ -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);