LDAP: decent behaviour and log message when there is no connection to the LDAP server

This commit is contained in:
Arthur Schiwon 2012-05-01 12:17:33 +02:00
parent 11314c81d9
commit 54854b2e3d
1 changed files with 11 additions and 2 deletions

View File

@ -437,8 +437,14 @@ class OC_LDAP {
if(!is_null($attr) && !is_array($attr)) {
$attr = array(strtolower($attr));
}
$sr = ldap_search(self::getConnectionResource(), $base, $filter, $attr);
$findings = ldap_get_entries(self::getConnectionResource(), $sr );
$sr = @ldap_search(self::getConnectionResource(), $base, $filter, $attr);
$findings = @ldap_get_entries(self::getConnectionResource(), $sr );
// if we're here, probably no connection ressource is returned.
// to make ownCloud behave nicely, we simply give back an empty array.
if(is_null($findings)) {
return array();
}
if(!is_null($attr)) {
$selection = array();
@ -522,6 +528,9 @@ class OC_LDAP {
if(!self::$ldapConnectionRes) {
self::init();
}
if(is_null(self::$ldapConnectionRes)) {
OCP\Util::writeLog('ldap', 'Connection could not be established', OC_Log::INFO);
}
return self::$ldapConnectionRes;
}