100) { return "failed"; } if (strlen($password) < 8 or strlen($password) > 1000) { return "failed"; } $ldapserver = "ldap://ldap.hs-augsburg.de"; $ldapusertree = 'ou=People, dc=fh-augsburg, dc=de'; $ldapconn = ldap_connect($ldapserver) or die ("Cannot connect to ldap server ".$ldapserver); ldap_set_option($ldapconn, LDAP_OPT_PROTOCOL_VERSION, 3); ldap_set_option($ldapconn, LDAP_OPT_NETWORK_TIMEOUT, 3); $ldapbind = ldap_bind($ldapconn,"uid=$username, ".$ldapusertree,$password); if ($ldapbind) { // Login was successfull session_regenerate_id(TRUE); $sr=ldap_search($ldapconn,$ldapusertree,"uid=$username",["sn","givenname"]); $info = ldap_get_entries($ldapconn,$sr); ldap_unbind($ldapconn); $vorname = $info[0]["givenname"][0]; $nachname = $info[0]["sn"][0]; $matrikelnummer = db_find_user($vorname,$nachname); if (in_array($username,$admins)) { $_SESSION["login"] = "admin"; return "admin"; } elseif ($matrikelnummer) { $_SESSION["login"] = "user"; $_SESSION["myusername"] = $username; $_SESSION["mymatrikelnummer"] = $matrikelnummer; return "user"; } else { $_SESSION["login"] = "nodb"; return "nodb"; } } else { $_SESSION["login"] = "failed"; return "failed"; } } ?>