SMTP
Click on the red underlined text to get to the source
...
This memo defines a framework for extending the SMTP service by
defining a means whereby a server SMTP can inform a client ...
... defines a framework for extending the SMTP service by
defining a means whereby a server SMTP can inform a client SMTP as to
...
... defining a means whereby a server SMTP can inform a client SMTP as to
the service extensions it supports. Extensions to the SMTP service ...
... SMTP as to
the service extensions it supports. Extensions to the SMTP service
are registered with the IANA. This framework ...
... IANA. This framework does not require
modification of existing SMTP clients or servers unless the features
of the service ...
...
The Simple Mail Transfer Protocol (SMTP) [1] has provided a stable,
effective basis for the relay function of message transfer agents ...
... effective basis for the relay function of message transfer agents.
Although a decade old, SMTP has proven remarkably resilient.
Nevertheless, the need for a number of protocol extensions has become
...
... protocol extensions has become
evident. Rather than describing these extensions as separate and
haphazard entities, this document enhances SMTP in a straightforward
fashion that provides a framework in which all future extensions can
...
... Framework for SMTP Extensions ...
...
For the purpose of service extensions to SMTP, SMTP relays a mail
object containing an envelope and a content.
...
... For the purpose of service extensions to SMTP, SMTP relays a mail
object containing an envelope and a content.
...
... The SMTP envelope is straightforward, and is sent as a
series of SMTP protocol units: it consists of an
...
... The SMTP envelope is straightforward, and is sent as a
series of SMTP protocol units: it consists of an
originator address (to which error reports should be
...
...
The SMTP content is sent in the SMTP DATA protocol unit
and has two parts: the headers and the body. The
...
...
Although SMTP is widely and robustly deployed, some parts of the
Internet community might wish to extend the SMTP service ...
... SMTP is widely and robustly deployed, some parts of the
Internet community might wish to extend the SMTP service. This memo
defines a means whereby both an extended SMTP client and server ...
... Internet community might wish to extend the SMTP service. This memo
defines a means whereby both an extended SMTP client and server may
recognize each other as such and the server can inform the client ...
...
It must be emphasized that any extension to the SMTP service should
not be considered lightly. SMTP's strength comes primarily from its
...
... It must be emphasized that any extension to the SMTP service should
not be considered lightly. SMTP's strength comes primarily from its
simplicity. Experience with many protocols has shown that:
...
... deployment, and interoperability costs. In many cases, the cost of
extending the SMTP service will likely outweigh the benefit.
...
... a new SMTP command (section 4) ...
... a registry of SMTP service extensions (section 5) ...
... SMTP supporting SMTP service extensions should start an SMTP
session by issuing the EHLO command ...
... session by issuing the EHLO command instead of the HELO command. If
the SMTP server supports the SMTP service extensions it will give a
successful response (see section 4.3), a failure response (see 4.4),
...
... EHLO command instead of the HELO command. If
the SMTP server supports the SMTP service extensions it will give a
successful response (see section 4.3), a failure response (see 4.4),
or an error response ...
... successful response (see section 4.3), a failure response (see 4.4),
or an error response (4.5). If the SMTP server does not support any
SMTP service extensions it will generate an error response ...
... error response (4.5). If the SMTP server does not support any
SMTP service extensions it will generate an error response (see
section 4.5).
...
... error response (4.5). If the SMTP server does not support any
SMTP service extensions it will generate an error response (see
section 4.5).
...
...
RFC 821std10(-> 2821prop) states that the first command in an SMTP session must be the
HELO command. This requirement ...
...
This specification extends the SMTP MAIL FROM and RCPT TO to allow
additional parameters and parameter values ...
... buffer
space must be allocated. The maximum command length that must be
supported by an SMTP implementation with extensions is 512 plus the
sum of all the maximum parameter lengths for all the extensions
supported.
...
...
If successful, the server SMTP responds with code 250. On failure,
the server SMTP responds with code 550. On error, the server SMTP ...
... If successful, the server SMTP responds with code 250. On failure,
the server SMTP responds with code 550. On error, the server SMTP
responds with one of codes 500, 501, 502, 504, or 421.
...
... SMTP responds with code 250. On failure,
the server SMTP responds with code 550. On error, the server SMTP
responds with one of codes 500, 501, 502, 504, or 421.
...
... EHLO command is issued, and a successful response is returned,
then a subsequent HELO or EHLO command will result in the server SMTP
replying with code 503. A client SMTP ...
... SMTP
replying with code 503. A client SMTP must not cache any information
returned if the EHLO command ...
... returned if the EHLO command succeeds. That is, a client SMTP must
issue the EHLO command at the start ...
... issue the EHLO command at the start of each SMTP session if
information about extended facilities is needed.
...
...
If the server SMTP implements and is able to perform the EHLO
command, it will return code 250. This indicates that both the
...
... return code 250. This indicates that both the
server and client SMTP are in the initial state, that is, there is no
transaction ...
... The IANA maintains a registry of SMTP service extensions. Associated
with each such extension is a corresponding EHLO keyword value. Each
...
... the textual name of the SMTP service extension;
...
... any additional SMTP verbs associated with the extension
(additional verbs will usually be, but are not required
to be, the same as the EHLO keyword ...
... EHLO keyword value that starts with an upper or
lower case "X" refers to a local SMTP service extension, which is
used through bilateral, rather than standardized, agreement. Keywords
...
... IESG-
approved experimental SMTP service extension registered with IANA. A
conforming server must not offer non "X" prefixed keyword values that
...
...
If for some reason the server SMTP is unable to list the service
extensions it supports, it will return code ...
...
In the case of a failure response, the client SMTP should issue
either the HELO or QUIT command.
...
...
If the server SMTP recognizes the EHLO command, but the command
argument is unacceptable, it will return code ...
...
If the server SMTP recognizes, but does not implement, the EHLO
command, it will return code 502.
...
...
If the server SMTP determines that the SMTP service is no longer
available (e.g., due to imminent system shutdown), it will return
code ...
...
If the server SMTP determines that the SMTP service is no longer
available (e.g., due to imminent system shutdown), it will return
code 421.
...
... In the case of any error response, the client SMTP should issue
either the HELO or QUIT command.
...
...
A server SMTP that conforms to RFC 821std10(-> 2821prop) but does not support the
extensions specified here will not recognize the EHLO command ...
... return code 500, as specified in RFC 821std10(-> 2821prop). The
server SMTP should stay in the same state after returning this code
(see section 4.1.1 of RFC 821std10(-> 2821prop) ...
... (see section 4.1.1 of RFC 821std10(-> 2821prop)). The client SMTP may then issue
either a HELO or a QUIT command.
...
...
Some SMTP servers are known to disconnect the SMTP transmission
channel upon receipt of the EHLO command ...
...
Nevertheless, in order to achieve maxmimum interoperablity it is
suggested that extended SMTP clients using EHLO be coded to check for
...
... returning a reply. If this happens the client must decide if the
operation can be successfully completed without using any SMTP
extensions. If it can a new connection can be opened and the HELO
command can be used.
...
... 821std10(-> 2821prop)
which correspond to those SMTP commands which are defined as optional
in [5]. (The mandatory SMTP ...
... SMTP commands which are defined as optional
in [5]. (The mandatory SMTP commands, according to [5], are HELO,
MAIL, RCPT, DATA, RSET, VRFY, NOOP, and QUIT.)
...
...
It is recognized that several of the extensions planned for SMTP will
make use of additional parameters associated with the MAIL FROM and
...
...
If the server SMTP does not recognize or cannot implement one or more
of the parameters associated with a particular MAIL FROM or RCPT TO
...
...
SMTP servers are required to add an appropriate Received: field to
the headers of all messages they receive. A "with ESMTP ...
... headers of all messages they receive. A "with ESMTP" clause
should be added to this field when any SMTP service extensions are
used. "ESMTP" is hereby added to the list of standard protocol names
...
... C: <open connection to server>
S: 220 dbc.mtview.ca.us SMTP service ready
C: EHLO ymir.claremont.edu
...
... ...
indicates that the server SMTP implements only those
SMTP commands which are defined as mandatory in [5 ...
... indicates that the server SMTP implements only those
SMTP commands which are defined as mandatory in [5].
...
... C: <open connection to server>
S: 220 dbc.mtview.ca.us SMTP service ready
C: EHLO ymir.claremont.edu
...
... ...
indicates that the server SMTP also implements the SMTP
EXPN and HELP commands, one standard service ...
...
indicates that the server SMTP also implements the SMTP
EXPN and HELP commands, one standard service extension
...
... service extensions (XONE and XVRB).
(3) Finally, a server that does not support SMTP service
extensions would act as follows:
...
... C: <open connection to server>
S: 220 dbc.mtview.ca.us SMTP service ready
C: EHLO ymir.claremont.edu
...
... ...
The 500 response indicates that the server SMTP does
not implement the extensions specified here. The
client ...
... Miller, Keith Moore, John Myers, Dan Oscarsson, Julian Onions, Rayan
Zachariassen, and the contributions of the entire IETF SMTP Working
Group. Of course, none of the individuals are necessarily responsible
for the combination of ideas represented here. Indeed, in some cases,
...
