From: Tim Beale Date: Thu, 14 Jun 2018 23:54:37 +0000 (+1200) Subject: remove_dc: Fix removal of an old Windows DC X-Git-Tag: tevent-0.9.37~220 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=562ec950fc27ae498c53a2188329530651e64e05;p=thirdparty%2Fsamba.git remove_dc: Fix removal of an old Windows DC Windows has 'CN=DNS Settings' child object underneath the Server object. This was causing the removal of the server object in remove_dc() to fail. Noticed this problem while testing the backup/restore tool manually against a Windows VM. BUG: https://bugzilla.samba.org/show_bug.cgi?id=13484 Signed-off-by: Tim Beale Reviewed-by: Andrew Bartlett Reviewed-by: Gary Lockyer Autobuild-User(master): Gary Lockyer Autobuild-Date(master): Tue Jun 26 23:32:51 CEST 2018 on sn-devel-144 --- diff --git a/python/samba/remove_dc.py b/python/samba/remove_dc.py index b9726f5b84f..d1904610e91 100644 --- a/python/samba/remove_dc.py +++ b/python/samba/remove_dc.py @@ -240,8 +240,9 @@ def offline_remove_server(samdb, logger, dnsHostName = None if remove_server_obj: - # Remove the server DN - samdb.delete(server_dn) + # Remove the server DN (do a tree-delete as it could still have a + # 'DNS Settings' child object if it's a Windows DC) + samdb.delete(server_dn, ["tree_delete:0"]) if computer_dn is not None: computer_msgs = samdb.search(base=computer_dn,