mirror of
https://github.com/nginx/nginx.git
synced 2025-06-07 17:52:38 +08:00
Resolver: style.
Use the original query name in error and debug messages when processing PTR responses.
This commit is contained in:
parent
bf269cbc55
commit
c6ed65ce7c
@ -2396,7 +2396,6 @@ ngx_resolver_process_ptr(ngx_resolver_t *r, u_char *buf, size_t n,
|
|||||||
{
|
{
|
||||||
char *err;
|
char *err;
|
||||||
size_t len;
|
size_t len;
|
||||||
u_char text[NGX_SOCKADDR_STRLEN];
|
|
||||||
in_addr_t addr;
|
in_addr_t addr;
|
||||||
int32_t ttl;
|
int32_t ttl;
|
||||||
ngx_int_t octet;
|
ngx_int_t octet;
|
||||||
@ -2413,13 +2412,15 @@ ngx_resolver_process_ptr(ngx_resolver_t *r, u_char *buf, size_t n,
|
|||||||
struct in6_addr addr6;
|
struct in6_addr addr6;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (ngx_resolver_copy(r, NULL, buf,
|
if (ngx_resolver_copy(r, &name, buf,
|
||||||
buf + sizeof(ngx_resolver_hdr_t), buf + n)
|
buf + sizeof(ngx_resolver_hdr_t), buf + n)
|
||||||
!= NGX_OK)
|
!= NGX_OK)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ngx_log_debug1(NGX_LOG_DEBUG_CORE, r->log, 0, "resolver qs:%V", &name);
|
||||||
|
|
||||||
/* AF_INET */
|
/* AF_INET */
|
||||||
|
|
||||||
addr = 0;
|
addr = 0;
|
||||||
@ -2447,10 +2448,6 @@ ngx_resolver_process_ptr(ngx_resolver_t *r, u_char *buf, size_t n,
|
|||||||
tree = &r->addr_rbtree;
|
tree = &r->addr_rbtree;
|
||||||
expire_queue = &r->addr_expire_queue;
|
expire_queue = &r->addr_expire_queue;
|
||||||
|
|
||||||
addr = htonl(addr);
|
|
||||||
name.len = ngx_inet_ntop(AF_INET, &addr, text, NGX_SOCKADDR_STRLEN);
|
|
||||||
name.data = text;
|
|
||||||
|
|
||||||
goto valid;
|
goto valid;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2495,9 +2492,6 @@ invalid_in_addr_arpa:
|
|||||||
tree = &r->addr6_rbtree;
|
tree = &r->addr6_rbtree;
|
||||||
expire_queue = &r->addr6_expire_queue;
|
expire_queue = &r->addr6_expire_queue;
|
||||||
|
|
||||||
name.len = ngx_inet6_ntop(addr6.s6_addr, text, NGX_SOCKADDR_STRLEN);
|
|
||||||
name.data = text;
|
|
||||||
|
|
||||||
goto valid;
|
goto valid;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2506,6 +2500,7 @@ invalid_ip6_arpa:
|
|||||||
|
|
||||||
ngx_log_error(r->log_level, r->log, 0,
|
ngx_log_error(r->log_level, r->log, 0,
|
||||||
"invalid in-addr.arpa or ip6.arpa name in DNS response");
|
"invalid in-addr.arpa or ip6.arpa name in DNS response");
|
||||||
|
ngx_resolver_free(r, name.data);
|
||||||
return;
|
return;
|
||||||
|
|
||||||
valid:
|
valid:
|
||||||
@ -2513,6 +2508,7 @@ valid:
|
|||||||
if (rn == NULL || rn->query == NULL) {
|
if (rn == NULL || rn->query == NULL) {
|
||||||
ngx_log_error(r->log_level, r->log, 0,
|
ngx_log_error(r->log_level, r->log, 0,
|
||||||
"unexpected response for %V", &name);
|
"unexpected response for %V", &name);
|
||||||
|
ngx_resolver_free(r, name.data);
|
||||||
goto failed;
|
goto failed;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2522,9 +2518,12 @@ valid:
|
|||||||
ngx_log_error(r->log_level, r->log, 0,
|
ngx_log_error(r->log_level, r->log, 0,
|
||||||
"wrong ident %ui response for %V, expect %ui",
|
"wrong ident %ui response for %V, expect %ui",
|
||||||
ident, &name, qident);
|
ident, &name, qident);
|
||||||
|
ngx_resolver_free(r, name.data);
|
||||||
goto failed;
|
goto failed;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ngx_resolver_free(r, name.data);
|
||||||
|
|
||||||
if (code == 0 && nan == 0) {
|
if (code == 0 && nan == 0) {
|
||||||
code = NGX_RESOLVE_NXDOMAIN;
|
code = NGX_RESOLVE_NXDOMAIN;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user