r9831: Check whether the two admin passwords entered were equal.
authorJelmer Vernooij <jelmer@samba.org>
Wed, 31 Aug 2005 15:47:10 +0000 (15:47 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 18:36:16 +0000 (13:36 -0500)
(This used to be commit d02834f88d6a26f77549ec9db8f2492eacc9b043)

swat/install/samba3.esp

index 5228ca6f863a0263c7208394d5334e70c6dd27a1..32ee25fc417d8c758c25a7b1391525dc6b5bcd1b 100644 (file)
@@ -19,11 +19,13 @@ if (form['submit'] == "Cancel") {
        redirect("/");
 }
 
-if (form['submit'] == "Import") {
+function confirm_form()
+{
        var samba3 = samba3_read(form['LIBDIR'], form['SMBCONF']);
 
        var subobj = upgrade_provision(samba3);
        var f = FormObj("Import from Samba3", 0, 2);
+       subobj.ADMINPASS = "";
 
        f.add("REALM", "Realm");
        f.add("DOMAIN", "Domain Name");
@@ -46,6 +48,10 @@ if (form['submit'] == "Import") {
        f.submit[0] = "Continue";
        f.submit[1] = "Cancel";
        f.display();    
+}
+
+if (form['submit'] == "Import") {
+       confirm_form();
 } else if (form['submit'] == "Continue") {
        var samba3 = samba3_read(form['LIBDIR'], form['SMBCONF']);
        assert(samba3 != undefined);
@@ -53,14 +59,25 @@ if (form['submit'] == "Import") {
        for (r in form) {
                subobj[r] = form[r];
        }
-       var paths = provision_default_paths(subobj);
 
-       provision(subobj, writefln, true, paths);
-       upgrade(subobj, samba3, writefln, paths);
+       var goodpass = (subobj.CONFIRM == subobj.ADMINPASS);
 
-       writefln("Reloading smb.conf\n");
-       var lp = loadparm_init();
-       lp.reload();
+       if (!goodpass) {
+               write("<h3>Passwords don't match.  Please try again.</h3>");
+               confirm_form();
+       } else if (subobj.ADMINPASS == "") {
+               write("<h3>You must choose an administrator password.  Please try again.</h3>");
+               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();
+       }
 } else {
        var f = FormObj("Import from Samba3", 0, 2);