r20689: "pdc" and "bdc" have been replaced by "domain controller"
[ira/wip.git] / source / scripting / libjs / upgrade.js
index 51818487eb6b93767c52a2d0112df95da13fab89..adb958a236d8be121c78edd297e41c6eadd8e810 100644 (file)
@@ -128,7 +128,6 @@ objectClass: user
 lastLogon: %d
 lastLogoff: %d
 unixName: %s
-name: %s
 sAMAccountName: %s
 cn: %s
 description: %s
@@ -153,7 +152,7 @@ ntPwdHash:: %s
 
 ", ldb.dn_escape(acc.fullname), domaindn, acc.logon_time, acc.logoff_time, acc.username, acc.nt_username, acc.nt_username, 
 
-acc.fullname, acc.acct_desc, acc.group_rid, acc.bad_password_count, acc.logon_count,
+acc.acct_desc, acc.group_rid, acc.bad_password_count, acc.logon_count,
 acc.domain, acc.dir_drive, acc.munged_dial, acc.homedir, acc.logon_script, 
 acc.profile_path, acc.workstations, acc.kickoff_time, acc.bad_password_time, 
 acc.pass_last_set_time, acc.pass_can_change_time, acc.pass_must_change_time, domainsid, acc.user_rid,
@@ -274,7 +273,7 @@ function upgrade_wins(samba3)
                nType = (sys.bitAND(e.nb_flags,0x60)>>5);
 
                ldif = ldif + sprintf("
-dn: name:%s,type=0x%02X
+dn: name=%s,type=0x%02X
 type: 0x%02X
 name: %s
 objectClass: winsRecord
@@ -498,29 +497,30 @@ function upgrade_smbconf(oldconf,mark)
        }
 
        if (oldconf.get("domain logons") == "True") {
-               if (oldconf.get("domain master") == "True") {
-                       newconf.set("role", "pdc");
-               } else {
-                       newconf.set("role", "bdc");
-               }
+               newconf.set("server role", "domain controller");
        } else {
-               if (oldconf.get("domain master") == "True") {
-                       newconf.set("role", "standalone");
+               if (oldconf.get("security") == "user") {
+                       newconf.set("server role", "standalone");
                } else {
-                       newconf.set("role", "member server");
+                       newconf.set("server role", "member server");
                }
        }
 
        return newconf;
 }
 
-function upgrade(subobj, samba3, message, paths)
+function upgrade(subobj, samba3, message, paths, session_info, credentials)
 {
        var ret = 0;
        var lp = loadparm_init();
        var samdb = ldb_init();
+       samdb.session_info = session_info;
+       samdb.credentials = credentials;
        var ok = samdb.connect(paths.samdb);
-       assert(ok);
+       if (!ok) {
+               info.message("samdb connect failed: " + samdb.errstring() + "\n");
+               assert(ok);
+       }
 
        message("Writing configuration\n");
        var newconf = upgrade_smbconf(samba3.configuration,true);
@@ -529,11 +529,17 @@ function upgrade(subobj, samba3, message, paths)
        message("Importing account policies\n");
        var ldif = upgrade_sam_policy(samba3,subobj.BASEDN);
        ok = samdb.modify(ldif);
-       assert(ok);
-
+       if (!ok) {
+               message("samdb load failed: " + samdb.errstring() + "\n");
+               assert(ok);
+       }
        var regdb = ldb_init();
        ok = regdb.connect(paths.hklm);
-       assert(ok);
+       if (!ok) {
+               message("registry connect: " + regdb.errstring() + "\n");
+               assert(ok);
+       }
+
        ok = regdb.modify(sprintf("
 dn: value=RefusePasswordChange,key=Parameters,key=Netlogon,key=Services,key=CurrentControlSet,key=System,HIVE=NONE
 replace: type
@@ -541,7 +547,10 @@ type: 4
 replace: data
 data: %d
 ", samba3.policy.refuse_machine_password_change));
-       assert(ok);
+       if (!ok) {
+               message("registry load failed: " + regdb.errstring() + "\n");
+               assert(ok);
+       }
 
        message("Importing users\n");
        for (var i in samba3.samaccounts) {