[nginx] Auth basic: fixed file descriptor leak on memory allocation error.

noreply at nginx.com noreply at nginx.com
Fri Aug 22 17:02:14 UTC 2025


details:   https://github.com/nginx/nginx/commit/034f15bbc251ed72018d8396e7eeb3bf30fd789b
branches:  master
commit:    034f15bbc251ed72018d8396e7eeb3bf30fd789b
user:      Sergey Kandaurov <pluknet at nginx.com>
date:      Fri, 8 Aug 2025 19:44:27 +0400
description:
Auth basic: fixed file descriptor leak on memory allocation error.

Found by Coverity (CID 1662016).

---
 src/http/modules/ngx_http_auth_basic_module.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/http/modules/ngx_http_auth_basic_module.c b/src/http/modules/ngx_http_auth_basic_module.c
index 02d41e88a..69e8d2161 100644
--- a/src/http/modules/ngx_http_auth_basic_module.c
+++ b/src/http/modules/ngx_http_auth_basic_module.c
@@ -253,7 +253,8 @@ ngx_http_auth_basic_handler(ngx_http_request_t *r)
         pwd.len = i - passwd;
         pwd.data = ngx_pnalloc(r->pool, pwd.len + 1);
         if (pwd.data == NULL) {
-            return NGX_HTTP_INTERNAL_SERVER_ERROR;
+            rc = NGX_HTTP_INTERNAL_SERVER_ERROR;
+            goto cleanup;
         }
 
         ngx_cpystrn(pwd.data, &buf[passwd], pwd.len + 1);


More information about the nginx-devel mailing list