RFC 571 UNKNOWN INTEROPERABILITY · BUG REPORT

TENEX FTP PROBLEM

A warning about line ending problems in Tenex.

On rfc-editor.org ↗
PUBLISHED
November 1973
AUTHORS
R. Braden
STREAM
Legacy
LINE ENDING CHARACTER USED BY TENEX
ASCII Unit Separator (31)
REQUIRED PROTOCOL LINE ENDING
Carriage Return and Line Feed (CR LF)
DOI
10.17487/RFC0571

RFC text

Original text · RFC Editor View on rfc-editor.org ↗
Network Working Group                                   Robert T. Braden
Request for Comments: 571                                       UCLA/CCN
NIC #18974                                             November 15, 1973


                           TENEX FTP PROBLEM

   Tenex users of FTP should beware of a problem in the current Tenex
   implementation which is likely to cause incorrect results when
   transferring files to a non-Tenex site.  Some Tenex programs create
   an ASCII US (Unit Separator) character as an end-of-line indicator,
   instead of CR LF.  The current Tenex FTP user implementation passes
   these US characters over the Network instead of translating them to
   CR LF as required by FTP protocol.  If the recipient is not a Tenex,
   he will not do anything special with these US characters and the line
   spacing will be lost. In the case of sending to CCN, we will treat it
   as a very long logical record and fold it into successive 360
   records.

   A circumvention is to pass the Tenex file through some Tenex program
   that does the necessary conversion before sending it over the
   Network.  We know that TECO will remove US's; there are probably
   other means.  Loading and saving the file with TECO will replace all
   US's with CR LF sequences.



















         [ This RFC was put into machine readable form for entry ]
         [ into the online RFC archives by Katsunori Tanaka 4/99 ]

AI ELI5

On this page
PROBLEMTenex programs mark line endings with ASCII Unit Separator characters, but the Tenex FTP implementation sent them over the network without conversion, breaking text on non-Tenex systems.
MECHANISMFTP protocol requires line endings to be sent as carriage return and line feed pairs, regardless of how the local system marks them.
THE WORKAROUNDRecipients on non-Tenex systems received files with corrupted line spacing. Users were advised to convert files through TECO before sending them.

§1The Problem

Tenex systems use an ASCII Unit Separator character to mark the end of lines in some files, instead of the standard carriage return and line feed. When users sent these files over FTP to non-Tenex computers, the FTP program did not translate these characters to the protocol-required carriage return and line feed pairs. Non-Tenex recipients would receive the files with no proper line breaks, making them unreadable or scrambled.

Tenex computers use a special character that other computers don't understand to end lines. When Tenex sent files through the network, it forgot to translate that character to what everyone else uses.

§2How It Affects File Transfer

When a Tenex file containing Unit Separator line endings is sent to a receiving system like CCN, the receiver treats the entire file as a very long logical record since it does not recognize the Unit Separators. On systems like the IBM 360, the file gets folded into successive records with incorrect groupings, destroying the file's structure.

The receiving computer thinks the entire file is one super-long line because it doesn't see where the lines should break.

§3The Workaround

Users can convert the file before sending it. The TECO editor, when used to load and save a Tenex file, automatically replaces all Unit Separator characters with proper carriage return and line feed sequences. Other Tenex programs that perform similar translation may also work for this purpose.

Loading the file into an editor and saving it again fixes the line ending problem.