[SCM] Samba Shared Repository - branch master updated

Andrew Bartlett abartlet at samba.org
Thu Dec 9 05:33:02 MST 2010


The branch, master has been updated
       via  377b399 wintest Remove the password expiry as the first step
      from  57f2f1d waf: remove the restriction that private libraries must not have a vnum

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 377b3995b168779d994138848f0ebc6059bba31c
Author: Andrew Bartlett <abartlet at samba.org>
Date:   Thu Dec 9 22:05:14 2010 +1100

    wintest Remove the password expiry as the first step
    
    This is particularly important before dcpromo, as the password will
    otherwise be expired in the new domain.
    
    Andrew Bartlett
    
    Autobuild-User: Andrew Bartlett <abartlet at samba.org>
    Autobuild-Date: Thu Dec  9 13:33:00 CET 2010 on sn-devel-104

-----------------------------------------------------------------------

Summary of changes:
 wintest/test-s4-howto.py |    6 +++---
 wintest/wintest.py       |   11 ++++++++++-
 2 files changed, 13 insertions(+), 4 deletions(-)


Changeset truncated at 500 lines:

diff --git a/wintest/test-s4-howto.py b/wintest/test-s4-howto.py
index 2dbb208..e97963f 100755
--- a/wintest/test-s4-howto.py
+++ b/wintest/test-s4-howto.py
@@ -299,7 +299,7 @@ def run_winjoin(t, vm):
     t.info("Joining a windows box to the domain")
     t.vm_poweroff("${WIN_VM}", checkfail=False)
     t.vm_restore("${WIN_VM}", "${WIN_SNAPSHOT}")
-    child = t.open_telnet("${WIN_HOSTNAME}", "${WIN_USER}", "${WIN_PASS}", set_time=True, set_ip=True)
+    child = t.open_telnet("${WIN_HOSTNAME}", "${WIN_USER}", "${WIN_PASS}", set_time=True, set_ip=True, set_noexpire=True)
     child.sendline("netdom join ${WIN_HOSTNAME} /Domain:${LCREALM} /PasswordD:${PASSWORD1} /UserD:administrator")
     child.expect("The command completed successfully")
     child.expect("C:")
@@ -332,7 +332,7 @@ def run_dcpromo(t, vm):
     t.info("Joining a windows VM ${WIN_VM} to the domain as a DC using dcpromo")
     t.vm_poweroff("${WIN_VM}", checkfail=False)
     t.vm_restore("${WIN_VM}", "${WIN_SNAPSHOT}")
-    child = t.open_telnet("${WIN_HOSTNAME}", "administrator", "${WIN_PASS}", set_ip=True)
+    child = t.open_telnet("${WIN_HOSTNAME}", "administrator", "${WIN_PASS}", set_ip=True, set_noexpire=True)
     child.sendline("copy /Y con answers.txt")
     child.sendline('''
 [DCINSTALL]
@@ -736,7 +736,7 @@ def run_dcpromo_as_first_dc(t, vm, func_level=None):
     else:
         t.setvar("FUNCTION_LEVEL_INT", str(0))
 
-    child = t.open_telnet("${WIN_HOSTNAME}", "administrator", "${WIN_PASS}", set_ip=True)
+    child = t.open_telnet("${WIN_HOSTNAME}", "administrator", "${WIN_PASS}", set_ip=True, set_noexpire=True)
 
     """This server must therefore not yet be a directory server, so we must promote it"""
     child.sendline("copy /Y con answers.txt")
diff --git a/wintest/wintest.py b/wintest/wintest.py
index ec2624b..0d65116 100644
--- a/wintest/wintest.py
+++ b/wintest/wintest.py
@@ -371,6 +371,12 @@ class wintest():
         if hostname.upper() == self.getvar("WIN_HOSTNAME").upper():
             return True
 
+    def set_noexpire(self, child, username):
+        '''Ensure this user's password does not expire'''
+        child.sendline('wmic useraccount where name="%s" set PasswordExpires=FALSE' % username)
+        child.expect("update successful")
+        child.expect("C:")
+
     def run_tlntadmn(self, child):
         '''remove the annoying telnet restrictions'''
         child.sendline('tlntadmn config maxconn=1024')
@@ -438,7 +444,7 @@ class wintest():
 
 
     def open_telnet(self, hostname, username, password, retries=60, delay=5, set_time=False, set_ip=False,
-                    disable_firewall=True, run_tlntadmn=True):
+                    disable_firewall=True, run_tlntadmn=True, set_noexpire=False):
         '''open a telnet connection to a windows server, return the pexpect child'''
         set_route = False
         set_dns = False
@@ -491,6 +497,9 @@ class wintest():
             if run_tlntadmn:
                 self.run_tlntadmn(child)
                 run_tlntadmn = False
+            if set_noexpire:
+                self.set_noexpire(child, username)
+                set_noexpire = False
             if disable_firewall:
                 self.disable_firewall(child)
                 disable_firewall = False


-- 
Samba Shared Repository


More information about the samba-cvs mailing list