Connected: An Internet Encyclopedia
RFC 821 - 4.3. SEQUENCING OF COMMANDS AND REPLIES

Top: Connected: An Internet Encyclopedia
Up: Requests For Comments
Up: RFC 821
Up: 4. THE SMTP SPECIFICATIONS
Prev: 4.2.2. NUMERIC ORDER LIST OF REPLY CODES
Next: 4.4. STATE DIAGRAMS

### 4.3. SEQUENCING OF COMMANDS AND REPLIES

The communication between the sender and receiver is intended to be an alternating dialogue, controlled by the sender. As such, the sender issues a command and the receiver responds with a reply. The sender must wait for this response before sending further commands.

One important reply is the connection greeting. Normally, a receiver will send a 220 "Service ready" reply when the connection is completed. The sender should wait for this greeting message before sending any commands.

Note: all the greeting type replies have the official name of the server host as the first word following the reply code.

For example,

                   220 <SP> USC-ISIF.ARPA <SP> Service ready <CRLF>

The table below lists alternative success and failure replies for each command. These must be strictly adhered to; a receiver may substitute text in the replies, but the meaning and action implied by the code numbers and by the specific command reply sequence cannot be altered.

COMMAND-REPLY SEQUENCES

Each command is listed with its possible replies. The prefixes used before the possible replies are "P" for preliminary (not used in SMTP), "I" for intermediate, "S" for success, "F" for failure, and "E" for error. The 421 reply (service not available, closing transmission channel) may be given to any command if the SMTP-receiver knows it must shut down. This listing forms the basis for the State Diagrams in Section 4.4.

                CONNECTION ESTABLISHMENT
                   S: 220
                   F: 421
                HELO
                   S: 250
                   E: 500, 501, 504, 421
                MAIL
                   S: 250
                   F: 552, 451, 452
                   E: 500, 501, 421

                RCPT
                   S: 250, 251
                   F: 550, 551, 552, 553, 450, 451, 452
                   E: 500, 501, 503, 421
                DATA
                   I: 354 -> data -> S: 250
                                     F: 552, 554, 451, 452
                   F: 451, 554
                   E: 500, 501, 503, 421
                RSET
                   S: 250
                   E: 500, 501, 504, 421
                SEND
                   S: 250
                   F: 552, 451, 452
                   E: 500, 501, 502, 421
                SOML
                   S: 250
                   F: 552, 451, 452
                   E: 500, 501, 502, 421
                SAML
                   S: 250
                   F: 552, 451, 452
                   E: 500, 501, 502, 421
                VRFY
                   S: 250, 251
                   F: 550, 551, 553
                   E: 500, 501, 502, 504, 421
                EXPN
                   S: 250
                   F: 550
                   E: 500, 501, 502, 504, 421
                HELP
                   S: 211, 214
                   E: 500, 501, 502, 504, 421
                NOOP
                   S: 250
                   E: 500, 421
                QUIT
                   S: 221
                   E: 500
                TURN
                   S: 250
                   F: 502
                   E: 500, 503

Next: 4.4. STATE DIAGRAMS

Connected: An Internet Encyclopedia
RFC 821 - 4.3. SEQUENCING OF COMMANDS AND REPLIES