Bug#482339: #482339: po-debconf: podebconf-report-po uses poor HELO hostname
Russ Allbery
rra at debian.org
Thu May 22 15:06:26 UTC 2008
Damyan Ivanov <dam at modsoftsys.com> writes:
> HELO is defined in (obsolete) RFC821:
Yeah, the current standard is RFC2821 (modulo the fact that it hasn't aged
to standard yet, but in practice, that's what people write code to now).
HELO is defined in RFC 2821 as:
Syntax:
ehlo = "EHLO" SP Domain CRLF
helo = "HELO" SP Domain CRLF
This obsoletes the specification in RFC 821, and "Domain" is defined in
section 2.3.5:
2.3.5 Domain
A domain (or domain name) consists of one or more dot-separated
components. These components ("labels" in DNS terminology [22]) are
restricted for SMTP purposes to consist of a sequence of letters,
digits, and hyphens drawn from the ASCII character set [1]. Domain
names are used as names of hosts and of other entities in the domain
name hierarchy. For example, a domain may refer to an alias (label
of a CNAME RR) or the label of Mail eXchanger records to be used to
deliver mail instead of representing a host name. See [22] and
section 5 of this specification.
The domain name, as described in this document and in [22], is the
entire, fully-qualified name (often referred to as an "FQDN"). A
domain name that is not in FQDN form is no more than a local alias.
Local aliases MUST NOT appear in any SMTP transaction.
> However, RFC2821 says:
>
> 4.1.1.1 Extended HELLO (EHLO) or HELLO (HELO)
Note that this section covers both commands; there's no difference under
RFC 2821 of the permitted arguments to either command. Also note that the
RFC 2821 syntax is backward compatible with RFC 821.
RFC 2821 is intended to be unambiguous about requiring this (I remember
because this was a point of controversy during the IETF working group and
it took some effort to reach this conclusion), but it may not have
succeeded.
> However the EHLO implementation suffers from the same pitfall - it
> uses hostname() || 'localhost'.
>
> In my reading of RFC2821, this is clearly a no-go for EHLO, as it is
> useless for identifying the system. Same holds for a raw IP-address
> from the private ranges.
>
> Perhaps there is no "best" solution for this.
Yeah, it's an annoying problem; getting a hostname isn't always easy.
> I remember past discussion about passing mail to /usr/sbin/sendmail,
> which in turn requires that the local mail system is configured
> properly. This may be not that bad idea for podebconf-report-po,
> however, as it often sends a lot of mails. Also, maintainers are
> expected to be able to configure the mail on their systems :)
This is what I tend to do in my code.
--
Russ Allbery (rra at debian.org) <http://www.eyrie.org/~eagle/>
More information about the pkg-perl-maintainers
mailing list