changeset 3299:0b6277a58a2d

*) fix resolving an empty name ("."), *) add quotes in an error message, *) backout r3299 in ngx_mail_smtp_handler.c
author Igor Sysoev <igor@sysoev.ru>
date Mon, 09 Nov 2009 19:15:11 +0000
parents 847ab5a32307
children 5a08dfb8d763
files src/core/ngx_resolver.c src/mail/ngx_mail_smtp_handler.c
diffstat 2 files changed, 3 insertions(+), 15 deletions(-) [+]
line wrap: on
line diff
--- a/src/core/ngx_resolver.c
+++ b/src/core/ngx_resolver.c
@@ -1754,7 +1754,8 @@ ngx_resolver_create_name_query(ngx_resol
     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;
 
--- a/src/mail/ngx_mail_smtp_handler.c
+++ b/src/mail/ngx_mail_smtp_handler.c
@@ -124,19 +124,6 @@ ngx_mail_smtp_resolve_addr_handler(ngx_r
         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 @@ ngx_mail_smtp_resolve_name_handler(ngx_r
 
     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));