Network Working Group Brian Harvey Request for Comments: 686 SU-AI NIC 32481 10 May 1975 References: 354, 385, 630, 542, 640.Leaving Well Enough Alone
Harvey [Page 1]
RFC 686 Leaving Well Enough Alone May 1975
3. FTP-2 approves of the Network Virtual File System concept even though it doesn't actually implement it. It seems to me that the NVFS notion is full of pitfalls, the least of which is the problem of incompatibilities in filename syntax. (For example, one would like to be able to do random access over the network, which requires that different systems find a way to accommodate each other's rules about record sizes and so on.) In any case, FTP-2 doesn't really use NVFS and I mention it here only because RFC 542 does.
Harvey [Page 2]
RFC 686 Leaving Well Enough Alone May 1975
7. FTP-2 is available online and FTP-1 isn't, so new hosts can't find out how to do it. Aargh!!! What a reason for doing anything! Surely it would be less costly for someone to type it in again than for everyone to reprogram. Meanwhile these new hosts can ask Jon or Geoff or Bobby or even me for help in getting FTP up.
Harvey [Page 3]
RFC 686 Leaving Well Enough Alone May 1975
1. It is almost true that an FTP user program can understand reply codes by the following simple algorithm:
Harvey [Page 4]
RFC 686 Leaving Well Enough Alone May 1975
instead. (It seems to me, by the way, that 050 and 030 aren't good enough as response to HELP since they "constitute neither a positive nor a negative acknowledgment" of the HELP command and thus don't tell the user program when it ought to ask the human user what to do next.) I suggest that despite the protocol, a 200 response be given by all servers at the end of whatever other HELP it gives as of, let's say, June 1. The alternatives are either to let the current rather chaotic situation continue forever while waiting for FTP-2, or to try to standardize everyone on a multi- line 1xx for both HELP and STAT. I'm against changing STAT, which works perfectly for everyone as far as I can tell, and it should be clear that I'm against waiting for FTP-2. Unfortunately there is no real mechanism for "officially" adopting my plan, but I bet if TENEX does it on June 1 the rest of the world will come along.
Harvey [Page 5]
RFC 686 Leaving Well Enough Alone May 1975
a. The 3xx category is used uniformly for "positive intermediate replies" where further negotiation in the Telnet connection is required, as for RNFR. I'm afraid this one can't be changed without affecting existing user programs. (One of my goals here is to enable exiting user programs to work while some servers continue as now and others adopt the suggestions I make below.) However, although this 3xx idea is logically pleasing, it is not really necessary for a simple-minded user program to be able to interpret replies. The only really new 3xx in RFC 640 is the 350 code for RNFR. But this would only be a real improvement for the user program if there were also a 2xx code which might be returned after RNFR, which is not the case. 640 also abolishes the 300 initial connection message with 220, but again there is clearly no conflict here.
Harvey [Page 6]
RFC 686 Leaving Well Enough Alone May 1975
d. The use of the second digit to indicate the type of message. (The proposed division is not totally clean; for example, why is 150 ("file status okay; about to open data connection") considered to be more about the file system than about data connection?) This can easily be done, since the second digit is not currently important to any user process-- the TENEX mailer is, in this plan, already due for modification because of (c). Since this is mostly an aesthetic point, I'm hesitant to do it if it would be difficult for anyone. In particular, I would want to leave the 25x messages alone, in case some user programs distinguish these. This is especially likely for the ones which are entirely meant for the program: 251 and 255. Therefore I propose that if this idea is adopted in FTP-1 the meanings of x2x and x5x be interchanged. This proposal is reflected in the specific list below.
Harvey [Page 7]
RFC 686 Leaving Well Enough Alone May 1975
4. The STAT command with no argument is considered a request for a directory listing for the current working directory, except that it may be given along with TELNET SYNCH while a transfer is in progress, in which case it is a request for the status of that transfer. (Everyone seems to do the first part of this. I'm not sure if anyone actually implements the second. This is just getting the protocol to agree with reality.) The reply to a STAT command should be zero or more 1xx messages followed by a 200.
Harvey [Page 8]
RFC 686 Leaving Well Enough Alone May 1975
[ This RFC was put into machine readable form for entry ]