LDAP: cheaper userExists() implementation

remotes/origin/stable4
Arthur Schiwon 13 years ago
parent 65c14e21ce
commit 0d9534eb4b
  1. 14
      apps/user_ldap/user_ldap.php

@ -124,7 +124,19 @@ class OC_USER_LDAP extends OC_User_Backend {
* @return boolean * @return boolean
*/ */
public function userExists($uid){ public function userExists($uid){
return in_array($uid, $this->getUsers()); //getting dn, if false the user does not exist. If dn, he may be mapped only, requires more checking.
$dn = OC_LDAP::username2dn($uid);
if(!$dn) {
return false;
}
//if user really still exists, we will be able to read his cn
$cn = OC_LDAP::readAttribute($dn, 'cn');
if(!$cn || empty($cn)) {
return false;
}
return true;
} }
} }

Loading…
Cancel
Save