samba-tool dns: zonedelete uses DnsConnWrapper messages
authorDouglas Bagnall <douglas.bagnall@catalyst.net.nz>
Fri, 12 Aug 2022 04:44:31 +0000 (16:44 +1200)
committerDouglas Bagnall <dbagnall@samba.org>
Tue, 6 Sep 2022 21:12:36 +0000 (21:12 +0000)
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
python/samba/netcmd/dns.py

index 10374ade45e2d340e6716f56d44372074024319d..c7b00ec5e177300af7bcf36aa7743117bcc3cdda 100644 (file)
@@ -991,15 +991,15 @@ class cmd_zonedelete(Command):
         dns_conn = DnsConnWrapper(server, self.lp, self.creds)
 
         zone = zone.lower()
-        try:
-            res = dns_conn.DnssrvOperation2(dnsserver.DNS_CLIENT_VERSION_LONGHORN,
-                                            0, server, zone, 0, 'DeleteZoneFromDs',
-                                            dnsserver.DNSSRV_TYPEID_NULL,
-                                            None)
-        except WERRORError as e:
-            if e.args[0] == werror.WERR_DNS_ERROR_ZONE_DOES_NOT_EXIST:
-                raise CommandError('Zone does not exist and so could not be deleted.')
-            raise e
+
+        messages = {
+            werror.WERR_DNS_ERROR_ZONE_DOES_NOT_EXIST: (
+                f'Zone {zone} does not exist and so could not be deleted.'),
+        }
+        res = dns_conn.DnssrvOperation2(dnsserver.DNS_CLIENT_VERSION_LONGHORN,
+                                        0, server, zone, 0, 'DeleteZoneFromDs',
+                                        dnsserver.DNSSRV_TYPEID_NULL,
+                                        None, messages=messages)
 
         self.outf.write('Zone %s deleted successfully\n' % zone)