From e7fbe18945e8d94fd400fd66f36e67174951f290 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Fri, 7 Jun 2013 13:23:40 +0200 Subject: fix ldap deref option FS2798 Do not pass timelimit and deref settings to ldap_search. These values should be set globally via ldap_set_option() instead (as we do for deref). --- lib/plugins/authldap/auth.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'lib/plugins/authldap/auth.php') diff --git a/lib/plugins/authldap/auth.php b/lib/plugins/authldap/auth.php index b49aa4792..e43c3f828 100644 --- a/lib/plugins/authldap/auth.php +++ b/lib/plugins/authldap/auth.php @@ -502,23 +502,23 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { * @return resource */ protected function _ldapsearch($link_identifier, $base_dn, $filter, $scope = 'sub', $attributes = null, - $attrsonly = 0, $sizelimit = 0, $timelimit = 0, $deref = LDAP_DEREF_NEVER) { + $attrsonly = 0, $sizelimit = 0) { if(is_null($attributes)) $attributes = array(); if($scope == 'base') { return @ldap_read( $link_identifier, $base_dn, $filter, $attributes, - $attrsonly, $sizelimit, $timelimit, $deref + $attrsonly, $sizelimit ); } elseif($scope == 'one') { return @ldap_list( $link_identifier, $base_dn, $filter, $attributes, - $attrsonly, $sizelimit, $timelimit, $deref + $attrsonly, $sizelimit ); } else { return @ldap_search( $link_identifier, $base_dn, $filter, $attributes, - $attrsonly, $sizelimit, $timelimit, $deref + $attrsonly, $sizelimit ); } } -- cgit v1.2.3 From 04e4890db370bdb57201f76581fe3dc0a3adb614 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Fri, 7 Jun 2013 13:50:46 +0200 Subject: fix problem when ldap returns no groups FS#2788 --- lib/plugins/authldap/auth.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lib/plugins/authldap/auth.php') diff --git a/lib/plugins/authldap/auth.php b/lib/plugins/authldap/auth.php index e43c3f828..6a967a6d4 100644 --- a/lib/plugins/authldap/auth.php +++ b/lib/plugins/authldap/auth.php @@ -248,7 +248,7 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { } // always add the default group to the list of groups - if(!in_array($conf['defaultgroup'], $info['grps'])) { + if(!$info['grps'] or !in_array($conf['defaultgroup'], $info['grps'])) { $info['grps'][] = $conf['defaultgroup']; } return $info; -- cgit v1.2.3 From 4f11d93def5599386f32a03401a73e7175679f22 Mon Sep 17 00:00:00 2001 From: Gerrit Uitslag Date: Fri, 20 Sep 2013 16:32:08 +0200 Subject: skips 'count' entries in ldap results. Fixes FS#2370 --- lib/plugins/authldap/auth.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'lib/plugins/authldap/auth.php') diff --git a/lib/plugins/authldap/auth.php b/lib/plugins/authldap/auth.php index 6a967a6d4..de1332282 100644 --- a/lib/plugins/authldap/auth.php +++ b/lib/plugins/authldap/auth.php @@ -208,8 +208,8 @@ class auth_plugin_authldap extends DokuWiki_Auth_Plugin { if(is_array($key)) { // use regexp to clean up user_result list($key, $regexp) = each($key); - if($user_result[$key]) foreach($user_result[$key] as $grp) { - if(preg_match($regexp, $grp, $match)) { + if($user_result[$key]) foreach($user_result[$key] as $grpkey => $grp) { + if($grpkey !== 'count' && preg_match($regexp, $grp, $match)) { if($localkey == 'grps') { $info[$localkey][] = $match[1]; } else { -- cgit v1.2.3