Re: [Exim] use IP on SMTP HELO instead of foo.bar

Top Page
Delete this message
Reply to this message
Author: Philip Hazel
Date:  
To: Dave C.
CC: Alberto Cortés, V. T. Mueller, exim-users
Subject: Re: [Exim] use IP on SMTP HELO instead of foo.bar
On Mon, 13 Aug 2001, Dave C. wrote:

> Although, I will note that any host which rejects a normal SMTP HELO
> with a domain name or hostname as an argument is BROKEN..


Absolutely. This is what RFC 2821 says:

A client SMTP SHOULD start an SMTP session by issuing the EHLO
command. If the SMTP server supports the SMTP service extensions it
will give a successful response, a failure response, or an error
response. If the SMTP server, in violation of this specification,
does not support any SMTP service extensions it will generate an
error response. Older client SMTP systems MAY, as discussed above,
use HELO (as specified in RFC 821) instead of EHLO, and servers MUST
support the HELO command and reply properly to it. In any event, a
client MUST issue HELO or EHLO before starting a mail transaction.

These commands, and a "250 OK" reply to one of them, confirm that
both the SMTP client and the SMTP server are in the initial state,
that is, there is no transaction in progress and all state tables and
buffers are cleared.

Syntax:

      ehlo            = "EHLO" SP Domain CRLF
      helo            = "HELO" SP Domain CRLF


And the syntax of "domain" is defined thus:

      Domain = (sub-domain 1*("." sub-domain)) / address-literal
      sub-domain = Let-dig [Ldh-str]


      address-literal = "[" IPv4-address-literal /
                            IPv6-address-literal /
                            General-address-literal "]"
            ; See section 4.1.3


So either

HELO my.host.name

or

HELO [10.9.8.7]

is legal according to that syntax. And because domain names may begin
with digits,

HELO 10.9.8.7

is also syntactically legal, but so is

HELO 10.9.8.7.6.5.4.3.2.1

-- 
Philip Hazel            University of Cambridge Computing Service,
ph10@???      Cambridge, England. Phone: +44 1223 334714.