diff --git a/lib/ldaplib.php b/lib/ldaplib.php index 8f9adbaa38b..dd4f1c7a206 100644 --- a/lib/ldaplib.php +++ b/lib/ldaplib.php @@ -241,15 +241,17 @@ function ldap_find_userdn($ldapconnection, $username, $contexts, $objectclass, $ } if ($search_sub) { - if (!$ldap_result = @ldap_search($ldapconnection, $context, - '(&'.$objectclass.'('.$search_attrib.'='.ldap_filter_addslashes($username).'))', - array($search_attrib))) { - break; // Not found in this context. - } + $ldap_result = @ldap_search($ldapconnection, $context, + '(&'.$objectclass.'('.$search_attrib.'='.ldap_filter_addslashes($username).'))', + array($search_attrib)); } else { - $ldap_result = ldap_list($ldapconnection, $context, - '(&'.$objectclass.'('.$search_attrib.'='.ldap_filter_addslashes($username).'))', - array($search_attrib)); + $ldap_result = @ldap_list($ldapconnection, $context, + '(&'.$objectclass.'('.$search_attrib.'='.ldap_filter_addslashes($username).'))', + array($search_attrib)); + } + + if (!$ldap_result) { + continue; // Not found in this context. } $entry = ldap_first_entry($ldapconnection, $ldap_result);