*) fix resolving an empty name ("."),
*) add quotes in an error message,
*) backout r3299 in ngx_mail_smtp_handler.c
diff --git a/src/core/ngx_resolver.c b/src/core/ngx_resolver.c
index 775f17f..48d569e 100644
--- a/src/core/ngx_resolver.c
+++ b/src/core/ngx_resolver.c
@@ -1754,7 +1754,8 @@
query->nns_hi = 0; query->nns_lo = 0;
query->nar_hi = 0; query->nar_lo = 0;
- p += sizeof(ngx_resolver_query_t) + 1 + ctx->name.len + 1;
+ p += sizeof(ngx_resolver_query_t)
+ + ctx->name.len ? (1 + ctx->name.len + 1) : 1;
qs = (ngx_resolver_qs_t *) p;
diff --git a/src/mail/ngx_mail_smtp_handler.c b/src/mail/ngx_mail_smtp_handler.c
index 12e4b57..0bc422a 100644
--- a/src/mail/ngx_mail_smtp_handler.c
+++ b/src/mail/ngx_mail_smtp_handler.c
@@ -124,19 +124,6 @@
return;
}
- if (ctx->name.len == 0) {
- ngx_log_error(NGX_LOG_ERR, c->log, 0,
- "%V has been resolved to zero name", &c->addr_text);
-
- s->host = smtp_unavailable;
-
- ngx_resolve_addr_done(ctx);
-
- ngx_mail_smtp_greeting(s, s->connection);
-
- return;
- }
-
c->log->action = "in resolving client hostname";
s->host.data = ngx_pstrdup(c->pool, &ctx->name);
@@ -204,7 +191,7 @@
if (ctx->state) {
ngx_log_error(NGX_LOG_ERR, c->log, 0,
- "%V could not be resolved (%i: %s)",
+ "\"%V\" could not be resolved (%i: %s)",
&ctx->name, ctx->state,
ngx_resolver_strerror(ctx->state));