lib/Auth
Jeroen van Meeuwen
vanmeeuwen at kolabsys.com
Thu Sep 13 15:32:58 CEST 2012
lib/Auth/LDAP.php | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
New commits:
commit 7679bf67ddc92c25e06e11d5a9dbd6e252dfcc6a
Author: Jeroen van Meeuwen (Kolab Systems) <vanmeeuwen at kolabsys.com>
Date: Thu Sep 13 15:32:25 2012 +0200
Use a fallback of 'domain.tld' if 'domain_tld' is not matching anything, and fall back further to 'userRoot'
diff --git a/lib/Auth/LDAP.php b/lib/Auth/LDAP.php
index 2afd737..858c422 100644
--- a/lib/Auth/LDAP.php
+++ b/lib/Auth/LDAP.php
@@ -1127,12 +1127,30 @@ class LDAP extends Net_LDAP3 {
}
$result = $this->_read("cn=" . str_replace('.', '_', $this->conf->get('kolab', 'primary_domain') . ",cn=ldbm database,cn=plugins,cn=config"), array('nsslapd-directory'));
+ if (!$result) {
+ $result = $this->_read("cn=" . $this->conf->get('kolab', 'primary_domain') . ",cn=ldbm database,cn=plugins,cn=config", array('nsslapd-directory'));
+ }
+
+ if (!$result) {
+ $result = $this->_read("cn=userRoot,cn=ldbm database,cn=plugins,cn=config", array('nsslapd-directory'));
+ }
$this->_log(LOG_DEBUG, "Primary domain ldbm database configuration entry: " . var_export($result, TRUE));
$result = $result[key($result)];
+
+ $orig_directory = $result['nsslapd-directory'];
+
$directory = str_replace(str_replace('.', '_', $this->conf->get('kolab', 'primary_domain')), str_replace('.','_',$domain_name), $result['nsslapd-directory']);
+ if ($directory == $orig_directory) {
+ $directory = str_replace($this->conf->get('kolab', 'primary_domain'), str_replace('.','_',$domain_name), $result['nsslapd-directory']);
+ }
+
+ if ($directory == $orig_directory) {
+ $directory = str_replace("userRoot", str_replace('.','_',$domain_name), $result['nsslapd-directory']);
+ }
+
$dn = "cn=" . str_replace('.', '_', $domain_name) . ",cn=ldbm database,cn=plugins,cn=config";
$attrs = array(
'objectclass' => array(
More information about the commits
mailing list