Opened 5 years ago
Closed 5 years ago
#1916 closed defect (duplicate)
Potential Memory Leak in directory 'src/http/modules'. file 'ngx_http_auth_request_module.c'
Reported by: | Owned by: | ||
---|---|---|---|
Priority: | minor | Milestone: | |
Component: | nginx-module | Version: | 1.15.x |
Keywords: | potential memory leak(s) | Cc: | |
uname -a: | bill@foobar 4.4.0-18362-Microsoft #476-Microsoft Fri Nov 01 16:53:00 PST 2019 x86_64 GNU/Linux | ||
nginx -V: | nginx -V: version 1.15.0 (using static analysis of source code) |
Description
In reviewing source code in nginx-1.15.0, it would appear that there are some memory leaks in file 'ngx_http_auth_request_module.c' which when functions in this file are called, the memory allocations are not released, leading to over-utilization of memory over time, the patch file is below:
--- ngx_http_auth_request_module.c.orig 2019-12-12 12:40:36.766569400 -0800
+++ ngx_http_auth_request_module.c 2019-12-12 12:43:55.632656900 -0800
@@ -180,6 +180,7 @@
ps = ngx_palloc(r->pool, sizeof(ngx_http_post_subrequest_t));
if (ps == NULL) {
+ ngx_pfree(ctx); /* release memory previously allocated to ctx */
return NGX_ERROR;
}
@@ -200,6 +201,8 @@
sr->request_body = ngx_pcalloc(r->pool, sizeof(ngx_http_request_body_t));
if (sr->request_body == NULL) {
+ ngx_pfree(ps); /* release memory allocated to ps */
+ ngx_pfree(ctx); /* release memory allocated to ctx */
return NGX_ERROR;
}
patch file for bug reported in ticket 1916