lib/api lib/Auth

Jeroen van Meeuwen vanmeeuwen at kolabsys.com
Tue Aug 12 13:10:16 CEST 2014


 lib/Auth/LDAP.php                   |    8 +++++++-
 lib/api/kolab_api_service_group.php |    8 ++++++++
 2 files changed, 15 insertions(+), 1 deletion(-)

New commits:
commit 93cf56fa9e0779ccfc1fc079907d914929e9ec84
Author: Jeroen van Meeuwen (Kolab Systems) <vanmeeuwen at kolabsys.com>
Date:   Tue Aug 12 13:10:07 2014 +0200

    Add parsing for a 'ou' attribute to groups as well

diff --git a/lib/Auth/LDAP.php b/lib/Auth/LDAP.php
index 1ca5764..7763205 100644
--- a/lib/Auth/LDAP.php
+++ b/lib/Auth/LDAP.php
@@ -556,7 +556,13 @@ class LDAP extends Net_LDAP3 {
 
     public function group_add($attrs, $typeid = null)
     {
-        $base_dn = $this->entry_base_dn('group', $typeid);
+        if (!empty($attrs['ou'])) {
+            $base_dn = $attrs['ou'];
+            unset($attrs['ou']);
+        }
+        else {
+            $base_dn = $this->entry_base_dn('group', $typeid);
+        }
 
         // TODO: The rdn is configurable as well.
         // Use [$type_str . "_"]user_rdn_attr
diff --git a/lib/api/kolab_api_service_group.php b/lib/api/kolab_api_service_group.php
index 0e40867..b9eed47 100644
--- a/lib/api/kolab_api_service_group.php
+++ b/lib/api/kolab_api_service_group.php
@@ -163,6 +163,14 @@ class kolab_api_service_group extends kolab_api_service
 
         Log::trace("group_info() result: " . var_export($result, TRUE));
 
+        if (empty($result['ou'])) {
+            $dn = ldap_explode_dn($result['entrydn'], 0);
+            // pop the count and rdn
+            unset($dn['count']);
+            unset($dn[0]);
+            $result['ou'] = implode(',', $dn);
+        }
+
         if ($result) {
             return $result;
         }




More information about the commits mailing list