s4:join python code - "msDS-KeyVersionNumber" does not exist on Win2k
authorMatthias Dieter Wallnöfer <mdw@samba.org>
Mon, 30 Jan 2012 16:20:28 +0000 (17:20 +0100)
committerAndrew Bartlett <abartlet@samba.org>
Sun, 12 Feb 2012 22:49:20 +0000 (09:49 +1100)
No problem since "secretsdb_self_join()" then chooses 1 as a default
value.
Fix case sensitivity for "msDS-KeyVersionNumber".

Signed-off-by: Andrew Bartlett <abartlet@samba.org>
source4/scripting/python/samba/join.py

index dc09b46059b0b14fb55d77d01277ece106ec0a60..b695277db3b73858b840f1a64b5b30607c560ee7 100644 (file)
@@ -506,8 +506,12 @@ class dc_join(object):
                                      domain_name=ctx.domain_name,
                                      newpassword=ctx.acct_pass)
 
-            res = ctx.samdb.search(base=ctx.acct_dn, scope=ldb.SCOPE_BASE, attrs=["msDS-keyVersionNumber"])
-            ctx.key_version_number = int(res[0]["msDS-keyVersionNumber"][0])
+            res = ctx.samdb.search(base=ctx.acct_dn, scope=ldb.SCOPE_BASE,
+                                   attrs=["msDS-KeyVersionNumber"])
+            if "msDS-KeyVersionNumber" in res[0]:
+                ctx.key_version_number = int(res[0]["msDS-KeyVersionNumber"][0])
+            else:
+                ctx.key_version_number = None
 
             print("Enabling account")
             m = ldb.Message()