RFC 2821:Simple Mail Transfer Protocol
RFC-Ref

SMTP


Click on the red underlined text to get to the source

... The objective of the Simple Mail Transfer Protocol (SMTP) is to transfer mail reliably and efficiently. ...
... SMTP is independent of the particular transmission subsystem and requires only a reliable ordered data stream channel ...
... An important feature of SMTP is its capability to transport mail across networks ...
... transport mail across networks, usually referred to as "SMTP mail relaying" (see section 3.8). A network consists of the mutually-TCP ...
... TCP transport-level protocol. Using SMTP, a process can transfer mail to another process on the same network or to some other network ...


... The SMTP Model ...
... The SMTP design can be pictured as: ...
... +----------+ +----------+ +------+ | | | | | User |<-->| | SMTP | | +------+ | Client- |Commands/Replies| Server- | ...
... +------+ | Client- |Commands/Replies| Server- | +------+ | SMTP |<-------------->| SMTP | +------+ | File |<-->| | and Mail | |<-->| File | ...
... Client- |Commands/Replies| Server- | +------+ | SMTP |<-------------->| SMTP | +------+ | File |<-->| | and Mail | |<-->| File | |System| | | | | |System| ...
... |System| | | | | |System| +------+ +----------+ +----------+ +------+ SMTP client SMTP server ...
... SMTP client SMTP server ...
... When an SMTP client has a message to transmit, it establishes a two- way transmission channel ...
... client has a message to transmit, it establishes a two- way transmission channel to an SMTP server. The responsibility of an SMTP client ...
... channel to an SMTP server. The responsibility of an SMTP client is to transfer mail messages to one or more SMTP servers ...
... SMTP client is to transfer mail messages to one or more SMTP servers, or report its failure to do so. ...
... The means by which a mail message is presented to an SMTP client, and how that client ...
... document. In some cases, the domain name(s) transferred to, or determined by, an SMTP client will identify the final destination(s) ...
... destination(s) of the mail message. In other cases, common with SMTP clients associated with implementations of the POP ...
... IMAP [6] protocols, or when the SMTP client is inside an isolated transport service environment, the domain name ...
... destination through which all mail messages are to be relayed. SMTP clients that transfer all traffic, regardless of the ...
... initially cannot be completed, may otherwise conform to this specification but are not considered fully-capable. Fully-capable SMTP implementations, including the relays used by these less capable ones, and their destinations, are expected to support all of the ...
... The means by which an SMTP client, once it has determined a target ...
... domain name, determines the identity of an SMTP server to which a copy of a message is to be transferred, and then performs that transfer, is covered by this document. To effect a mail transfer to ...
... copy of a message is to be transferred, and then performs that transfer, is covered by this document. To effect a mail transfer to an SMTP server, an SMTP client establishes a two-way transmission ...
... transfer, is covered by this document. To effect a mail transfer to an SMTP server, an SMTP client establishes a two-way transmission channel ...
... client establishes a two-way transmission channel to that SMTP server. An SMTP client determines the address ...
... channel to that SMTP server. An SMTP client determines the address ...
... address of an appropriate host running an SMTP server by resolving a destination domain name ...
... An SMTP server may be either the ultimate destination or an intermediate "relay" (that is, it may assume the role ...
... destination or an intermediate "relay" (that is, it may assume the role of an SMTP client after receiving ...
... gateway" (that is, it may transport the message further using some protocol other than SMTP). SMTP commands are generated by the SMTP ...
... transport the message further using some protocol other than SMTP). SMTP commands are generated by the SMTP client and sent to the SMTP server ...
... SMTP). SMTP commands are generated by the SMTP client and sent to the SMTP server. SMTP ...
... SMTP commands are generated by the SMTP client and sent to the SMTP server. SMTP replies are sent from the SMTP server to the SMTP ...
... SMTP client and sent to the SMTP server. SMTP replies are sent from the SMTP server to the SMTP ...
... client and sent to the SMTP server. SMTP replies are sent from the SMTP server to the SMTP client ...
... SMTP server. SMTP replies are sent from the SMTP server to the SMTP client in response to the commands. ...
... In other words, message transfer can occur in a single connection between the original SMTP-sender and the final SMTP-recipient, or can ...
... between the original SMTP-sender and the final SMTP-recipient, or can occur in a series of hops through intermediary systems. In either case, a formal handoff ...
... Once the transmission channel is established and initial handshaking completed, the SMTP client normally initiates a mail transaction. ...
... Commands specifying the sender or recipients may include server- permitted SMTP service extension requests as discussed in section 2.2. The dialog is purposely lock-step, one-at-a-time, although this can be modified by mutually-agreed extension requests such as command pipelining ...
... connection be shut down or may initiate other mail transactions. In addition, an SMTP client may use a connection to an ...
... client may use a connection to an SMTP server for ancillary services such as verification of email addresses ...
... not connected to the same transport service, transmission occurs via one or more relay SMTP servers. An intermediate host that acts as either an SMTP ...
... SMTP servers. An intermediate host that acts as either an SMTP relay or as a gateway into some other transmission environment is usually selected through the use of the domain name service ...
... extensions" model that permits the client and server to agree to utilize shared functionality beyond the original SMTP requirements. The SMTP ...
... SMTP requirements. The SMTP extension mechanism defines a means whereby an extended SMTP client and server ...
... requirements. The SMTP extension mechanism defines a means whereby an extended SMTP client and server may recognize each other, and the server can inform ...
... Contemporary SMTP implementations MUST support the basic extension mechanisms. For instance, servers MUST support the EHLO command even ...
... EHLO rather than HELO. (However, for compatibility with older conforming implementations, SMTP clients and servers MUST support the original HELO mechanisms as a fallback.) Unless the different characteristics of HELO must be identified for ...
... SMTP is widely deployed and high-quality implementations have proven to be very robust. However, the Internet community now considers ...
... The SMTP command EHLO, superseding the earlier HELO, ...
... a registry of SMTP service extensions, ...
... additional parameters to the SMTP MAIL and RCPT commands, and ...
... SMTP's strength comes primarily from its simplicity. Experience with many protocols has shown that protocols with few options tend towards ubiquity, whereas protocols with many options tend towards obscurity. ...
... and interoperability costs. In many cases, the cost of extending the SMTP service will likely outweigh the benefit. ...
... The IANA maintains a registry of SMTP service extensions. A corresponding EHLO keyword value is associated with each extension. ...
... 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 ...
... a description of how support for the extension affects the behavior of a server and client SMTP; and, ...
... EHLO keyword value starting with an upper or lower case "X" refers to a local SMTP service extension used exclusively through bilateral agreement. Keywords beginning with "X" MUST NOT be ...
... IESG-approved experimental SMTP service extension registered with IANA. A conforming server MUST NOT offer non-"X"-prefixed keyword values that ...
... SMTP transports a mail object. A mail object contains an envelope and content. ...
... The SMTP envelope is sent as a series of SMTP protocol units (described in section 3). It consists of an originator address ...
... The SMTP envelope is sent as a series of SMTP protocol units (described in section 3). It consists of an originator address (to ...
... The SMTP content is sent in the SMTP DATA protocol unit and has two parts: the headers ...
... The SMTP content is sent in the SMTP DATA protocol unit and has two parts: the headers and the body. If the content conforms to other ...
... US-ASCII repertoire [1]. Although SMTP extensions (such as "8BITMIME" [20]) may relax this ...
... In RFC 821std10(-> 2821prop), the two hosts participating in an SMTP transaction were described as the "SMTP ...
... SMTP transaction were described as the "SMTP-sender" and "SMTP-receiver ...
... described as the "SMTP-sender" and "SMTP-receiver". This document has been changed to reflect current industry terminology and hence ...
... receiver". This document has been changed to reflect current industry terminology and hence refers to them as the "SMTP client" (or sometimes just "the client") ...
... client" (or sometimes just "the client") and "SMTP server" (or just "the server"), respectively. Since a given host may act both as server and client ...
... 821std10(-> 2821prop) was published and, where convenient, is used in this specification. In particular, SMTP servers and clients provide a mail transport service ...
... TCP/IP network) and supporting the SMTP protocol. Hosts are known by names (see "domain ...
... 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 ...
... alias. Local aliases MUST NOT appear in any SMTP transaction. ...
... SMTP sessions are stateful, with both parties carefully maintaining a common view of the current state ...
... SMTP commands and, unless altered by a service extension, message data, are transmitted in "lines". Lines consist of zero or more data ...
... 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 ...
... This specification makes a distinction among four types of SMTP systems, based on the role those systems play in transmitting ...
... transmitting electronic mail. An "originating" system (sometimes called an SMTP originator) introduces mail into the Internet or, more generally, ...
... into a transport service environment. A "delivery" SMTP system is one that receives mail from a transport service environment and ...
... which a mail user agent is expected to subsequently access. A "relay" SMTP system (usually referred to just as a "relay") receives mail from an SMTP client ...
... "relay" SMTP system (usually referred to just as a "relay") receives mail from an SMTP client and transmits it, without modification to the message data ...
... the message data other than adding trace information, to another SMTP server for further relaying or for delivery. ...
... A "gateway" SMTP system (usually referred to just as a "gateway") receives mail from a client system ...
... gateway system perform transformations to the message that are not permitted to SMTP relay systems. For the purposes of this specification, firewalls that rewrite addresses ...
... addresses should be considered as gateways, even if SMTP is used on both sides of them (see [11]). ...
... An SMTP reply is an acknowledgment (positive or negative) sent from receiver to sender ...
... SMTP commands and replies have a rigid syntax. All commands begin with a command verb. All Replies begin with a three digit numeric code. In some commands and replies, arguments MUST follow the verb ...
... and extension name keywords) are not case sensitive, with the sole exception in this specification of a mailbox local-part (SMTP Extensions may explicitly specify case-sensitive elements). That is, a command verb, an argument value other than a mailbox ...
... mailbox local-part. The local-part of a mailbox MUST BE treated as case sensitive. Therefore, SMTP implementations MUST take care to preserve the case of mailbox local-parts. Mailbox ...
... A few SMTP servers, in violation of this specification (and RFC 821std10(-> 2821prop)) require that command verbs be encoded by clients ...
... right justified in an octet with the high order bit cleared to zero. More specifically, the unextended SMTP service provides seven bit transport ...
... bit transport only. An originating SMTP client which has not successfully negotiated an appropriate extension with a particular ...
... high-order bit of octets. If such messages are transmitted in violation of this rule, receiving SMTP servers MAY clear the high-order bit or reject the message as invalid. In general, a relay SMTP ...
... SMTP servers MAY clear the high-order bit or reject the message as invalid. In general, a relay SMTP SHOULD assume that the message content it has received is valid and, assuming that the ...
... delivery of a severely garbled message to the recipient. Delivery SMTP systems MAY reject ("bounce") such messages rather than deliver them. No sending SMTP ...
... SMTP systems MAY reject ("bounce") such messages rather than deliver them. No sending SMTP system is permitted to send envelope commands in any character set other than US-ASCII; receiving ...
... Eight-bit message content transmission MAY be requested of the server by a client using extended SMTP facilities, notably the "8BITMIME" extension [20 ...
... extension [20]. 8BITMIME SHOULD be supported by SMTP servers. However, it MUST not be construed as authorization to transmit ...


... The SMTP Procedures: An Overview ...
... This section contains descriptions of the procedures used in SMTP: session initiation, the mail transaction ...
... An SMTP session is initiated when a client opens a connection ...
... SMTP server implementations MAY include identification of their software and version information in the connection ...
... after the 220 code, a practice that permits more efficient isolation and repair of any problems. Implementations MAY make provision for SMTP servers to disable the software and version announcement where it causes security concerns ...
... The SMTP protocol allows a server to formally reject a transaction while still allowing the initial connection ...
... the connection and SHOULD respond to any intervening commands with "503 bad sequence of commands". Since an attempt to make an SMTP connection to such a system is probably in error, a server returning ...
... service extensions and requests that the server provide a list of the extensions it supports. Older SMTP systems which are unable to support service extensions and contemporary clients ...
... There are three steps to SMTP mail transactions. The transaction ...
... This command tells the SMTP-receiver that a new mail transaction is ...
... discussion of error reporting). If accepted, the SMTP server returns a 250 OK reply. If the mailbox specification is not acceptable for ...
... The optional <mail-parameters> are associated with negotiated SMTP service extensions (see section 2.2). ...
... mailbox and domain, always surrounded by "<" and ">" brackets) identifying one recipient. If accepted, the SMTP server returns a 250 OK reply and stores the forward-path. If the recipient is known not to be a deliverable address ...
... returns a 250 OK reply and stores the forward-path. If the recipient is known not to be a deliverable address, the SMTP server returns a 550 reply, typically with a string such as "no such user - " and the mailbox name ...
... hosts and the destination mailbox, however, contemporary SMTP clients SHOULD NOT utilize source routes ...
... hosts or systems. These restrictions make a server useless as a relay for clients that do not support full SMTP functionality. Consequently, restricted-capability clients MUST NOT ...
... functionality. Consequently, restricted-capability clients MUST NOT assume that any SMTP server on the Internet can be used as their mail processing (relaying) site. If a RCPT command appears without a ...
... MAIL command, the server MUST return a 503 "Bad sequence of commands" response. The optional <rcpt-parameters> are associated with negotiated SMTP service extensions (see section 2.2). ...
... If accepted, the SMTP server returns a 354 Intermediate reply and considers all succeeding lines up to but not including the end of mail data indicator to be the message text. When the end of text is ...
... considers all succeeding lines up to but not including the end of mail data indicator to be the message text. When the end of text is successfully received and stored the SMTP-receiver sends a 250 OK reply. ...
... channel, the end of mail data must be indicated so that the command and reply dialog can be resumed. SMTP indicates the end of the mail data by sending a line containing only a "." (period or full stop). A transparency procedure is used to prevent this from interfering with the user's ...
... The end of mail data indicator also confirms the mail transaction and tells the SMTP server to now process the stored recipients and mail data. If accepted, the SMTP server returns a 250 OK reply. The DATA ...
... tells the SMTP server to now process the stored recipients and mail data. If accepted, the SMTP server returns a 250 OK reply. The DATA command can fail at only two points in the protocol exchange: ...
... memo header items such as Date, Subject, To, Cc, From. Server SMTP systems SHOULD NOT reject messages based on perceived defects in the RFC 822std11(-> 2822prop) ...
... security) considerations argue against exposure of the "final" address through the SMTP protocol as a side-effect of the forwarding activity. This may be especially important when the ...
... SMTP server implementations that support the 251 and/or 551 reply codes are strongly encouraged to provide configuration mechanisms so that sites which conclude that they would undesirably disclose ...
... SMTP provides commands to verify a user name or obtain the content of a mailing list ...
... domain addresses that are usable in SMTP RCPT commands. Consequently, if an address implies delivery ...
... FQDNs) are permitted when domain names are used in SMTP. In other words, names that can be resolved to MX RRs or A RRs ...
... Internet mail system unnecessary. Many historical problems with their interpretation have made their use undesirable. SMTP clients SHOULD NOT generate explicit source routes ...
... SHOULD NOT generate explicit source routes except under unusual circumstances. SMTP servers MAY decline to act as mail relays or to accept addresses that specify source routes ...
... source routes. When route information is encountered, SMTP servers are also permitted to ignore the route information and simply send to the final destination ...
... routing to resolve any problems. If source routes are stripped, this practice will cause failures. This is one of several reasons why SMTP clients MUST NOT generate invalid source routes or depend on serial resolution of names. ...
... A relay SMTP server is usually the target of a DNS MX record that ...
... server may accept or reject the task of relaying the mail in the same way it accepts or rejects mail for a local user. If it accepts the task, it then becomes an SMTP client, establishes a transmission channel ...
... client, establishes a transmission channel to the next SMTP server specified in the DNS (according to the rules in section 5), and sends it the mail. If it declines to ...
... arrangements to send all messages to a single server for processing and subsequent distribution. SMTP, as specified here, is not ideally suited for this role, and work is underway on standardized mail submission protocols ...
... It is important to note that MX records can point to SMTP servers which act as gateways into other environments, not just SMTP ...
... SMTP servers which act as gateways into other environments, not just SMTP relays and final delivery systems; see sections 3.8 and 5. ...
... If an SMTP server has accepted the task of relaying the mail and later finds that the destination is incorrect or that the mail cannot ...
... This notification message must be from the SMTP server at the relay host or the host ...
... host that first determines that delivery cannot be accomplished. Of course, SMTP servers MUST NOT send notification messages about problems transporting notification messages. One way ...
... As discussed in section 2.4.1, a relay SMTP has no need to inspect or act upon the headers or body of the message data ...
... While the relay function discussed above operates within the Internet SMTP transport service environment, MX records or various forms of explicit routing ...
... transport service environment, MX records or various forms of explicit routing may require that an intermediate SMTP server perform a translation function between one transport service and another. As ...
... "gateway" or "gateway SMTP". ...
... headers or provide similar functionality with a different syntax, but some of these mail systems do not have an equivalent to the SMTP envelope. Therefore, when a message leaves the Internet environment, it may be necessary to fold the SMTP envelope ...
... the SMTP envelope. Therefore, when a message leaves the Internet environment, it may be necessary to fold the SMTP envelope information into the message header. A possible solution would be to ...
... create new header fields to carry the envelope information (e.g., "X-SMTP-MAIL:" and "X-SMTP-RCPT:"); however, this would require changes in mail programs in foreign environments and might risk ...
... header fields to carry the envelope information (e.g., "X-SMTP-MAIL:" and "X-SMTP-RCPT:"); however, this would require changes in mail programs in foreign environments and might risk disclosure of private information (see section 7.2). ...
... try to "fix" a Received: line. As another consequence of trace fields arising in non-SMTP environments, receiving systems MUST NOT reject mail based on the format of a trace ...
... gateway SHOULD accept all valid address formats in SMTP commands and in RFC 822std11(-> 2822prop) headers, and all valid ...
... subject to the same rules for handling source routes as those described for other SMTP systems in section 3.3. ...
... foreign mail environment are delivered to the return path from the SMTP envelope, not to the sender listed in the "From:" field (or other fields) of the RFC 822std11(-> 2822prop) ...
... An SMTP connection is terminated when the client sends a QUIT command ...
... An SMTP server MUST NOT intentionally close the connection except: ...
... After detecting the need to shut down the SMTP service and returning a 421 response code. This response code ...
... An SMTP server which is forcibly shut down via external means SHOULD attempt to send a line containing a 421 response code to the SMTP ...
... SMTP server which is forcibly shut down via external means SHOULD attempt to send a line containing a 421 response code to the SMTP client before exiting. The SMTP ...
... SMTP client before exiting. The SMTP client will normally read the 421 response code ...
... SMTP clients that experience a connection close, reset, or other ...
... An SMTP-capable host SHOULD support both the alias and the list ...


... The SMTP Specifications ...
... SMTP Commands ...
... The SMTP commands define the mail transfer or the mail system function requested by the user ...
... mail system function requested by the user. SMTP commands are character strings terminated by <CRLF>. The commands themselves are alphabetic ...
... CRLF> otherwise. (In the interest of improved interoperability, SMTP receivers are encouraged to tolerate trailing white space before the ...
... conform to receiver site conventions and the syntax specified in section 4.1.2. The SMTP commands are discussed below. The SMTP replies are discussed in section 4.2. ...
... receiver site conventions and the syntax specified in section 4.1.2. The SMTP commands are discussed below. The SMTP replies are discussed in section 4.2. ...
... These commands are used to identify the SMTP client to the SMTP server. The argument field contains the fully-qualified domain name ...
... These commands are used to identify the SMTP client to the SMTP server. The argument field contains the fully-qualified domain name of the SMTP ...
... SMTP server. The argument field contains the fully-qualified domain name of the SMTP client if one is available. In situations in which the SMTP ...
... SMTP client if one is available. In situations in which the SMTP client system does not have a meaningful domain name (e.g., when ...
... 4.1.3), optionally followed by information that will help to identify the client system. y The SMTP server identifies itself to the SMTP client ...
... the client system. y The SMTP server identifies itself to the SMTP client in the connection ...
... A client SMTP SHOULD start an SMTP session ...
... client SMTP SHOULD start an SMTP session by issuing the EHLO command. If the SMTP server ...
... 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 ...
... 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 ...
... 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. If the SMTP server, in violation of this specification, does not support any SMTP service extensions it will generate an error response. Older client ...
... error response. Older client SMTP systems MAY, as discussed above, use HELO (as specified in RFC 821std10(-> 2821prop)) instead of EHLO ...
... 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 ...
... both the SMTP client and the SMTP server are in the initial state, that is, there is no transaction ...
... This command is used to initiate a mail transaction in which the mail data is delivered to an SMTP server which may, in turn, deliver it to one or more mailboxes or pass it on to another system (possibly using ...
... one or more mailboxes or pass it on to another system (possibly using SMTP). The argument field contains a reverse-path and may contain optional parameters. In general, the MAIL command ...
... destination mailbox), the SMTP server inserts it into the destination mailbox ...
... to this rule would arise if the message body were passed to the originating SMTP-sender with a final "line" that did not end in <CRLF ...
... sender with a final "line" that did not end in <CRLF>; in that case, the originating SMTP system MUST either reject the message as invalid or add <CRLF> in order to have the receiving ...
... CRLF> in order to have the receiving SMTP server recognize the "end of data" condition. ...
... UNIX systems, has proven to cause more interoperability problems than it solves, and SMTP server systems MUST NOT do this, even in the name of improved robustness. In particular, the sequence "<LF>.<LF ...
... receiver MUST send an OK reply. If the processing fails the receiver MUST send a failure reply. The SMTP model does not allow for partial failures at this point: either the message is accepted by the server for delivery ...
... When the SMTP server accepts a message either for relaying or for final delivery, it inserts a trace ...
... session, after an end-of-data indicator has been sent and acknowledged, or immediately before a QUIT. An SMTP server MUST NOT close the connection as the result of receiving ...
... There are circumstances, contrary to the intent of this specification, in which an SMTP server may receive an indication that the underlying TCP connection has been closed or reset. To preserve ...
... TCP connection has been closed or reset. To preserve the robustness of the mail system, SMTP servers SHOULD be prepared for this condition and SHOULD treat it as if a QUIT had been received before the connection ...
... SMTP servers SHOULD support HELP without arguments and MAY support it with arguments. ...
... Systems MUST NOT define mailboxes in such a way as to require the use in SMTP of non-ASCII characters (octets with the high order bit set ...
... characters outside the set of alphas, digits, and hyphen MUST NOT appear in domain name labels for SMTP clients or servers. In particular, the underscore character is not permitted. SMTP servers ...
... SMTP clients or servers. In particular, the underscore character is not permitted. SMTP servers that receive a command in which invalid character codes have been employed, and for which there are no other reasons for rejection, ...
... transactions MUST first be initialized by the use of the EHLO command. An SMTP server SHOULD accept commands for non-mail transactions (e.g., VRFY or EXPN) ...
... session. If it is issued after the session begins, the SMTP server MUST clear all buffers and reset the state ...
... If the EHLO command is not acceptable to the SMTP server, 501, 500, or 502 failure replies MUST be returned as appropriate. The SMTP server MUST stay in the same state ...
... EHLO command is not acceptable to the SMTP server, 501, 500, or 502 failure replies MUST be returned as appropriate. The SMTP server MUST stay in the same state after transmitting these replies ...
... The SMTP client MUST, if possible, ensure that the domain parameter ...
... An SMTP server MAY verify that the domain name parameter in the EHLO command actually corresponds to the IP address ...
... during a session, or without previously initializing a session. SMTP servers SHOULD process these normally (that is, not return a 503 code) even if no EHLO command has yet been received; clients ...
... If the transaction beginning command argument is not acceptable, a 501 failure reply MUST be returned and the SMTP server MUST stay in the same state. If the commands in a transaction ...
... the degree that they cannot be processed by the server, a 503 failure reply MUST be returned and the SMTP server MUST stay in the same state. ...
... session, but SHOULD be used by the client SMTP to request connection closure, even when no session ...
... client (sending) and server (receiving) SMTP agents. An SMTP server that does not recognize such ...
... receiving) SMTP agents. An SMTP server that does not recognize such a command is expected to reply with "500 Command not recognized". An extended SMTP server ...
... SMTP server that does not recognize such a command is expected to reply with "500 Command not recognized". An extended SMTP server MAY list the feature names associated with these private commands in the response to the EHLO command. ...
... Commands sent or accepted by SMTP systems that do not start with "X" MUST conform to the requirements ...
... SMTP Replies ...
... Replies to SMTP commands serve to ensure the synchronization of requests and actions in the process of mail transfer and to guarantee ...
... synchronization of requests and actions in the process of mail transfer and to guarantee that the SMTP client always knows the state of the SMTP server ...
... SMTP client always knows the state of the SMTP server. Every command MUST generate exactly one reply. ...
... An SMTP reply consists of a three digit number (transmitted as three numeric characters) followed by some text unless specified otherwise in this document. The number is for use by automata to determine ...
... state to enter next; the text is for the human user. The three digits contain enough encoded information that the SMTP client need not examine the text and may either discard it or pass it on to the ...
... An SMTP server SHOULD send only the reply codes listed in this document. An SMTP server ...
... SMTP server SHOULD send only the reply codes listed in this document. An SMTP server SHOULD use the text shown in the examples whenever appropriate. ...
... An SMTP client MUST determine its actions only by the reply code, not ...
... reply code is considered part of the text. Whenever possible, a receiver- SMTP SHOULD test the first digit (severity indication) of the reply code. ...
... Standards-track specifications. Consequently, a sender-SMTP MUST be prepared to handle codes not specified in this document and MUST do so by interpreting the first digit only. ...
... The three digits of the reply each have a special significance. The first digit denotes whether the response is good, bad or incomplete. An unsophisticated SMTP client, or one that receives an unexpected code, will be able to determine its next action (proceed as planned, ...
... client, or one that receives an unexpected code, will be able to determine its next action (proceed as planned, redo, retrench, etc.) by examining this first digit. An SMTP client that wants to know approximately what kind of error occurred (e.g., ...
... The command has been accepted, but the requested action is being held in abeyance, pending confirmation of the information in this reply. The SMTP client should send another command specifying whether to continue or abort the action. Note: unextended SMTP ...
... SMTP client should send another command specifying whether to continue or abort the action. Note: unextended SMTP does not have any commands that allow this type of reply, and so does not have continue or abort commands ...
... The command has been accepted, but the requested action is being held in abeyance, pending receipt of further information. The SMTP client should send another command specifying this information. This reply is used in command sequence groups ...
... receiver- and sender-SMTP agents) must agree on the interpretation. Each reply in this category might have a different time value, but the SMTP ...
... SMTP agents) must agree on the interpretation. Each reply in this category might have a different time value, but the SMTP client is encouraged to try again. A rule of thumb to determine ...
... 5yz Permanent Negative Completion reply The command was not accepted and the requested action did not occur. The SMTP client is discouraged from repeating the exact request (in the same sequence). Even some "permanent" error conditions ...
... error conditions can be corrected, so the human user may want to direct the SMTP client to reinitiate the command sequence by direct action at some point in the future (e.g., after the spelling has ...
... For example, a command such as NOOP, whose successful execution does not offer the SMTP client any new information, will return a 250 reply. The reply is 502 when the command requests an unimplemented ...
... The reply text may be longer than a single line; in these cases the complete text must be marked so the SMTP client knows when it can stop reading the reply. This requires a special format to indicate a ...
... In many cases the SMTP client then simply needs to search for a line ...
... Or, in the case of a connection-opening response, "No SMTP service here" ...
... Transaction failed (Or, in the case of a connection-opening response, "No SMTP service here") ...
... reply code 502 (Command not implemented) SHOULD be returned in preference to other codes. 502 SHOULD be used when the command is actually recognized by the SMTP server, but not implemented. If the command is not recognized, code 500 SHOULD be returned. Extended SMTP systems MUST NOT list ...
... SHOULD be used when the command is actually recognized by the SMTP server, but not implemented. If the command is not recognized, code 500 SHOULD be returned. Extended SMTP systems MUST NOT list capabilities in response to EHLO for which they will return 502 (or ...
... When an SMTP server returns a positive completion status (2yz code) after the DATA command is completed with <CRLF>.<CRLF ...
... the sender of the original message (using the address in the SMTP MAIL command). ...
... When an SMTP server returns a permanent error status (5yz) code after the DATA command is completed with <CRLF ...
... CRLF>.<CRLF>, it MUST NOT make any subsequent attempt to deliver that message. The SMTP client retains responsibility for delivery ...
... non-delivery indication, just as a permanent failure would be interpreted. I.e., if the client SMTP successfully handles these conditions, the user will not receive such a reply. ...
... When an SMTP server returns a permanent error status (5yz) code after the DATA command is completely with <CRLF ...
... any subsequent attempt to deliver the message. As with temporary error status codes, the SMTP client retains responsibility for the message, but SHOULD not again attempt delivery ...
... success, and "E" for error. Since some servers may generate other replies under special circumstances, and to allow for future extension, SMTP clients SHOULD, when possible, interpret only the first digit of the reply and MUST be prepared to deal with ...
... unrecognized reply codes by interpreting the first digit only. Unless extended using the mechanisms described in section 2.2, SMTP servers MUST NOT transmit reply codes to an SMTP client ...
... Unless extended using the mechanisms described in section 2.2, SMTP servers MUST NOT transmit reply codes to an SMTP client that are other than three digits or that do not start ...
... These sequencing rules and, in principle, the codes themselves, can be extended or modified by SMTP extensions offered by the server and accepted (requested) by the client ...
... In addition to the codes listed below, any SMTP command can return any of the following codes if the corresponding unusual circumstances are encountered: ...
... When an SMTP server receives a message for delivery or further processing, it MUST insert trace ...
... The FROM field, which MUST be supplied in an SMTP environment, SHOULD contain both (1) the name of the source host as presented ...
... Internet mail program MUST NOT change a Received: line that was previously added to the message header. SMTP servers MUST prepend Received lines to messages; they MUST NOT change the order of existing lines or insert Received lines in any other location. ...
... As the Internet grows, comparability of Received fields is important for detecting problems, especially slow relays. SMTP servers that create Received fields SHOULD use explicit offsets in the dates ...
... When the delivery SMTP server makes the "final delivery" of a message, it inserts a return-path ...
... MAIL command. Here, final delivery means the message has left the SMTP environment. Normally, this would mean it had been delivered to the destination user or an associated mail drop, but in ...
... It is sometimes difficult for an SMTP server to determine whether or not it is making final delivery since forwarding or other operations ...
... A message-originating SMTP system SHOULD NOT send a message that already contains a Return-path header ...
... already contains a Return-path header. SMTP servers performing a relay function MUST NOT inspect the message data, and especially not ...
... Return-path headers are present. SMTP servers making final delivery MAY remove Return-path ...
... SHOULD be present when the message is delivered. Systems using RFC 822std11(->