r19318: Because we don't test the vampire code in SWAT very regularly, it bit-rotted.
authorAndrew Bartlett <abartlet@samba.org>
Mon, 16 Oct 2006 03:53:12 +0000 (03:53 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 19:21:08 +0000 (14:21 -0500)
Fix up interfaces and interaction between the two..

Andrew Bartlett
(This used to be commit 9b77d285d8cd8999547c0d17e97681d236acbdb0)

source4/scripting/libjs/provision.js
swat/install/vampire.esp

index 2dc6bb522b53b4442eba46b8c23610f0c9ba52d5..05e67262445fbb427a3a68903783ae0e617db0f7 100644 (file)
@@ -368,10 +368,12 @@ function provision_default_paths(subobj)
 /*
   setup reasonable name mappings for sam names to unix names
 */
-function setup_name_mappings(info, subobj, ldb)
+function setup_name_mappings(info, ldb)
 {
        var lp = loadparm_init();
        var attrs = new Array("objectSid");
+       var subobj = info.subobj;
+
        res = ldb.search("objectSid=*", subobj.BASEDN, ldb.SCOPE_BASE, attrs);
        assert(res.length == 1 && res[0].objectSid != undefined);
        var sid = res[0].objectSid;
@@ -525,7 +527,7 @@ function provision(subobj, message, blank, paths, session_info, credentials)
        message("Setting up sam.ldb users and groups\n");
        setup_add_ldif("provision_users.ldif", info, samdb, false);
 
-       if (setup_name_mappings(info, subobj, samdb) == false) {
+       if (setup_name_mappings(info, samdb) == false) {
                return false;
        }
 
index 437cbda32ce2605b01ba8c8c10c07d05d6f442cf..9ce874cd186708cb50670fdb476006309cc09ad3 100644 (file)
@@ -58,18 +58,22 @@ if (form['submit'] == "Migrate") {
                writefln("You need to set 'server role' to 'member server' before starting the migration process");
        } else {
                var creds = credentials_init();
+               var samdb;
                creds.set_username(form.ADMIN);
                creds.set_password(form.ADMINPASS);
                creds.set_domain(form.DOMAIN);
                creds.set_realm(form.REALM);
 
                var info = new Object();
-               info.message = writefln;
-
                var paths = provision_default_paths(subobj);
                var session_info = session.authinfo.session_info;
                var credentials = session.authinfo.credentials;
 
+               info.credentials = credentials;
+               info.session_info = session_info;
+               info.message = writefln;
+               info.subobj = subobj;
+
                /* Setup a basic database structure, but don't setup any users */
                if (!provision(subobj, writefln, true, paths,
                               session_info, credentials)) {
@@ -86,7 +90,10 @@ if (form['submit'] == "Migrate") {
                } else if (!provision_dns(subobj, writefln, paths,
                                          session.authinfo.session_info, session.authinfo.credentials)) {
                        writefln("DNS Provision failed!");
-               } else if (!setup_name_mappings(info, subobj, session_info, credentials)) {
+               } else if (!(samdb = open_ldb(info, paths.samdb, false))) {
+                       writefln("Opening " + paths.samdb + " failed!");
+                       info.samdb = samdb;
+               } else if (!setup_name_mappings(info, samdb)) {
                        writefln("Setup of name mappings failed!");                     
                } else {
                        var zonepath = paths.dns;