summaryrefslogtreecommitdiff
path: root/source4
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2010-11-29 14:10:57 +1100
committerAndrew Tridgell <tridge@samba.org>2010-11-29 18:04:42 +1100
commit8c59bbd757e834f8dd1037edcd4ad5cf96a602a4 (patch)
tree17b8941f7523b865b801ab8b58c97c955a61c60e /source4
parentabe9ac53f0d240a867d499f184866603143756cf (diff)
downloadsamba-8c59bbd757e834f8dd1037edcd4ad5cf96a602a4.tar.gz
samba-8c59bbd757e834f8dd1037edcd4ad5cf96a602a4.tar.bz2
samba-8c59bbd757e834f8dd1037edcd4ad5cf96a602a4.zip
s4-join: fixed exception handling in join command
Diffstat (limited to 'source4')
-rw-r--r--source4/scripting/python/samba/join.py19
1 files changed, 10 insertions, 9 deletions
diff --git a/source4/scripting/python/samba/join.py b/source4/scripting/python/samba/join.py
index 12df25a866..60f3ac305b 100644
--- a/source4/scripting/python/samba/join.py
+++ b/source4/scripting/python/samba/join.py
@@ -120,14 +120,14 @@ class dc_join:
if recursive:
try:
res = ctx.samdb.search(base=dn, scope=ldb.SCOPE_ONELEVEL, attrs=["dn"])
- except:
+ except Exception:
return
for r in res:
ctx.del_noerror(r.dn, recursive=True)
try:
ctx.samdb.delete(dn)
print "Deleted %s" % dn
- except:
+ except Exception:
pass
def cleanup_old_join(ctx):
@@ -151,16 +151,15 @@ class dc_join:
if res:
ctx.new_krbtgt_dn = res[0]["msDS-Krbtgtlink"][0]
ctx.del_noerror(ctx.new_krbtgt_dn)
- except:
+ except Exception:
pass
def find_dc(ctx, domain):
'''find a writeable DC for the given domain'''
try:
ctx.cldap_ret = ctx.net.finddc(domain, nbt.NBT_SERVER_LDAP | nbt.NBT_SERVER_DS | nbt.NBT_SERVER_WRITABLE)
- except Exception, reason:
- print("Failed to find a writeable DC for domain '%s': %s" % (domain, reason))
- sys.exit(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 != "":
ctx.site = ctx.cldap_ret.client_site
return ctx.cldap_ret.pdc_dns_name
@@ -199,8 +198,10 @@ class dc_join:
'''check if a DN exists'''
try:
res = ctx.samdb.search(base=dn, scope=ldb.SCOPE_BASE, attrs=[])
- except ldb.LdbError, (ERR_NO_SUCH_OBJECT, _):
- return False
+ except ldb.LdbError, (enum, estr):
+ if enum == ldb.ERR_NO_SUCH_OBJECT:
+ return False
+ raise
return True
def add_krbtgt_account(ctx):
@@ -506,7 +507,7 @@ class dc_join:
ctx.join_provision()
ctx.join_replicate()
ctx.join_finalise()
- except:
+ except Exception:
print "Join failed - cleaning up"
ctx.cleanup_old_join()
raise