From 332840b2bd6789ade98dc81cbfe0d05194a963f4 Mon Sep 17 00:00:00 2001 From: Hakase Date: Wed, 23 May 2018 19:06:41 +0900 Subject: [PATCH] Latest update - 7276 --- src/core/ngx_resolver.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/core/ngx_resolver.c b/src/core/ngx_resolver.c index cd55520..f904091 100644 --- a/src/core/ngx_resolver.c +++ b/src/core/ngx_resolver.c @@ -1299,16 +1299,23 @@ ngx_resolver_send_udp_query(ngx_resolver_t *r, ngx_resolver_connection_t *rec, n = ngx_send(rec->udp, query, qlen); - if (n == -1) { - return NGX_ERROR; + if (n == NGX_ERROR) { + goto failed; } if ((size_t) n != (size_t) qlen) { ngx_log_error(NGX_LOG_CRIT, &rec->log, 0, "send() incomplete"); - return NGX_ERROR; + goto failed; } return NGX_OK; + +failed: + + ngx_close_connection(rec->udp); + rec->udp = NULL; + + return NGX_ERROR; } @@ -4546,7 +4553,7 @@ ngx_tcp_connect(ngx_resolver_connection_t *rec) level = NGX_LOG_CRIT; } - ngx_log_error(level, c->log, err, "connect() to %V failed", + ngx_log_error(level, &rec->log, err, "connect() to %V failed", &rec->server); ngx_close_connection(c);