⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc788.txt

📁 RFC 相关的技术文档
💻 TXT
📖 第 1 页 / 共 5 页
字号:
            will begin with a  return path line, followed by one or more            time stamp lines.  These lines will be followed by the mail            data header and body [2].  For example:               Return-Path: <@GHI,@DEF,@ABC,JOE@ABC>               Mail-From: GHI received by JKL at 27-Oct-81 15:27:39-PST               Mail-From: DEF received by GHI at 27-Oct-81 15:15:13-PST               Mail-From: ABC received by DEF at 27-Oct-81 15:01:59-PST               Date: 27-Oct-81 15:01:01-PST               From: JOE@ABC               Subject: Improved Mailing System Installed               To: SAM@JKL                              This is to inform you that ...            Special mention is needed of the response and further action            required when the processing following the end of mail data            indication is partially successful.  This could arise if            after accepting several recipients and the mail data, the            receiver-SMTP finds that the mail data can be successfully            delivered to some of the recipients, but it cannot be to            others (for example, due to mailbox space allocation            problems).  In such a situation, the response to the DATA            command must be an OK reply.  But, the receiver-SMTP must            compose and send an "undeliverable mail" notification            message to the originator of the message.  Either a single            notification which lists all of the recipients that failed            to get the message, or separate notification messages must            be sent for each failed recipient (see Example 7).  All            undeliverable mail notification messages are sent using the            MAIL command (even if they result from processing a SEND,            SOML, or SAML command).         SEND (SEND)            This command is used to initiate a mail transaction in which            the mail data is delivered to one or more terminals.  The            argument field contains a reverse-path.  This command is            successful if the message is delivered to the terminal.            The reverse-path consists of an optional list of hosts and            the sender mailbox.  When the list of hosts is present, it            is a "reverse" source route and indicates that the mail was            relayed through each host on the list (the first host in the            list was the most recent relay).  This list is used as a            source route to return non-delivery notices to the sender.Postel                                                         [Page 19]                                                                        November 1981                                                    RFC 788Simple Mail Transfer Protocol                                                       As each relay host adds itself to the beginning of the list,            it must use its name as known in the IPCE to which it is            relaying the mail rather than the IPCE from which the mail            came (if they are different).            This command clears the reverse-path buffer, the            forward-path buffer, and the mail data buffer; and inserts            the reverse-path information from this command into the            reverse-path buffer.         SEND OR MAIL (SOML)            This command is used to initiate a mail transaction in which            the mail data is delivered to one or more terminals or            mailboxes. For each recipient the mail data is delivered to            the recipient's terminal if the recipient is active on the            host (and accepting terminal messages), otherwise to the            recipient's mailbox.  The argument field contains a            reverse-path.  This command is successful if the message is            delivered to the terminal or the mailbox.            The reverse-path consists of an optional list of hosts and            the sender mailbox.  When the list of hosts is present, it            is a "reverse" source route and indicates that the mail was            relayed through each host on the list (the first host in the            list was the most recent relay).  This list is used as a            source route to return non-delivery notices to the sender.            As each relay host adds itself to the beginning of the list,            it must use its name as known in the IPCE to which it is            relaying the mail rather than the IPCE from which the mail            came (if they are different).            This command clears the reverse-path buffer, the            forward-path buffer, and the mail data buffer; and inserts            the reverse-path information from this command into the            reverse-path buffer.         SEND AND MAIL (SAML)            This command is used to initiate a mail transaction in which            the mail data is delivered to one or more terminals and            mailboxes. For each recipient the mail data is delivered to            the recipient's terminal if the recipient is active on the            host (and accepting terminal messages), and for all[Page 20]                                                         Postel                                                                        RFC 788                                                    November 1981                                           Simple Mail Transfer Protocol            recipients to the recipient's mailbox.  The argument field            contains a reverse-path.  This command is successful if the            message is delivered to the mailbox.            The reverse-path consists of an optional list of hosts and            the sender mailbox.  When the list of hosts is present, it            is a "reverse" source route and indicates that the mail was            relayed through each host on the list (the first host in the            list was the most recent relay).  This list is used as a            source route to return non-delivery notices to the sender.            As each relay host adds itself to the beginning of the list,            it must use its name as known in the IPCE to which it is            relaying the mail rather than the IPCE from which the mail            came (if they are different).            This command clears the reverse-path buffer, the            forward-path buffer, and the mail data buffer; and inserts            the reverse-path information from this command into the            reverse-path buffer.         RESET (RSET)            This command specifies that the current mail transaction is            to be aborted.  Any stored sender, recipients, and mail data            must be discarded, and all buffers and state tables cleared.            The receiver must send an OK reply.         VERIFY (VRFY)            This command asks the receiver to confirm that the argument            identifies a user.  If it is a user name, the full name of            the user (if known) and the fully specified mailbox are            returned.            This command has no effect on any of the reverse-path            buffer, the forward-path buffer, or the mail data buffer.         EXPAND (EXPN)            This command asks the receiver to confirm that the argument            identifies a mailing list, and if so, to return the            membership of that list.  The full name of the users (if            known) and the fully specified mailboxes are returned in a            multiline reply.Postel                                                         [Page 21]                                                                        November 1981                                                    RFC 788Simple Mail Transfer Protocol                                                       This command has no effect on any of the reverse-path            buffer, the forward-path buffer, or the mail data buffer.         HELP (HELP)            This command causes the receiver to send helpful information            to the sender of the HELP command.  The command may take an            argument (e.g., any command name) and return more specific            information as a response.            This command has no effect on any of the reverse-path            buffer, the forward-path buffer, or the mail data buffer.         NOOP (NOOP)            This command does not affect any parameters or previously            entered commands.  It specifies no action other than that            the receiver send an OK reply.            This command has no effect on any of the reverse-path            buffer, the forward-path buffer, or the mail data buffer.         QUIT (QUIT)            This command specifies that the receiver must send an OK            reply, and then close the transmission channel.            The receiver should not close the transmission channel until            it receives and replies to a QUIT command (even if there was            an error).  The sender should not close the transmission            channel until it send a QUIT command and receives the reply            (even if there was an error response to a previous command).            If the connection is closed prematurely the receiver should            act as if a RSET command had been received (canceling any            pending transaction, but not undoing any previously            completed transaction), the sender should act as if the            command or transaction in progress had received a temporary            error (4xx).         There are restrictions on the order in which these command may         be used.            The first command in a session must be the HELO command.            The HELO command may be used later in a session as well.[Page 22]                                                         Postel                                                                        RFC 788                                                    November 1981                                           Simple Mail Transfer Protocol            The NOOP, HELP, EXPN, and VRFY commands can be used at any            time during a session.            The MAIL, SEND, SOML, or SAML commands begin a mail            transaction.  Once started a mail transaction consists of            one of the transaction beginning commands, one or more RCPT            commands, and a DATA command, in that order.  A mail            transaction may be aborted by the RSET command.  There may            be zero or more transactions in a session.            The last command in a session must be the QUIT command.  The            QUIT command can not be used at any other time in a session.      4.1.2.  COMMAND SYNTAX         The commands consist of a command code followed by an argument         field.  Command codes are four alphabetic characters.  Upper         and lower case alphabetic characters are to be treated         identically.  Thus, any of the following may represent the mail         command:            MAIL    Mail    mail    MaIl    mAIl         This also applies to any symbols representing parameter values,         such as "TO" or "to" for the forward-path.  Command codes and         the argument fields are separated by one or more spaces.         However, within the reverse-path and forward-path arguments         case is important.  In particular, in some hosts the user         "smith" is different from the user "Smith".         The argument field consists of a variable length character         string ending with the character sequence <CRLF>.  The receiver         is to take no action until this sequence is received.         Square brackets denote an optional argument field.  If the         option is not taken, the appropriate default is implied.Postel                                                         [Page 23]                                                                        November 1981                                                    RFC 788Simple Mail Transfer Protocol                                                    The following are the SMTP commands:            HELO <SP> <host> <CRLF>            MAIL <SP> FROM:<reverse-path> <CRLF>            RCPT <SP> TO:<forward-path> <CRLF>            DATA <CRLF>            RSET <CRLF>            SEND <SP> FROM:<reverse-path> <CRLF>            SOML <SP> FROM:<reverse-path> <CRLF>            SAML <SP> FROM:<reverse-path> <CRLF>            VRFY <SP> <string> <CRLF>            EXPN <SP> <string> <CRLF>            HELP [<SP> <string>] <CRLF>            NOOP <CRLF>            QUIT <CRLF>[Page 24]                                                         Postel                                                                        RFC 788                                                    November 1981                                           Simple Mail Transfer Protocol         The syntax of the above argument fields (using BNF notation         where applicable) is given below.  The "..." notation indicates         that a field may be repeated one or more times.            <reverse-path> ::= <path>            <forward-path> ::= <path>            <path> ::= "<" ["@" <host> "," ...] <mailbox> ">"            <host> ::= <a> <string> | "#" <number> | "[" <dotnum> "]"            <mailbox> ::= <user> "@" <host>            <user> ::= <string>            <string> ::= <char> | <char> <string>            <char> ::= <c> | '\' <c> | '\' <s>            <dotnum> ::= <snum> "." <snum> "." <snum> "." <snum>            <number> ::= <d> | <d> <number>            <snum> ::= three digits representing a decimal integer value                      in the range 0 through 255            <a> ::= any one of the 52 alphabetic characters A through Z                      in upper case and a through z in lower case            <c> ::= any one of the 128 ASCII characters except                      <specials>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -