Author: abartlet
Date: 2006-01-15 09:03:28 +0000 (Sun, 15 Jan 2006)
New Revision: 12945

WebSVN: 
http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=12945

Log:
Try to move closer to getting Samba3 import working again.

There still a few things to work out

Andrew Bartlett

Modified:
   branches/SAMBA_4_0/source/scripting/libjs/upgrade.js
   branches/SAMBA_4_0/source/setup/upgrade
   branches/SAMBA_4_0/swat/install/samba3.esp


Changeset:
Modified: branches/SAMBA_4_0/source/scripting/libjs/upgrade.js
===================================================================
--- branches/SAMBA_4_0/source/scripting/libjs/upgrade.js        2006-01-15 
07:02:34 UTC (rev 12944)
+++ branches/SAMBA_4_0/source/scripting/libjs/upgrade.js        2006-01-15 
09:03:28 UTC (rev 12945)
@@ -513,13 +513,18 @@
        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);
@@ -528,11 +533,17 @@
        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
@@ -540,7 +551,10 @@
 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) {

Modified: branches/SAMBA_4_0/source/setup/upgrade
===================================================================
--- branches/SAMBA_4_0/source/setup/upgrade     2006-01-15 07:02:34 UTC (rev 
12944)
+++ branches/SAMBA_4_0/source/setup/upgrade     2006-01-15 09:03:28 UTC (rev 
12945)
@@ -90,12 +90,13 @@
 var system_session = system_session();
 var paths = provision_default_paths(subobj);
 provision(subobj, message, options.blank, paths, system_session, creds);
-provision_dns(subobj, message, paths, system_session, creds);
 
-var ret = upgrade(subobj,samba3,message,paths);
+var ret = upgrade(subobj,samba3,message,paths, system_session, creds);
 if (ret > 0) {
        message("Failed to import %d entries\n", ret);
 } else {
+       provision_dns(subobj, message, paths, system_session, creds);
+
        message("All OK\n");
 }
 

Modified: branches/SAMBA_4_0/swat/install/samba3.esp
===================================================================
--- branches/SAMBA_4_0/swat/install/samba3.esp  2006-01-15 07:02:34 UTC (rev 
12944)
+++ branches/SAMBA_4_0/swat/install/samba3.esp  2006-01-15 09:03:28 UTC (rev 
12945)
@@ -69,13 +69,26 @@
                confirm_form();
        } else {
                var paths = provision_default_paths(subobj);
-
-               provision(subobj, writefln, true, paths);
-               upgrade(subobj, samba3, writefln, paths);
-
-               writefln("Reloading smb.conf\n");
-               var lp = loadparm_init();
-               lp.reload();
+               if (!provision(subobj, writefln, true, paths, 
+                              session.authinfo.session_info, 
session.authinfo.credentials)) {
+                       writefln("Provision failed!");
+               } else { 
+                       var ret = upgrade(subobj,samba3,message,paths,
+                                         session.authinfo.session_info, 
session.authinfo.credentials);
+                       if (ret > 0) {
+                               writefln("Failed to import %d entries\n", ret);
+                       } else {
+                               if (!provision_dns(subobj, writefln, paths,
+                                                  
session.authinfo.session_info, session.authinfo.credentials)) {
+                                       writefln("DNS Provision failed!");
+                               } else {
+                                       writefln("Reloading smb.conf\n");
+                                       var lp = loadparm_init();
+                                       lp.reload();
+                                       writefln("Upgrade Complete!");
+                               }
+                       }
+               }
        }
 } else {
        var f = FormObj("Import from Samba3", 0, 2);

Reply via email to