python-samba-tool fsmo: Do not give an error on a successful role transfer
authorAndrew Bartlett <abartlet@samba.org>
Thu, 9 May 2013 03:16:55 +0000 (15:16 +1200)
committerStefan Metzmacher <metze@samba.org>
Mon, 23 Sep 2013 10:00:24 +0000 (12:00 +0200)
Bug: https://bugzilla.samba.org/show_bug.cgi?id=9461

Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Mon Sep 23 12:00:24 CEST 2013 on sn-devel-104

python/samba/netcmd/fsmo.py

index c938c91..02721f9 100644 (file)
@@ -124,22 +124,22 @@ all=all of the above"""),
             self.message("Attempting transfer...")
             try:
                 transfer_role(self.outf, role, samdb)
+                self.outf.write("FSMO seize was not required, as transfer of '%s' role was successful\n" % role)
+                return
             except CommandError:
             #transfer failed, use the big axe...
                 self.message("Transfer unsuccessful, seizing...")
-                m["fSMORoleOwner"]= ldb.MessageElement(
-                    serviceName, ldb.FLAG_MOD_REPLACE,
-                    "fSMORoleOwner")
         else:
             self.message("Will not attempt transfer, seizing...")
-            m["fSMORoleOwner"]= ldb.MessageElement(
-                serviceName, ldb.FLAG_MOD_REPLACE,
-                "fSMORoleOwner")
+
+        m["fSMORoleOwner"]= ldb.MessageElement(
+            serviceName, ldb.FLAG_MOD_REPLACE,
+            "fSMORoleOwner")
         try:
             samdb.modify(m)
         except LdbError, (num, msg):
             raise CommandError("Failed to initiate role seize of '%s' role: %s" % (role, msg))
-        self.outf.write("FSMO transfer of '%s' role successful\n" % role)
+        self.outf.write("FSMO seize of '%s' role successful\n" % role)
 
     def run(self, force=None, H=None, role=None,
             credopts=None, sambaopts=None, versionopts=None):