ldap_utils.php 901 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. <?php
  2. $ini = parse_ini_file('../includes/config.ini');
  3. function get_ldap_conn() {
  4. try {
  5. global $ini;
  6. $ldapconn = ldap_connect($ini['hostname'], $ini['port']);
  7. ldap_set_option($ldapconn, LDAP_OPT_PROTOCOL_VERSION, 3);
  8. ldap_set_option($ldapconn, LDAP_OPT_REFERRALS, 0);
  9. } catch (Exception $e) {
  10. die ('ERROR: ' . $e->getMessage());
  11. }
  12. return $ldapconn;
  13. }
  14. function bind_as_user($id, $passwd) {
  15. global $ini;
  16. $ldapconn = get_ldap_conn();
  17. if (!$ldapconn) {
  18. return false;
  19. }
  20. $res = @ldap_bind($ldapconn, "uid=" . $id . ',' . $ini["basedn"], $passwd);
  21. return array($res, $ldapconn);
  22. }
  23. function bind_as_operator() {
  24. global $ini;
  25. $ldapconn = get_ldap_conn();
  26. if (!$ldapconn) {
  27. return false;
  28. }
  29. $res = @ldap_bind($ldapconn, $ini["binddn"], $ini["bindpw"]);
  30. return array($res, $ldapconn);
  31. }