r9718: Work a bit on the SWAT interface
authorJelmer Vernooij <jelmer@samba.org>
Sun, 28 Aug 2005 22:17:07 +0000 (22:17 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 18:34:53 +0000 (13:34 -0500)
source/lib/ldb/ldb_map/ldb_map.c
source/lib/ldb/tests/samba3.ldif
source/lib/samba3/PLAN
source/lib/samba3/README
source/scripting/libjs/samba3.js [new file with mode: 0644]
swat/install/samba3.esp [new file with mode: 0644]
swat/menu.js

index 5ae4a435d86a29f4b6dcf7590d2e6a3941471ba9..1a8ea2afc4071f733b8f539688098efc77bcccf9 100644 (file)
@@ -136,8 +136,10 @@ static struct ldb_parse_tree *ldb_map_parse_tree(struct ldb_module *module, TALL
                return attr->convert_operator(privdat, module, tree);
        }
 
-       if (map_type == MAP_IGNORE)
+       if (map_type == MAP_IGNORE) {
+               DEBUG(0, ("Search on ignored attribute '%s'!\n", tree->u.equality.attr));
                return NULL;
+       }
 
        if (map_type == MAP_GENERATE) {
                DEBUG(0, ("Can't do conversion for MAP_GENERATE in map_parse_tree without convert_operator for '%s'\n", tree->u.equality.attr));
index fb0a1386d492ac089ec37bb101a7d77b03a88ccd..02103b65b62f90841329e1ff6ce716c1655b91b3 100644 (file)
@@ -1,49 +1,4 @@
-dn: dc=idealx,dc=org
-objectClass: dcObject
-objectclass: organization
-o: idealx
-dc: idealx
-
-dn: ou=Users,dc=idealx,dc=org
-objectClass: organizationalUnit
-ou: Users
-
-dn: ou=Groups,dc=idealx,dc=org
-objectClass: organizationalUnit
-ou: Groups
-
-dn: ou=Computers,dc=idealx,dc=org
-objectClass: organizationalUnit
-ou: Computers
-dn: uid=Administrator,ou=Users,dc=idealx,dc=org
-cn: Administrator
-sn: Administrator
-objectClass: inetOrgPerson
-objectClass: sambaSAMAccount
-objectClass: posixAccount
-objectClass: shadowAccount
-gidNumber: 512
-uid: Administrator
-uidNumber: 0
-homeDirectory: /home/%U
-sambaPwdLastSet: 0
-sambaLogonTime: 0
-sambaLogoffTime: 2147483647
-sambaKickoffTime: 2147483647
-sambaPwdCanChange: 0
-sambaPwdMustChange: 2147483647
-sambaHomePath: \\PDC-SMB3\home\%U
-sambaHomeDrive: H:
-sambaProfilePath: \\PDC-SMB3\profiles\%U\Administrator
-sambaPrimaryGroupSID: S-1-5-21-4231626423-2410014848-2360679739-512
-sambaLMPassword: XXX
-sambaNTPassword: XXX
-sambaAcctFlags: [U          ]
-sambaSID: S-1-5-21-4231626423-2410014848-2360679739-2996
-loginShell: /bin/false
-gecos: Netbios Domain Administrator
-
-dn: uid=nobody,ou=Users,dc=idealx,dc=org
+dn: uid=nobody,ou=Users,dc=test,dc=vernstok,dc=nl
 cn: nobody
 sn: nobody
 objectClass: inetOrgPerson
@@ -70,7 +25,7 @@ sambaAcctFlags: [NU         ]
 sambaSID: S-1-5-21-4231626423-2410014848-2360679739-2998
 loginShell: /bin/false
 
-dn: cn=Domain Admins,ou=Groups,dc=idealx,dc=org
+dn: cn=Domain Admins,ou=Groups,dc=test,dc=vernstok,dc=nl
 objectClass: posixGroup
 objectClass: sambaGroupMapping
 gidNumber: 512
@@ -81,7 +36,7 @@ sambaSID: S-1-5-21-4231626423-2410014848-2360679739-512
 sambaGroupType: 2
 displayName: Domain Admins
 
-dn: cn=Domain Users,ou=Groups,dc=idealx,dc=org
+dn: cn=Domain Users,ou=Groups,dc=test,dc=vernstok,dc=nl
 objectClass: posixGroup
 objectClass: sambaGroupMapping
 gidNumber: 513
@@ -91,7 +46,7 @@ sambaSID: S-1-5-21-4231626423-2410014848-2360679739-513
 sambaGroupType: 2
 displayName: Domain Users
 
-dn: cn=Domain Guests,ou=Groups,dc=idealx,dc=org
+dn: cn=Domain Guests,ou=Groups,dc=test,dc=vernstok,dc=nl
 objectClass: posixGroup
 objectClass: sambaGroupMapping
 gidNumber: 514
@@ -101,7 +56,7 @@ sambaSID: S-1-5-21-4231626423-2410014848-2360679739-514
 sambaGroupType: 2
 displayName: Domain Guests
 
-dn: cn=Print Operators,ou=Groups,dc=idealx,dc=org
+dn: cn=Print Operators,ou=Groups,dc=test,dc=vernstok,dc=nl
 objectClass: posixGroup
 objectClass: sambaGroupMapping
 gidNumber: 550
@@ -111,7 +66,7 @@ sambaSID: S-1-5-21-4231626423-2410014848-2360679739-550
 sambaGroupType: 2
 displayName: Print Operators
 
-dn: cn=Backup Operators,ou=Groups,dc=idealx,dc=org
+dn: cn=Backup Operators,ou=Groups,dc=test,dc=vernstok,dc=nl
 objectClass: posixGroup
 objectClass: sambaGroupMapping
 gidNumber: 551
@@ -121,7 +76,7 @@ sambaSID: S-1-5-21-4231626423-2410014848-2360679739-551
 sambaGroupType: 2
 displayName: Backup Operators
 
-dn: cn=Replicator,ou=Groups,dc=idealx,dc=org
+dn: cn=Replicator,ou=Groups,dc=test,dc=vernstok,dc=nl
 objectClass: posixGroup
 objectClass: sambaGroupMapping
 gidNumber: 552
@@ -131,7 +86,7 @@ sambaSID: S-1-5-21-4231626423-2410014848-2360679739-552
 sambaGroupType: 2
 displayName: Replicator
 
-dn: cn=Domain Computers,ou=Groups,dc=idealx,dc=org
+dn: cn=Domain Computers,ou=Groups,dc=test,dc=vernstok,dc=nl
 objectClass: posixGroup
 objectClass: sambaGroupMapping
 gidNumber: 553
@@ -141,7 +96,7 @@ sambaSID: S-1-5-21-4231626423-2410014848-2360679739-553
 sambaGroupType: 2
 displayName: Domain Computers
 
-dn: cn=Administrators,ou=Groups,dc=idealx,dc=org
+dn: cn=Administrators,ou=Groups,dc=test,dc=vernstok,dc=nl
 objectClass: posixGroup
 objectClass: sambaGroupMapping
 gidNumber: 544
@@ -151,7 +106,7 @@ sambaSID: S-1-5-21-4231626423-2410014848-2360679739-544
 sambaGroupType: 2
 displayName: Administrators
 
-dn: cn=Users,ou=Groups,dc=idealx,dc=org
+dn: cn=Users,ou=Groups,dc=test,dc=vernstok,dc=nl
 objectClass: posixGroup
 objectClass: sambaGroupMapping
 gidNumber: 545
@@ -161,7 +116,7 @@ sambaSID: S-1-5-21-4231626423-2410014848-2360679739-545
 sambaGroupType: 2
 displayName: users
 
-dn: cn=Guests,ou=Groups,dc=idealx,dc=org
+dn: cn=Guests,ou=Groups,dc=test,dc=vernstok,dc=nl
 objectClass: posixGroup
 objectClass: sambaGroupMapping
 gidNumber: 546
@@ -172,7 +127,7 @@ sambaSID: S-1-5-21-4231626423-2410014848-2360679739-546
 sambaGroupType: 2
 displayName: Guests
 
-dn: cn=Power Users,ou=Groups,dc=idealx,dc=org
+dn: cn=Power Users,ou=Groups,dc=test,dc=vernstok,dc=nl
 objectClass: posixGroup
 objectClass: sambaGroupMapping
 gidNumber: 547
@@ -182,7 +137,7 @@ sambaSID: S-1-5-21-4231626423-2410014848-2360679739-547
 sambaGroupType: 2
 displayName: Power Users
 
-dn: cn=Account Operators,ou=Groups,dc=idealx,dc=org
+dn: cn=Account Operators,ou=Groups,dc=test,dc=vernstok,dc=nl
 objectClass: posixGroup
 objectClass: sambaGroupMapping
 gidNumber: 548
@@ -192,7 +147,7 @@ sambaSID: S-1-5-21-4231626423-2410014848-2360679739-548
 sambaGroupType: 2
 displayName: Account Operators
 
-dn: cn=Server Operators,ou=Groups,dc=idealx,dc=org
+dn: cn=Server Operators,ou=Groups,dc=test,dc=vernstok,dc=nl
 objectClass: posixGroup
 objectClass: sambaGroupMapping
 gidNumber: 549
@@ -201,3 +156,36 @@ description: Netbios Domain Server Operators
 sambaSID: S-1-5-21-4231626423-2410014848-2360679739-549
 sambaGroupType: 2
 displayName: Server Operators
+
+dn: ou=Computers,dc=test,dc=vernstok,dc=nl
+objectClass: organizationalUnit
+ou: Computers
+dn: uid=Administrator,ou=Users,dc=test,dc=vernstok,dc=nl
+cn: Administrator
+sn: Administrator
+objectClass: inetOrgPerson
+objectClass: sambaSAMAccount
+objectClass: posixAccount
+objectClass: shadowAccount
+gidNumber: 512
+uid: Administrator
+uidNumber: 0
+homeDirectory: /home/%U
+sambaPwdLastSet: 0
+sambaLogonTime: 0
+sambaLogoffTime: 2147483647
+sambaKickoffTime: 2147483647
+sambaPwdCanChange: 0
+sambaPwdMustChange: 2147483647
+sambaHomePath: \\PDC-SMB3\home\%U
+sambaHomeDrive: H:
+sambaProfilePath: \\PDC-SMB3\profiles\%U\Administrator
+sambaPrimaryGroupSID: S-1-5-21-4231626423-2410014848-2360679739-512
+sambaLMPassword: XXX
+sambaNTPassword: XXX
+sambaAcctFlags: [U          ]
+sambaSID: S-1-5-21-4231626423-2410014848-2360679739-2996
+loginShell: /bin/false
+gecos: Netbios Domain Administrator
+
+
index 26bf54634cadbb67df2dac9bab9e3888c42376d5..8bc90da427f866740168c3b1b293b4a918e23257 100644 (file)
@@ -1,6 +1,6 @@
 Three possible viable approaches:
  1) TDB conversion approach. Read in TDB dump out LDIF (one-way)
-  - samr.ldb: from tdbsam/smbpasswd, account_policy.tdb, secrets.tdb, group_mapping.tdb, privilege.tdb
+  - samr.ldb: from tdbsam/smbpasswd, account_policy.tdb, secrets.tdb, group_mapping.tdb
   - registry.ldb: from registry.tdb
   - wins.ldif: from wins.tdb/wins.dat
   - smb.conf/ea's: generated from the old smb.conf + share_info.tdb
@@ -29,3 +29,13 @@ Three possible viable approaches:
   - convert smb.conf (using Jerry's registry hack)
 
 (going with a combination of 1 and 2)
+
+ldb mapping backend:
+ - do search in new and old (mapped) backend and merge results?
+
+Upgrade process:
+ - take libdir & smb.conf
+ - read various tdb files / old smb.conf 
+ - write new smb.conf (ejs?)
+  - list of parameters to keep.. generate some of the others
+ - add generated LDIF (ejs?)
index 3f6553f7e8a4e671bd84a762ad03df3bd2c4b6a9..83520f673d2000333cb89ada040da9301ebd8224 100644 (file)
@@ -3,3 +3,6 @@ Samba3 import, migration and compatibility.
 
 For example, the first file in this directory (smbpasswd.c) handles
 portions of the smbpasswd file format.
+
+The other files in this directory support reading the various 
+TDB databases from Samba3.
diff --git a/source/scripting/libjs/samba3.js b/source/scripting/libjs/samba3.js
new file mode 100644 (file)
index 0000000..7f50c8c
--- /dev/null
@@ -0,0 +1,8 @@
+/*
+       backend code for upgrading from Samba3
+       Copyright Jelmer Vernooij 2005
+       Released under the GNU GPL v2 or later
+*/
+
+
+return 0;
diff --git a/swat/install/samba3.esp b/swat/install/samba3.esp
new file mode 100644 (file)
index 0000000..ead694a
--- /dev/null
@@ -0,0 +1,40 @@
+<% page_header("columns", "Upgrade", "install"); 
+
+  include("/scripting/forms.js");
+  libinclude("base.js");
+  libinclude("provision.js");
+  libinclude("samba3.js");
+%>
+
+<h1>Import from Samba3</h1>
+
+<%
+var f = FormObj("Import from Samba3", 0, 2);
+var i;
+
+f.add("SMBCONF", "smb.conf file");
+f.add("LIBDIR", "Lib directory");
+f.submit[0] = "Import";
+f.submit[1] = "Cancel";
+
+if (form['submit'] == "Cancel") {
+       redirect("/");
+}
+
+if (form['submit'] == "Import") {
+       for (r in form) {
+               subobj[r] = form[r];
+       }
+}
+
+f.element[0].value = "/etc/samba/smb.conf";
+f.element[1].value = "/var/lib/samba";
+
+if (form['submit'] == "import") {
+       //              provision(subobj, writefln, false);
+} else {
+       f.display();
+}
+%>
+
+<% page_footer(); %>
index 83529825f12dc5644ccadd21d4b5a59ca30cf6f2..e28160e16f8aa21c8079e3f6e3d7845a2d0a8c5e 100644 (file)
@@ -39,7 +39,8 @@ swat_menus.esptest = simple_menu(
 swat_menus.install = simple_menu(
        "Installation",
        "Provisioning",       session_uri("/install/provision.esp"),
-       "New User",           session_uri("/install/newuser.esp"));
+       "New User",           session_uri("/install/newuser.esp"),
+       "Import from Samba3", session_uri("/install/samba3.esp"));
 
 
 swat_menus.nbt_server = simple_menu(