diff src/mail/ngx_mail_smtp_handler.c @ 3298:847ab5a32307

fix "PTR ." case in address resolver
author Igor Sysoev <igor@sysoev.ru>
date Mon, 09 Nov 2009 18:04:05 +0000
parents a96a8c916b0c
children 0b6277a58a2d
line wrap: on
line diff
--- a/src/mail/ngx_mail_smtp_handler.c
+++ b/src/mail/ngx_mail_smtp_handler.c
@@ -124,6 +124,19 @@ 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);