RFC 278
Revision of the Mail Box Protocol
REVISION OF THE MAIL BOX PROTOCOL π
Okay bestie, let's start with the title block π This is RFC 278 (also known as NWG/RFC# 278 and NIC 8056), a Request for Comments from the Network Working Group, dated 17-Nov-1971 β¨ It's filed under categories A.5 and O.7, and it obsoletes RFC 221 and NIC 7612 π¦ Those are the earlier Mail Box Protocol docs, so this one is the glow-up.
The squad behind it: Abhay Bhushan (MIT-DMCG), Bob Braden (UCLA-CCN), Eric Harslem (RAND), John Heafner (RAND), Alex McKenzie (BBN-NET), John Melvin (SRI-ARC), Bob Sundberg (HARV), Dick Watson (SRI-ARC), and Jim White (UCSB) π«Ά
The file transfer committee met to talk about the Mail Box Protocol from RFC 221 (NIC 7612). The potential was confirmed and a couple of changes were suggested π₯ We'll go through the changes first, then restate the whole protocol.
CHANGES π
- The Mail Box Protocol is only to allow ASCII strings of text formatted for a network standard line printer, rather than allowing other data types.
- A new command is to be added to the File Transfer Protocol called
"Append With Create", which appends to a file if the file exists, and creates a file if it does not exist π§ - The standard path name for the mailbox is to be, using conventional metalanguage symbols:
"MAIL" <separator> ("PRINTER"/<ident>)
separator is the ASCII GS, octal 035. Here's what the above means:
<ident>is a NIC IDENT πΈ"MAIL" <separator> "PRINTER"would be interpreted by the receiving site as meaning Append With Create the transmitted file to a bulk mail file to be printed, or directly output it to a printer π¨οΈ"MAIL" <separator> <ident>would be interpreted to mean either:- The same as
"MAIL" <separator> "PRINTER", i.e., ignore<ident>, or - Append With Create the following file to a file specifically for the person designated by
<ident>, for either online access or printing or both π
- The same as
Delivering Mail to TIPs π
The problem of delivering mail to TIPs came up too π Right now TIPs only support the Telnet Protocol, but the plan is to support the Data Transfer Protocol as well. TIPs will have an ASCII line printer available as an optional device. People who want to send a mail item to a TIP with a printer can open a standard published socket and transmit to it with the Telnet Protocol now, and later with the Data Transfer Protocol too.
The NIC doesn't plan to do automatic network delivery to TIPs. Messages to people using TIPs can be sent through the NIC, and they'll be delivered like everyone else's, straight to the person's initial file at the NIC. The TIP user can read the item online, or get a hardcopy at their terminal with the Output Device Teletype command of NLS πβ¨
MAIL BOX PROTOCOL π¬
The Mail Box Protocol uses the established network conventions, specifically the Network Control Program, Initial Connection Protocol, Data Transfer Protocol, and File Transfer Protocol (as described in current Network Protocols, NIC 7104) π
The transmission is to be Network ASCII. The standard receiving mail printer is assumed to have a print line 72 characters wide, and a page of 66 lines. The new line convention will be carriage return (Hex per the Telnet Protocol, RFC 158, NIC 6768. The standard printer will accept the form feed character (Hex '0C') (Octal '014') as meaning move paper to the top of a new page π
It's the sender's responsibility to control the length of the print line and page. If more than 72 characters per line are sent, or if more than 66 lines are sent without a form feed, then the receiving site can handle those situations however works for them. These conventions can be changed by control codes, as described below π
At the head of the message or document, there is to be two copies of an initial address string, each terminated by a form feed. The address string contains the sender's name and address, and the receiver's name and address, formatted in some reasonable, easy-to-read way so a clerk can read it and distribute the item. Comments can also be included in the address string. The two copies exist so one is readable from a fan fold paper stack without effort π
The reason for the two copies is so the clerk can read the top one straight off the fan fold stack. Main character energy π
Initial Connection π
Initial Connection will be as per the Official Initial Connection Protocol, Document #2, NIC 7101, to the standard File Transfer socket #3.
File Transfer π
The mail item (file) gets transferred according to the File Transfer Protocol.
As per the File Transfer Protocol, a file (mail item) can be sent in more than one data transaction, as defined in the Data Transfer Protocol. End of file is indicated by the file separator (as defined in the Data Transfer Protocol), or by closing the connection π¦
Order of Transactions π
The only basic operation required is an Append With Create:
Append With Create Request
(Mailer) User --------------------> Server (Mail Box)
<File - data>
-------------------->
End of File indication
-------------------->
Acknowledge
<--------------------
The data type default is network ASCII. The standard line printer default is as defined above. Other control transactions can be used too π
CONTROL TRANSACTIONS TO BE USED ποΈ
OP CODE
Hex Octal
09 011 Error or unsuccessful terminate
0A 012 Acknowledge or successful terminate
05 005 Append With Create request (add to
existing file or create file if
none exists)
5A 132 Change printer control settings
ERROR CODES π¨
All error codes defined in the file Transfer Protocol could be returned π
PRINTER CONTROL CODES π¨οΈ
Hex Octal
D1 321 Meaning: Set line width to 72 characters
D2 322 Meaning: Use the full width of your printer
03 323 Meaning: Set page size to 66 line
04 324 Meaning: Set page size to infinite
Other virtual printer control codes can be added in the future πΈ Other classes of control codes can be added as the need arises β
[ This RFC was put into machine readable form for entry ]
[ into the online RFC archives by BBN Corp. under the ]
[ direction of Alex McKenzie. 12/96 ]
π¦ where this page comes from
- ietf: rfc278 1971-11
- π girlified by claude-haiku-5-5 on : a language model's rewrite of the original, under its terms