samba-tool: don't print backtrace on simple DNS errors
authorBjörn Jacke <bj@sernet.de>
Tue, 18 Dec 2018 11:58:53 +0000 (12:58 +0100)
committerKarolin Seeger <kseeger@samba.org>
Thu, 10 Jan 2019 15:55:06 +0000 (16:55 +0100)
samba-tool throws backtraces even for simple DNS error
messages, we should not frighten users for no good reason.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=13721

Signed-off-by: Bjoern Jacke <bj@sernet.de>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Björn Jacke <bj@sernet.de>
Autobuild-Date(master): Wed Dec 19 20:58:52 CET 2018 on sn-devel-144

(cherry picked from commit 49dc04f9f553c443c78c8073c07ea2a38cde61b2)

Autobuild-User(v4-9-test): Karolin Seeger <kseeger@samba.org>
Autobuild-Date(v4-9-test): Thu Jan 10 16:55:06 CET 2019 on sn-devel-144

python/samba/netcmd/dns.py

index ab6bacc6050b6724e4c5434bdd2d339b07d0c277..5d6dd0423cb34a832353be53912e31be47809ea1 100644 (file)
@@ -781,7 +781,7 @@ class cmd_zonedelete(Command):
                                             None)
         except WERRORError as e:
             if e.args[0] == werror.WERR_DNS_ERROR_ZONE_DOES_NOT_EXIST:
-                self.outf.write('Zone does not exist and so could not be deleted.')
+                raise CommandError('Zone does not exist and so could not be deleted.')
             raise e
 
         self.outf.write('Zone %s deleted successfully\n' % zone)
@@ -861,7 +861,7 @@ class cmd_query(Command):
                 None, record_type, select_flags, None, None)
         except WERRORError as e:
             if e.args[0] == werror.WERR_DNS_ERROR_NAME_DOES_NOT_EXIST:
-                self.outf.write('Record or zone does not exist.')
+                raise CommandError('Record or zone does not exist.')
             raise e
 
         print_dnsrecords(self.outf, res)
@@ -941,7 +941,7 @@ class cmd_add_record(Command):
                                          0, server, zone, name, add_rec_buf, None)
         except WERRORError as e:
             if e.args[0] == werror.WERR_DNS_ERROR_NAME_DOES_NOT_EXIST:
-                self.outf.write('Zone does not exist; record could not be added.\n')
+                raise CommandError('Zone does not exist; record could not be added.')
             raise e
 
         self.outf.write('Record added successfully\n')
@@ -1012,7 +1012,7 @@ class cmd_update_record(Command):
                                          del_rec_buf)
         except WERRORError as e:
             if e.args[0] == werror.WERR_DNS_ERROR_NAME_DOES_NOT_EXIST:
-                self.outf.write('Zone does not exist; record could not be updated.\n')
+                raise CommandError('Zone does not exist; record could not be updated.')
             raise e
 
         self.outf.write('Record updated successfully\n')
@@ -1067,7 +1067,7 @@ class cmd_delete_record(Command):
                                          del_rec_buf)
         except WERRORError as e:
             if e.args[0] == werror.WERR_DNS_ERROR_NAME_DOES_NOT_EXIST:
-                self.outf.write('Zone does not exist; record could not be deleted.\n')
+                raise CommandError('Zone does not exist; record could not be deleted.')
             raise e
 
         self.outf.write('Record deleted successfully\n')