summaryrefslogtreecommitdiff
path: root/lib/gitlab/auth/ldap/adapter.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/gitlab/auth/ldap/adapter.rb')
-rw-r--r--lib/gitlab/auth/ldap/adapter.rb16
1 files changed, 11 insertions, 5 deletions
diff --git a/lib/gitlab/auth/ldap/adapter.rb b/lib/gitlab/auth/ldap/adapter.rb
index 3853709698b..47eca74aa5b 100644
--- a/lib/gitlab/auth/ldap/adapter.rb
+++ b/lib/gitlab/auth/ldap/adapter.rb
@@ -53,11 +53,7 @@ module Gitlab
if results.nil?
response = ldap.get_operation_result
-
- unless response.code == 0
- Gitlab::AppLogger.warn("LDAP search error: #{response.message}")
- end
-
+ check_empty_response_code(response)
[]
else
results
@@ -136,6 +132,16 @@ module Gitlab
def renew_connection_adapter
@ldap = Net::LDAP.new(config.adapter_options)
end
+
+ def check_empty_response_code(response)
+ if config.retry_empty_result_with_codes.include?(response.code)
+ raise Net::LDAP::Error, "Got empty results with response code: #{response.code}, message: #{response.message}"
+ end
+
+ unless response.code == 0
+ Gitlab::AppLogger.warn("LDAP search error: #{response.message}")
+ end
+ end
end
end
end