r8743: automatically find the basedn in ldap.js
authorAndrew Tridgell <tridge@samba.org>
Mon, 25 Jul 2005 02:23:27 +0000 (02:23 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 18:30:01 +0000 (13:30 -0500)
(This used to be commit bdca9537a260369a53cbb286642db86bc3ea0828)

testprogs/ejs/ldap.js

index bba81f3971a7d014376ec65c2cc633a746e2c005..bf9b4ac1054186e9ef811ac641a5e56fb3745f2a 100755 (executable)
@@ -17,13 +17,12 @@ if (ok == false) {
    return -1;
 }
 
-if (options.ARGV.length != 2) {
-   println("Usage: ldap.js <BASEDN> <HOST>");
+if (options.ARGV.length != 1) {
+   println("Usage: ldap.js <HOST>");
    return -1;
 }
 
-var base_dn = options.ARGV[0];
-var host = options.ARGV[1];
+var host = options.ARGV[0];
 
 function basic_tests(ldb, base_dn)
 {
@@ -50,7 +49,17 @@ cn: LDAPtestUSER
 
 }
 
+function find_basedn(ldb)
+{
+    var attrs = new Array("defaultNamingContext");
+    var res = ldb.search("", "", ldb.SCOPE_BASE, attrs);
+    assert(res.length == 1);
+    return res[0].defaultNamingContext;
+}
+
 var ok = ldb.connect("ldap://" + host);
+var base_dn = find_basedn(ldb);
+
 basic_tests(ldb, base_dn)
 
 return 0;