Mercurial > hg > nginx-quic
comparison src/http/modules/ngx_http_proxy_module.c @ 7473:8981dbb12254
SSL: fixed potential leak on memory allocation errors.
If ngx_pool_cleanup_add() fails, we have to clean just created SSL context
manually, thus appropriate call added.
Additionally, ngx_pool_cleanup_add() moved closer to ngx_ssl_create() in
the ngx_http_ssl_module, to make sure there are no leaks due to intermediate
code.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Sun, 03 Mar 2019 16:48:39 +0300 |
parents | 8b68d50090e4 |
children | 9afa45068b8f |
comparison
equal
deleted
inserted
replaced
7472:d430babbe643 | 7473:8981dbb12254 |
---|---|
4268 return NGX_ERROR; | 4268 return NGX_ERROR; |
4269 } | 4269 } |
4270 | 4270 |
4271 cln = ngx_pool_cleanup_add(cf->pool, 0); | 4271 cln = ngx_pool_cleanup_add(cf->pool, 0); |
4272 if (cln == NULL) { | 4272 if (cln == NULL) { |
4273 ngx_ssl_cleanup_ctx(plcf->upstream.ssl); | |
4273 return NGX_ERROR; | 4274 return NGX_ERROR; |
4274 } | 4275 } |
4275 | 4276 |
4276 cln->handler = ngx_ssl_cleanup_ctx; | 4277 cln->handler = ngx_ssl_cleanup_ctx; |
4277 cln->data = plcf->upstream.ssl; | 4278 cln->data = plcf->upstream.ssl; |