Network Working Group D. Borman
Request for Comments: 1571 Cray Research, Inc.
Updates: 1408 January 1994
Category: Informational
Telnet Environment Option Interoperability Issues
1. Overview
RFC 1408 [1], the specification for the Telnet Environment Option, specifies definitions for VAR and VALUE that are reversed from the BSD implementation of the Telnet Environment option. Since the BSD implementation was the reference implementation that the RFC was supposed to document, and is the base for many existing implementations, there exists an interoperability problem between implementations with conflicting definitions for VAR and VALUE.
2. Client Telnet: Parsing a SEND
The SEND suboption should only contain VAR and USERVAR commands. It should never contain a VALUE. If while parsing a SEND suboption, a VALUE is encountered, the client should assume that the server has reversed values for VAR and VALUE, and from that point on the client should reverse those values, both in parsing the rest of the SEND suboption, and when generating an IS or INFO suboption. If both VALUE and VAR commands are encountered, the SEND command is not well formed, and it is implementation dependent as to what will happen.
Telnet Working Group [Page 1]
RFC 1571 Environment Option Interoperability January 1994 3. Server Telnet: Parsing an IS or INFOThe IS or INFO in a suboption can only be legally followed by either a VAR or a USERVAR. If an IS or INFO is immediately followed by a VAR, then it can be assumed that the client has the correct definitions for VAR and VALUE. If the IS or INFO is immediately followed by a VALUE, then it can be assumed that the client has reversed definitions for VAR and VALUE, and from that point on the server should assume that the VALUE and VAR definitions are reversed.
Telnet Working Group [Page 2]
RFC 1571 Environment Option Interoperability January 1994
If things are still in doubt, the values of the VAR commands can be checked to see if they do indeed specify well known variables. If any of them do, then the client is probably using the correct definitions for VAR and VALUE. Otherwise, if any of the VALUEs contain well know variable names, then the client probably has reversed definitions for VAR and VALUE.
4. Client Summary
The SEND suboption contains only VAR and USERVAR commands.
5. Server Summary
IS/INFO is followed by VAR.
Telnet Working Group [Page 3]
RFC 1571 Environment Option Interoperability January 1994
References