diff --git a/lib/ldap_fluff/posix_member_service.rb b/lib/ldap_fluff/posix_member_service.rb index e699b52..8ad8f35 100644 --- a/lib/ldap_fluff/posix_member_service.rb +++ b/lib/ldap_fluff/posix_member_service.rb @@ -17,9 +17,11 @@ def find_user(uid, base_dn = @base) # return an ldap user with groups attached # note : this method is not particularly fast for large ldap systems def find_user_groups(uid) - groups = [] - @ldap.search(:filter => Net::LDAP::Filter.eq('memberuid', uid), :base => @group_base).each do |entry| - groups << entry[:cn][0] + group_search = @ldap.search(:filter => Net::LDAP::Filter.eq('memberuid', uid), :base => @group_base) + if group_search + group_search.each do |entry| + groups << entry[:cn][0] + end end groups end