RFC 861 INTERNET STANDARD TELNET · OPTIONS · EXTENSIBILITY

Telnet Extended Options: List Option

A Telnet option that reserves option number 255 so the 256-entry option list can later be extended.

On rfc-editor.org ↗
PUBLISHED
May 1983
AUTHORS
J. Postel, J. Reynolds
STREAM
Legacy
OPTION CODE
EXTENDED-OPTIONS-LIST (EXOPL) = 255
EXTRA OPTIONS PROVIDED
another 256
SUBCOMMAND CODES
250-254
DOI
10.17487/RFC0861

RFC text

Contents
Original text · RFC Editor View on rfc-editor.org ↗
Network Working Group                                          J. Postel
Request for Comments: 861                                    J. Reynolds
                                                                     ISI
Obsoletes: NIC 16239                                            May 1983

                 TELNET EXTENDED OPTIONS - LIST OPTION


This RFC specifies a standard for the ARPA Internet community.  Hosts on
the ARPA Internet are expected to adopt and implement this standard.

1.  Command Name and Code

   EXTENDED-OPTIONS-LIST (EXOPL)     255

2.  Command Meanings

   IAC DO EXOPL

      The sender of this command REQUESTS that the receiver of this
      command begin negotiating, or confirms that the receiver of this
      command is expected to begin negotiating, TELNET options which are
      on the "Extended Options List".

   IAC WILL EXOPL

      The sender of this command requests permission to begin
      negotiating, or confirms that it will begin negotiating, TELNET
      options which are on the "Extended Options List".

   IAC WON'T EXOPL

      The sender of this command REFUSES to negotiate, or to continue
      negotiating, options on the "Extended Options List".

   IAC DON'T EXOPL

      The sender of this command DEMANDS that the receiver conduct no
      further negotiation of options on the "Extended Options List".

   IAC SB EXOPL <subcommand>

      The subcommand contains information required for the negotiation
      of an option of the "Extended Options List".  The format of the
      subcommand is discussed in section 5 below.

3.  Default

   WON'T EXOPL, DON'T EXOPL
      Negotiation of options on the "Extended Options List" is not
      permitted.


4.  Motivation for the Option

   Eventually, a 257th TELNET option will be needed.  This option will
   extend the option list for another 256 options in a manner which is
   easy to implement.  The option is proposed now, rather than later
   (probably much later), in order to reserve the option number (255).

5.  An Abstract Description of the Option

   The EXOPL option has five subcommand codes:  WILL, WON'T, DO, DON'T,
   and SB.  They have exactly the same meanings as the TELNET commands
   with the same names, and are used in exactly the same way.  For
   consistency, these subcommand codes will have the same values as the
   TELNET command codes (250-254).  Thus, the format for negotiating a
   specific option on the "Extended Options List" (once both parties
   have agreed to use it) is:

      IAC SB EXOPL DO/DON'T/WILL/WON'T/<option code> IAC SE

   Once both sides have agreed to use the specific option specified by
   <option code>, subnegotiation may be required.  In this case the
   format to be used is:

      IAC SB EXOPL SB <option code> <parameters> SE IAC SE

AI ELI5

On this page
PROBLEMTelnet option numbers fit in one byte, so eventually a 257th option will be needed.
MECHANISMThe EXTENDED-OPTIONS-LIST option (EXOPL, code 255) reserves that number now and defines subcommands that negotiate a second list of options inside Telnet subnegotiation.
WHY IT MATTERSNegotiating options on the Extended Options List is not permitted unless both sides agree to EXOPL, which is off by default.

§4Reserving Option 255

Eventually a 257th Telnet option will be needed. The EXTENDED-OPTIONS-LIST option (EXOPL) will extend the option list by another 256 options in a way that is easy to implement.

The RFC proposes it now, rather than much later, in order to reserve the option number 255.

Telnet only has room for so many features. This saves a spot now so it can add many more later.

§2Turning Extended Options On

EXOPL is negotiated with the usual commands. IAC DO EXOPL requests, or confirms, that the receiver will negotiate options on the Extended Options List. IAC WILL EXOPL asks permission to do so, or confirms it will. IAC WON'T EXOPL refuses to negotiate or continue, and IAC DON'T EXOPL demands that no further negotiation of such options take place.

The default is WON'T EXOPL and DON'T EXOPL: negotiation of options on the Extended Options List is not permitted.

Both computers must say yes before they can use the second page of features. Without a yes, they stay on page one.

§5Subcommand Format

EXOPL has five subcommand codes: WILL, WON'T, DO, DON'T and SB. They mean exactly what the Telnet commands of those names mean. For consistency they use the same values as the Telnet command codes, 250-254.

Once both sides have agreed to EXOPL, negotiating a specific extended option looks like IAC SB EXOPL DO/DON'T/WILL/WON'T/<option code> IAC SE. If that option then needs subnegotiation, the format is IAC SB EXOPL SB <option code> <parameters> SE IAC SE.

The extra features are asked for in a message inside another message, like a note tucked in an envelope.