From eb2953c64b471d2144731b7b4d445fac450a3e1a Mon Sep 17 00:00:00 2001 From: saugat86 Date: Fri, 29 Aug 2025 00:14:58 +0545 Subject: [PATCH] updated nginx ldap auth module with retry logic fixes --- ngx_http_auth_ldap_module.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/ngx_http_auth_ldap_module.c b/ngx_http_auth_ldap_module.c index b1f0447..1fc6a7d 100644 --- a/ngx_http_auth_ldap_module.c +++ b/ngx_http_auth_ldap_module.c @@ -1651,7 +1651,13 @@ ngx_http_auth_ldap_connect(ngx_http_auth_ldap_connection_t *c) ngx_addr_t *addr; ngx_int_t rc; - addr = &c->server->parsed_url.addrs[ngx_random() % c->server->parsed_url.naddrs]; + if ((c == NULL) || (c->server == NULL) || (c->server->parsed_url.addrs == NULL)) { + ngx_log_error(NGX_LOG_ERR, c->log, 0, "http_auth_ldap: Can not connect because addr is null"); + return; + } else if (c->server->parsed_url.naddrs == 0) + addr = &c->server->parsed_url.addrs[0]; + else + addr = &c->server->parsed_url.addrs[ngx_random() % c->server->parsed_url.naddrs]; ngx_log_debug1(NGX_LOG_DEBUG_HTTP, c->log, 0, "http_auth_ldap: Connecting to LDAP server \"%V\".", &addr->name);