summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Beale <timbeale@catalyst.net.nz>2019-01-16 15:17:38 +1300
committerKarolin Seeger <kseeger@samba.org>2019-02-05 15:33:28 +0100
commite51de1d48a4656d08d1276477fe48cb7c9a15603 (patch)
tree0471c2a82959772b994d8c4779477313beb8f26d
parent3477e19d742e08c946c565f1f9c30e5db16d1c15 (diff)
downloadsamba-e51de1d48a4656d08d1276477fe48cb7c9a15603.tar.gz
join: Fix TypeError when handling exception
When we can't resolve a domain name, we were inadvertently throwing a TypeError whilst trying to output a helpful message. E.g. ERROR(<class 'TypeError'>): uncaught exception - 'NTSTATUSError' object does not support indexing Instead of indexing the object, we want to index the Exception.args so that we just display the string portion of the exception error. The same problem is also present for the domain trust commands. BUG: https://bugzilla.samba.org/show_bug.cgi?id=13747 Signed-off-by: Tim Beale <timbeale@catalyst.net.nz> Reviewed-by: Rowland Penny <rpenny@samba.org> Reviewed-by: Jeremy Allison <rpenny@samba.org> (cherry picked from commit 3bb7808984c163a7bba66fb983411d1281589722)
-rw-r--r--python/samba/join.py2
-rw-r--r--python/samba/netcmd/domain.py2
2 files changed, 2 insertions, 2 deletions
diff --git a/python/samba/join.py b/python/samba/join.py
index 3b648f50090..3eaac752f4e 100644
--- a/python/samba/join.py
+++ b/python/samba/join.py
@@ -338,7 +338,7 @@ class DCJoinContext(object):
ctx.cldap_ret = ctx.net.finddc(domain=domain, flags=nbt.NBT_SERVER_LDAP | nbt.NBT_SERVER_DS | nbt.NBT_SERVER_WRITABLE)
except NTSTATUSError as error:
raise Exception("Failed to find a writeable DC for domain '%s': %s" %
- (domain, error[1]))
+ (domain, error.args[1]))
except Exception:
raise Exception("Failed to find a writeable DC for domain '%s'" % domain)
if ctx.cldap_ret.client_site is not None and ctx.cldap_ret.client_site != "":
diff --git a/python/samba/netcmd/domain.py b/python/samba/netcmd/domain.py
index 1d34d0620eb..f9dc08fab64 100644
--- a/python/samba/netcmd/domain.py
+++ b/python/samba/netcmd/domain.py
@@ -1818,7 +1818,7 @@ class DomainTrustCommand(Command):
remote_info = remote_net.finddc(flags=remote_flags, domain=domain, address=remote_server)
except NTSTATUSError as error:
raise CommandError("Failed to find a writeable DC for domain '%s': %s" %
- (domain, error[1]))
+ (domain, error.args[1]))
except Exception:
raise CommandError("Failed to find a writeable DC for domain '%s'" % domain)
flag_map = {