mirror of
https://github.com/samba-team/samba.git
synced 2025-01-11 05:18:09 +03:00
join: Throw CommandError instead of Exception for simple errors
Throwing an exception here still dumps out the Python stack trace, which can be a little disconcerting for users. In this case, the stack trace isn't going to really help at all (the problem is pretty obvious), and it obscures the useful message explaining what went wrong. Throw a CommandError instead, which samba-tool will catch and display more nicely. 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> Autobuild-User(master): Jeremy Allison <jra@samba.org> Autobuild-Date(master): Wed Jan 16 22:11:04 CET 2019 on sn-devel-144
This commit is contained in:
parent
3bb7808984
commit
9e4b08f4c3
@ -50,6 +50,7 @@ import os
|
||||
import tempfile
|
||||
from samba.compat import text_type
|
||||
from samba.compat import get_string
|
||||
from samba.netcmd import CommandError
|
||||
|
||||
|
||||
class DCJoinException(Exception):
|
||||
@ -345,10 +346,10 @@ class DCJoinContext(object):
|
||||
try:
|
||||
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" %
|
||||
raise CommandError("Failed to find a writeable DC for domain '%s': %s" %
|
||||
(domain, error.args[1]))
|
||||
except Exception:
|
||||
raise Exception("Failed to find a writeable DC for domain '%s'" % domain)
|
||||
raise CommandError("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 != "":
|
||||
ctx.site = ctx.cldap_ret.client_site
|
||||
return ctx.cldap_ret.pdc_dns_name
|
||||
|
Loading…
Reference in New Issue
Block a user