Network Working Group Julie Sussman
RFC # 630 BBN
NIC # 30237 April 10,
1974 FTP Error Code Usage for More Reliable Mail Service
PURPOSE
A major hindrance to providing reliable mail service is the lack of
well-defined FTP error replies that would enable a mailing process to
decide how to handle a failure. New FTP error codes are currently in
the design stage, and a proposal will be announced soon. In the
interim, we can get some improvement by simply defining how we intend to
use the current FTP codes. The purpose of this RFC is to inform all
sites of how TENEX sites will use and interpret the codes starting in
the near future.
CURRENT CODE DEFINITIONS
The FTP error codes defined for failure to perform a file action
(including mail) are:
450 File not found
451 File access denied to you
452 Data connection closed
453 Insufficient storage
454 Cannot connect to your data socket
450,
451, and 453 are applicable to both the MAIL and MLFL commands,
while 452 and 454 are only meaningful for MLFL.
SHORTCOMING OF CURRENT DEFINITIONS
There are more possible causes of failure to deliver mail than the
ones defined above. Implementors of FTP servers thus had to make
arbitrary assignments of error conditions to defined codes. As a
result, although the text of the reply might distinguish these
conditions for the benefit of human users, the code doesn't distinguish
them for the benefit of processes.
The minimum distinction needed by the TENEX mail-sending processes
is between permanent and non-permanent failures. In the latter case,
the process will repeatedly try to deliver the mail for several days.
NEW DEFINITIONS FOR TENEX USE
The following changes will be installed at TENEX sites over the next
couple of months.
FTP SERVER
The TENEX FTP server will continue to use 452 and 454 as specified
for the MLFL command.
For MAIL and MLFL, it will send the other codes as follows:
450 Permanent failures due to the user addressed in the Mail or MLFL
command.
Examples: No such user; No mailbox for that user; Can't access file
(because net users can't write in that mailbox).
451 Permanent failures due to the message itself.
Example: Line sent over TELNET connection is too long (MAIL command
only).
453 Temporary failures
Examples: TELNET connection unexpectedly closed; Mailbox busy;
Unexpected local errors (such as failure to create scratch file).
MAILING PROCESSES
TENEX mailing processes currently interpret all the codes 450-454 as
meaning permanent failure. They will be changed to interpret 452, 453,
and 454 as temporary while leaving 450 and 451 permanent.
COMPATIBILITY WITH NON-TENEX SITES
These interpretations should not adversely affect the interaction of
TENEX and non-TENEX mail processes, since we are simply changing from
one arbitrary set of interpretations to another. Moreover:
--Our interpretation of 450-451 as permanent and 452-454 as temporary is
consistent with their original meanings.
--Our new choice of what codes to use for what failure is no farther
from the original meanings than our old choice was, and conveys more
information.