DCW3 13-NOV-73 11:26 20196 TELNET Output Line Width Option TELNET Output Line Width Option 1 Command name and code. 1a NAOL 8 (Negotiate About Output Line-width) 1a1 Command meanings 1b In the following, we are discussing a simplex connection, one half of a full duplex TELNET connection. On the simplex connection under discussion, by definition data passes from the data sender to the data receiver. If we consider the example of a computer transmitting data over a connection to a terminal where the data is printed, then the computer is the data sender and the the terminal is the data receiver. Continuing to use this example, the NAOL option could be used to negotiate the line width to be used when printing lines from the computer on the terminal. To negotiate line width on the other half of the TELNET connection the parties involved reverse their data sender and data receiver roles; this can be done unambiguously as the sender of a DO or DON'T NAOL command can only be the data sender, thus defining the half of the TELNET connection under discussion, and the sender of a WILL or WON'T NAOL command can only be the data receiver. 1b1 IAC DO NAOL The data sender requests or agrees to negotiate about output line width with the data receiver. In the case where agreement has been reached and in the absence of further subnegotiations, the data receiver alone is assumed to be handling output line width considerations. 1b2 IAC DON'T NAOL The data sender refused to negotiate about output line width with the data receiver, or demands a return to the unnegotiated default mode. 1b3 IAC WILL NAOL The data receiver requests or agrees to negotiate about output line width with the data sender. In the case where agreement has been reached and in the absence of further subnegotiations, the data receiver alone is assumed to be handling output line width considerations. 1b4 1 DCW3 13-NOV-73 11:26 20196 TELNET Output Line Width Option IAC WON'T NAOL The data receiver refuses to negotiate about output line width, or demands a return to the unnegotiated default mode. 1b5 IAC SB NAOL DS <8 bit value> IAC SE The data sender specifies, with the 8 bit value, which party should handle output line width considerations and how. The code for DS is 1. 1b6 IAC SB NAOL DR <8 bit value> IAC SE The data receiver specifies, with the 8 bit value, which party should handle output line width considerations and how. The code for DR is 0. 1b7 Default 1c DON'T NAOL In the default absence of 1c1 WON'T NAOL negotiation concerning which party, data sender or data receiver, is handling output line width considerations, neither party is required to handle line width consideration and neither party is prohibited from handling line width consideration but it is appropriate if at least the data receiver handles line width considerations albeit primitively. 1c2 Motivation for the Option 1d There appear to be four cases in which it is useful for the party at one end of a TELNET connection to communicate with the other party about the output line width: 1d1 (a) the sender may wish the receiver to use its local knowledge of the printer width to properly handle the line width; 1d1a (b) the receiver may wish the sender to use its local knowledge of the data being sent to properly handle the line width; 1d1b (c) the sender may wish to use its local knowledge of the data being sent to instruct the receiver in the proper handling of the line width; and 1d1c 2 DCW3 13-NOV-73 11:26 20196 TELNET Output Line Width Option (d) the receiver may wish to use its local knowledge of the printer width to instruct the sender in the proper handling of the line width. 1d1d An example of proper handling of the line length is for the receiver to "fold" lines sent by the sender so that the lines fit on the printer page. Another example of proper handling of the line length might be not folding lines even though they overflow the printer page, as that is what the user desires. 1d2 Description of the Option 1e The data sender and data receiver use the 8 bit value along with the DS and DR SB commands as follows: 1e1 8 bit value Meaning 1e2 0 command sender suggests he alone will handle output line-width considerations for the connection. 1e3 1 to 253 command sender suggests other party alone should handle output line-width considerations but suggests line width should be value given, in characters. 1e4 254 command sender suggests other party alone should handle output line-width considerations but suggests line width should be considered infinity. 1e5 255 command sender suggests other party alone should handle output line-width considerations and suggests nothing about how it should be done. 1e6 The guiding rules are that 1f (1) if neither data receiver or data sender wants to handle output line-width considerations, the data receiver must do it, and 1f1 (2) if both data receiver or data sender want to handle output line-width considerations, the data sender gets to do it. 1f2 3 DCW3 13-NOV-73 11:26 20196 TELNET Output Line Width Option The reasoning for the former rule is that if neither want to do it, then the default in the NAOL option dominates. If both want to do it, the sender, who is presumed to have special knowledge about the data, should be allowed to do it, taking into account any suggestions the receiver makes. 1g Some sample negotiations are: 1h no subnegotiations data receiver handles output line-width considerations 1h1 IAC SB NAOL DS 132 IAC SE data sender suggests data 1h2 IAC SB NAOL DR 0 IAC SE receiver handle output line-width consideration data with suggested line width of 132; receiver agrees. 1h3 IAC SB NAOL DR 255 I AC SE data receiver suggests data 1h4 IAC SB NAOL DS 0 IAC SE sender handle line-width considerations; sender refuses. 1h5 IAC SB NAOL DS 0 IAC SE data sender wants to handle 1h6 IAC SB NAOL DR 72 IAC SE line-width considerations; receiver agrees but notifies the sender the line printer only has 72 columns. 1h7 As with all option negotiation, neither party should suggest a state already in effect except to refuse to negotiate; changes should be acknowledged; and once refused, an option should not be resuggested until "something changes" (e.g., another process starts). 1i At any time either party can disable further negotiation by giving the appropriate WON'T NAOL or DON'T NAOL command. 1j 4 DCW3 13-NOV-73 11:26 20196 TELNET Output Line Width Option (J20196) 13-NOV-73 11:26; Title: Author(s): David C. Walden/DCW3; Distribution: /NSAG TLG JBN MLK DCW3 AAM; Keywords: Protocol Telnet; Sub-Collections: NIC NSAG; Clerk: JBP ;