From df7678f01ee82cd5fd0d0e985ace5b6dca0d046f Mon Sep 17 00:00:00 2001 From: Arthur Schiwon Date: Thu, 12 Jun 2014 13:32:21 +0200 Subject: [PATCH 1/3] specify no attribute for group exists check, as done with users --- apps/user_ldap/group_ldap.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/user_ldap/group_ldap.php b/apps/user_ldap/group_ldap.php index 4051b1d8cae..af41bf65323 100644 --- a/apps/user_ldap/group_ldap.php +++ b/apps/user_ldap/group_ldap.php @@ -469,7 +469,7 @@ class GROUP_LDAP extends BackendUtility implements \OCP\GroupInterface { } //if group really still exists, we will be able to read its objectclass - $objcs = $this->access->readAttribute($dn, 'objectclass'); + $objcs = $this->access->readAttribute($dn, ''); if(!$objcs || empty($objcs)) { $this->access->connection->writeToCache('groupExists'.$gid, false); return false; From ef7ab856f6d9a1f1c522eb36cb1ffcfa7c9730c7 Mon Sep 17 00:00:00 2001 From: Arthur Schiwon Date: Thu, 12 Jun 2014 13:32:58 +0200 Subject: [PATCH 2/3] fix instantiation of Access class --- apps/user_ldap/lib/jobs.php | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/apps/user_ldap/lib/jobs.php b/apps/user_ldap/lib/jobs.php index 19c041e4db4..47e536f8f64 100644 --- a/apps/user_ldap/lib/jobs.php +++ b/apps/user_ldap/lib/jobs.php @@ -160,8 +160,14 @@ class Jobs extends \OC\BackgroundJob\TimedJob { $ldapWrapper = new LDAP(); if(count($configPrefixes) === 1) { //avoid the proxy when there is only one LDAP server configured + $userManager = new user\Manager( + \OC::$server->getConfig(), + new FilesystemHelper(), + new LogWrapper(), + \OC::$server->getAvatarManager(), + new \OCP\Image()); $connector = new Connection($ldapWrapper, $configPrefixes[0]); - $ldapAccess = new Access($connector, $ldapWrapper); + $ldapAccess = new Access($connector, $ldapWrapper, $userManager); self::$groupBE = new \OCA\user_ldap\GROUP_LDAP($ldapAccess); } else { self::$groupBE = new \OCA\user_ldap\Group_Proxy($configPrefixes, $ldapWrapper); From fe0b75ccabd1bd7a79f462920cc1c59b203a86a2 Mon Sep 17 00:00:00 2001 From: Arthur Schiwon Date: Fri, 27 Jun 2014 20:09:16 +0200 Subject: [PATCH 3/3] also adapt result check from readAttribute --- apps/user_ldap/group_ldap.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/apps/user_ldap/group_ldap.php b/apps/user_ldap/group_ldap.php index af41bf65323..1a35691be85 100644 --- a/apps/user_ldap/group_ldap.php +++ b/apps/user_ldap/group_ldap.php @@ -469,8 +469,7 @@ class GROUP_LDAP extends BackendUtility implements \OCP\GroupInterface { } //if group really still exists, we will be able to read its objectclass - $objcs = $this->access->readAttribute($dn, ''); - if(!$objcs || empty($objcs)) { + if(!is_array($this->access->readAttribute($dn, ''))) { $this->access->connection->writeToCache('groupExists'.$gid, false); return false; }