comparison src/http/modules/ngx_http_grpc_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 57463f4e2fcd
children 6439ef81e37d
comparison
equal deleted inserted replaced
7472:d430babbe643 7473:8981dbb12254
4648 return NGX_ERROR; 4648 return NGX_ERROR;
4649 } 4649 }
4650 4650
4651 cln = ngx_pool_cleanup_add(cf->pool, 0); 4651 cln = ngx_pool_cleanup_add(cf->pool, 0);
4652 if (cln == NULL) { 4652 if (cln == NULL) {
4653 ngx_ssl_cleanup_ctx(glcf->upstream.ssl);
4653 return NGX_ERROR; 4654 return NGX_ERROR;
4654 } 4655 }
4655 4656
4656 cln->handler = ngx_ssl_cleanup_ctx; 4657 cln->handler = ngx_ssl_cleanup_ctx;
4657 cln->data = glcf->upstream.ssl; 4658 cln->data = glcf->upstream.ssl;