summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xtestprogs/ejs/samba3sam241
1 files changed, 0 insertions, 241 deletions
diff --git a/testprogs/ejs/samba3sam b/testprogs/ejs/samba3sam
deleted file mode 100755
index 5d9fd6f514..0000000000
--- a/testprogs/ejs/samba3sam
+++ /dev/null
@@ -1,241 +0,0 @@
-#!/usr/bin/env smbscript
-/* (C) Jelmer Vernooij <jelmer@samba.org> 2005
- Published under the GNU GPL
- Sponsored by Google Summer of Code
- */
-
-libinclude("base.js");
-var mypath = substr(ARGV[0], 0, -strlen("samba3sam"));
-
-var sys = sys_init();
-var s3url = "tdb://samba3.ldb";
-var s4url = "tdb://samba4.ldb";
-var s3 = ldb_init();
-var s4 = ldb_init();
-var msg;
-var ok;
-
-var local = new Object();
-local.BASEDN = "dc=vernstok,dc=nl";
-var remote = new Object();
-remote.BASEDN = "CN=Samba3Sam," + local.BASEDN;
-
-var prt_ldif = sprintf("dn: @PARTITION
-partition: %s:%s
-partition: %s:%s", remote.BASEDN, s3url, local.BASEDN, s4url);
-
-var map_ldif = sprintf("dn: @MAP=samba3sam
-@FROM: %s
-@TO: %s", local.BASEDN, remote.BASEDN);
-
-var mod_ldif = "dn: @MODULES
-@LIST: rootdse,paged_results,server_sort,extended_dn,asq,samldb,objectclass,password_hash,operational,objectguid,rdn_name,samba3sam,partition";
-
-sys.unlink("samba3.ldb");
-ok = s3.connect(s3url);
-assert(ok);
-
-println("Initial samba3 LDIF...");
-var path = "../../testdata/samba3/samba3.ldif"
-var ldif = sys.file_load(mypath + path);
-ldif = substitute_var(ldif, remote);
-assert(ldif != undefined);
-ok = s3.add(ldif);
-assert(ok);
-
-sys.unlink("samba4.ldb");
-ok = s4.connect("tdb://samba4.ldb");
-assert(ok);
-
-println("Initial samba4 LDIF...");
-var path = "../../testdata/samba3/provision_samba3sam.ldif"
-var ldif = sys.file_load(mypath + path);
-ldif = substitute_var(ldif, local);
-assert(ldif != undefined);
-ok = s4.add(ldif);
-assert(ok);
-
-println("Registering partitions...");
-var ldif = substitute_var(prt_ldif, local);
-assert(ldif != undefined);
-ok = s4.add(ldif);
-assert(ok);
-
-println("Registering mapping...");
-var ldif = substitute_var(map_ldif, local);
-assert(ldif != undefined);
-ok = s4.add(ldif);
-assert(ok);
-
-println("Registering modules...");
-var ldif = substitute_var(mod_ldif, local);
-assert(ldif != undefined);
-ok = s4.add(ldif);
-assert(ok);
-
-println("Reconnecting to LDB database...");
-s4 = ldb_init();
-ok = s4.connect(s4url);
-assert(ok);
-
-println("Looking up by non-mapped attribute");
-msg = s4.search("(cn=Administrator)");
-assert(msg.length == 1);
-assert(msg[0].cn == "Administrator");
-
-println("Looking up by mapped attribute");
-msg = s4.search("(name=Backup Operators)");
-assert(msg.length == 1);
-assert(msg[0].name == "Backup Operators");
-
-println("Looking up by old name of renamed attribute");
-msg = s4.search("(displayName=Backup Operators)");
-assert(msg.length == 0);
-
-println("Looking up mapped entry containing SID");
-msg = s4.search("(cn=Replicator)");
-assert(msg.length == 1);
-assert(msg[0].dn == "cn=Replicator,ou=Groups,sambaDomainName=TESTS,dc=vernstok,dc=nl");
-assert(msg[0].objectSid == "S-1-5-21-4231626423-2410014848-2360679739-552");
-
-println("Checking mapping of objectClass");
-var oc = msg[0].objectClass;
-assert(oc != undefined);
-for (var i in oc) {
- assert(oc[i] == "posixGroup" || oc[i] == "group");
-}
-
-println("Looking up by objectClass");
-msg = s4.search("(|(objectClass=user)(cn=Administrator))");
-assert(msg != undefined);
-assert(msg.length == 2);
-for (var i = 0; i < msg.length; i++) {
- assert((msg[i].dn == "unixName=Administrator,ou=Users,sambaDomainName=TESTS,dc=vernstok,dc=nl") ||
- (msg[i].dn == "unixName=nobody,ou=Users,sambaDomainName=TESTS,dc=vernstok,dc=nl"));
-}
-
-println("Looking up by objectClass");
-msg = s4.search("(|(objectClass=user)(cn=Administrator))");
-assert(msg != undefined);
-assert(msg.length == 2);
-for (var i = 0; i < msg.length; i++) {
- assert((msg[i].dn == "unixName=Administrator,ou=Users,sambaDomainName=TESTS,dc=vernstok,dc=nl") ||
- (msg[i].dn == "unixName=nobody,ou=Users,sambaDomainName=TESTS,dc=vernstok,dc=nl"));
-}
-
-println("Adding a record that will be fallbacked");
-ok = s4.add("
-dn: cn=Foo,dc=idealx,dc=org
-foo: bar
-blah: Blie
-cn: Foo
-showInAdvancedViewOnly: TRUE
-");
-assert(ok);
-
-println("Checking for existence of record (local)");
-/* TODO: This record must be searched in the local database, which is currently only supported for base searches
-msg = s4.search("(cn=Foo)", new Array('foo','blah','cn','showInAdvancedViewOnly'));
-TODO: Actually, this version should work as well but doesn't...
-msg = s4.search("(cn=Foo)", "dc=idealx,dc=org", s4.LDB_SCOPE_SUBTREE new Array('foo','blah','cn','showInAdvancedViewOnly'));
-*/
-msg = s4.search("", "cn=Foo,dc=idealx,dc=org", s4.LDB_SCOPE_BASE new Array('foo','blah','cn','showInAdvancedViewOnly'));
-assert(msg.length == 1);
-assert(msg[0].showInAdvancedViewOnly == "TRUE");
-assert(msg[0].foo == "bar");
-assert(msg[0].blah == "Blie");
-
-println("Adding record that will be mapped");
-ok = s4.add("
-dn: cn=Niemand,sambaDomainName=TESTS,dc=vernstok,dc=nl
-objectClass: user
-unixName: bin
-unicodePwd: geheim
-cn: Niemand
-");
-assert(ok);
-
-println("Checking for existence of record (remote)");
-msg = s4.search("(unixName=bin)", new Array('unixName','cn','dn', 'unicodePwd'));
-assert(msg.length == 1);
-assert(msg[0].cn == "Niemand");
-assert(msg[0].unicodePwd == "geheim");
-
-println("Checking for existence of record (local && remote)");
-msg = s4.search("(&(unixName=bin)(unicodePwd=geheim))", new Array('unixName','cn','dn', 'unicodePwd'));
-assert(msg.length == 1); // TODO: should check with more records
-assert(msg[0].cn == "Niemand");
-assert(msg[0].unixName == "bin");
-assert(msg[0].unicodePwd == "geheim");
-
-println("Checking for existence of record (local || remote)");
-msg = s4.search("(|(unixName=bin)(unicodePwd=geheim))", new Array('unixName','cn','dn', 'unicodePwd'));
-assert(msg.length == 1); // TODO: should check with more records
-assert(msg[0].cn == "Niemand");
-assert(msg[0].unixName == "bin" || msg[0].unicodePwd == "geheim");
-
-println("Checking for data in destination database");
-msg = s3.search("(cn=Niemand)");
-assert(msg.length >= 1);
-assert(msg[0].sambaSID == "S-1-5-21-4231626423-2410014848-2360679739-2001");
-assert(msg[0].displayName == "Niemand");
-
-println("Adding attribute...");
-ok = s4.modify("
-dn: cn=Niemand,sambaDomainName=TESTS,dc=vernstok,dc=nl
-changetype: modify
-add: description
-description: Blah
-");
-assert(ok);
-
-println("Checking whether changes are still there...");
-msg = s4.search("(cn=Niemand)");
-assert(msg.length >= 1);
-assert(msg[0].cn == "Niemand");
-assert(msg[0].description == "Blah");
-
-println("Modifying attribute...");
-ok = s4.modify("
-dn: cn=Niemand,sambaDomainName=TESTS,dc=vernstok,dc=nl
-changetype: modify
-replace: description
-description: Blie
-");
-assert(ok);
-
-println("Checking whether changes are still there...");
-msg = s4.search("(cn=Niemand)");
-assert(msg.length >= 1);
-assert(msg[0].description == "Blie");
-
-println("Deleting attribute...");
-ok = s4.modify("
-dn: cn=Niemand,sambaDomainName=TESTS,dc=vernstok,dc=nl
-changetype: modify
-delete: description
-");
-assert(ok);
-
-println("Checking whether changes are no longer there...");
-msg = s4.search("(cn=Niemand)");
-assert(msg.length >= 1);
-assert(msg[0].description == undefined);
-
-println("Renaming record...");
-ok = s4.rename("cn=Niemand,sambaDomainName=TESTS,dc=vernstok,dc=nl", "cn=Niemand,dc=vernstok,dc=nl");
-
-println("Checking whether DN has changed...");
-msg = s4.search("(cn=Niemand)");
-assert(msg.length == 1);
-assert(msg[0].dn == "cn=Niemand,dc=vernstok,dc=nl");
-
-println("Deleting record...");
-ok = s4.del("cn=Niemand,dc=vernstok,dc=nl");
-assert(ok);
-
-println("Checking whether record is gone...");
-msg = s4.search("(cn=Niemand)");
-assert(msg.length == 0);
-
-return 0;