lib/api lib/kolab_api_controller.php lib/User.php

Aleksander Machniak machniak at kolabsys.com
Fri Mar 6 09:47:25 CET 2015


 lib/User.php                       |    2 +-
 lib/api/kolab_api_service_type.php |    2 +-
 lib/kolab_api_controller.php       |    2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

New commits:
commit 8d180afa12bc87be916f96a13c2cdd6bde673242
Author: Aleksander Machniak <machniak at kolabsys.com>
Date:   Fri Mar 6 03:46:20 2015 -0500

    Fix issues related to "cn=Directory Manager" login case-insensitivity (#4804)

diff --git a/lib/User.php b/lib/User.php
index a248e57..97b1e78 100644
--- a/lib/User.php
+++ b/lib/User.php
@@ -54,7 +54,7 @@ class User
             $this->domain   = empty($domain) ? $this->auth->domain : $domain;
 
             // set unique attribute value as userid
-            if ($this->userid != 'cn=Directory Manager') {
+            if (strtolower($this->userid) != 'cn=directory manager') {
                 $unique_attr = kolab_api_service::unique_attribute();
 
                 if ($attributes && $attributes[$unique_attr]) {
diff --git a/lib/api/kolab_api_service_type.php b/lib/api/kolab_api_service_type.php
index 09bbc8c..0089589 100644
--- a/lib/api/kolab_api_service_type.php
+++ b/lib/api/kolab_api_service_type.php
@@ -221,7 +221,7 @@ class kolab_api_service_type extends kolab_api_service
     {
         $effective_rights = array();
         // @TODO: set rights according to user group or sth
-        if ($_SESSION['user']->get_userid() == 'cn=Directory Manager') {
+        if (strtolower($_SESSION['user']->get_userid()) == 'cn=directory manager') {
             $attr_acl = array('read', 'write', 'delete');
             $effective_rights = array(
                 'entryLevelRights' => array(
diff --git a/lib/kolab_api_controller.php b/lib/kolab_api_controller.php
index ed716cf..f3f20bb 100644
--- a/lib/kolab_api_controller.php
+++ b/lib/kolab_api_controller.php
@@ -321,7 +321,7 @@ class kolab_api_controller
         }
 
         // user info requested (it's not possible to get manager info)
-        if ($postdata['info'] && ($username != 'cn=Directory Manager')) {
+        if ($postdata['info'] && (strtolower($username) != 'cn=directory manager')) {
             $service    = $this->get_service('user');
             $attributes = $service->object_attributes('user');
         }




More information about the commits mailing list