SMTP commands and, unless altered by a service extension, message
data, are transmitted from the sender to the receiver via the
transmission channel in "lines".
An SMTP reply is an acknowledgment (positive or negative) sent in
"lines" from receiver to sender via the transmission channel in
response to a command. The general form of a reply is a numeric
completion code (indicating failure or success) usually followed by a
text string. The codes are for use by programs and the text is
usually intended for human users. RFC 3463 [25], specifies further
structuring of the reply strings, including the use of supplemental
and more specific completion codes (see also RFC 5248 [26]).
Lines
Lines consist of zero or more data characters terminated by the
sequence ASCII character "CR" (hex value 0D) followed immediately by
ASCII character "LF" (hex value 0A). This termination sequence is
denoted as <CRLF> in this document. Conforming implementations MUST
NOT recognize or generate any other character or character sequence
as a line terminator. Limits MAY be imposed on line lengths by servers (see Section 4).
In addition, the appearance of "bare" "CR" or "LF" characters in text
(i.e., either without the other) has a long history of causing
problems in mail implementations and applications that use the mail
system as a tool. SMTP client implementations MUST NOT transmit
these characters except when they are intended as line terminators
and then MUST, as indicated above, transmit them only as a <CRLF> sequence.
Message Content and Mail Data
The terms "message content" and "mail data" are used interchangeably
in this document to describe the material transmitted after the DATA
command is accepted and before the end of data indication is
transmitted. Message content includes the message header section and
the possibly structured message body. The MIME specification (RFC
2045 [21]) provides the standard mechanisms for structured message bodies.