Telnet Extended Options: List Option
A Telnet option that reserves option number 255 so the 256-entry option list can later be extended.
Postel, J. and J. Reynolds, "Telnet Extended Options: List Option", STD 32, RFC 861, DOI 10.17487/RFC0861, May 1983, <https://www.rfc-editor.org/info/rfc861>.
@misc{rfc861,
series = {Request for Comments},
number = 861,
howpublished = {RFC 861},
publisher = {RFC Editor},
doi = {10.17487/RFC0861},
url = {https://www.rfc-editor.org/info/rfc861},
author = {J. Postel and J. Reynolds},
title = {{Telnet Extended Options: List Option}},
pagetotal = 2,
year = 1983,
month = may,
} RFC text
Contents
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
§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.