From 46c76bccc4e4003a2ccf740c5704175b27d078a2 Mon Sep 17 00:00:00 2001 From: tokul Date: Fri, 7 Apr 2006 21:16:59 +0000 Subject: [PATCH] ldap connection test script. don't want to recreate same script one more time just in order to add some option. git-svn-id: https://svn.code.sf.net/p/squirrelmail/code/trunk/squirrelmail@11044 7612ce4b-ef26-0410-bec9-ea0150e637f0 --- contrib/test_ldap.phps | 192 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 192 insertions(+) create mode 100644 contrib/test_ldap.phps diff --git a/contrib/test_ldap.phps b/contrib/test_ldap.phps new file mode 100644 index 00000000..cfcac959 --- /dev/null +++ b/contrib/test_ldap.phps @@ -0,0 +1,192 @@ + "1.2.840.113556.1.4.1339", "iscritical" => TRUE ); + if (ldap_set_option($ds, LDAP_OPT_SERVER_CONTROLS, array($ctrl))) { + echo " Turned on limit_scope\n"; + } else { + echo " Unable to turn on limit_scope\n"; + } + } else { + echo " You must use LDAPv3 protocol with limit_scope option.\n"; + } + } else { + echo " Not using limit_scope option.\n"; + } + + echo "\nReading LDAP base:\n"; + if ($sr = ldap_read($ds,'',"(objectclass=*)")) { + $info = ldap_get_entries($ds, $sr); + echo " namingContexts:\n"; + if (isset($info[0]['namingcontexts'])) { + for ($i=0; $i<$info[0]['namingcontexts']['count']; $i++) { + echo ' ' . $i .': ' . $info[0]['namingcontexts'][$i] . "\n"; + } + } else { + echo " unavailable\n"; + } + } else { + echo " Unable to read LDAP base.\n"; + } + echo "\n"; + + echo "Authentication:\n"; + echo " Binding"; + if ($ldap_binddn!='') { + echo " with authenticated bind ...\n"; + $r = ldap_bind($ds,$ldap_binddn,$ldap_bindpw); + } else { + echo " with anonymous bind ...\n"; + $r=ldap_bind($ds); + } + echo " Bind result - "; + var_dump($r); + echo "\n"; + + echo "\n"; + echo "Search:\n"; + echo " Searching for (mail=*) ...\n"; + // Search for mail entries + if ($sr=ldap_search($ds, $ldap_basedn, "(mail=*)")) { + + echo " Search result - "; + var_dump($sr); + echo "\n"; + + echo " Number of entries: " . ldap_count_entries($ds, $sr) . "\n"; + + echo " Getting entries ...\n"; + $info = ldap_get_entries($ds, $sr); + + echo " Data for " . $info["count"] . " items returned:\n"; + + for ($i=0; $i<$info["count"]; $i++) { + echo " dn is: " . $info[$i]["dn"] . "\n"; + if (isset($info[$i]["cn"][0])) { + echo " first cn entry is: " . $info[$i]["cn"][0] . "\n"; + } else { + echo " cn attribute is not available."; + } + echo " first email entry is: " . $info[$i]["mail"][0] . "\n------\n"; + } + } else { + echo " LDAP search failed.\n"; + } + echo "\n"; + echo "Closing connection\n"; + ldap_close($ds); + +} else { + echo "Unable to connect to LDAP server\n"; +} +?> \ No newline at end of file -- 2.25.1