rfc1184.txt
来自「RFC 的详细文档!」· 文本 代码 · 共 1,291 行 · 第 1/4 页
TXT
1,291 行
| | | | ^ | | | | | | |
| | | v | v | | | v | |
| | | / \ | *********** | | ########### | |
| | | / \ | * Send * | | # Switch # | |
| ********** |Yes/ Same as \ | * 0,VAL,0 * | | # to # | |
| * Change * +--< current? > | *********** | | # default # | |
| * to new * \ / | v | ########### | |
| * value * \ / | *********** | | |
| ********** \ / | * Send * v | |
| ^ |No | * 0,DEF,0 * ######### | |
| |Yes v | *********** # Send #--+ |
| / \ / \ | # SPC-A # |
| / \ / \ | ######### |
| / Is ACK \ Yes/ Same \ | ^ |
|< bit set? ><-< level as > | | |
| \ / \ current?/ | ########### |
| \ / \ / | # Get #<--+
| \ / \ / +-+---+ # 0,VAL,0 #
| |No |No | Set | ###########
| +--------------+ | ACK |
| v | bit | * - Client side only
| / \ +-----+ # - Server side only
| +------+ / \ ^
| | Send | No / Do we \ Yes|
+---| SPC1 |<---< agree? >---+
+------+ \ /
\ /
\ /
SPC0 Initial setting for a special character
SPC1 A changed special character < SPC0
SPC-A All current special character settings
VAL SLC_VALUE level
DEF SLC_DEFAULT level
Levels: DEFAULT, VALUE, CANT_CHANGE, NOSUPPORT
Flags: ACK
Telnet Working Group [Page 18]
RFC 1184 Telnet Linemode Option October 1990
Receive Response
------- --------
f,SLC_DEFAULT,x f,SLC_VALUE,v
f,SLC_CANTCHANGE,v
f,SLC_NOSUPPORT,x
f,SLC_VALUE,v f,SLC_ACK|SLC_VALUE,v
f,SLC_CANTCHANGE,w
f,SLC_NOSUPPORT,x
f,SLC_CANTCHANGE,v f,SLC_ACK|SLC_CANTCHANGE,v
f,SLC_NOSUPPORT,x
f,SLC_NOSUPPORT,x f,SLC_ACK|SLC_NOSUPPORT,x
x,SLC_ACK|x,x no response
5.10 Examples of a connection
In these examples, the symbolic names are used rather than the actual
values, to make them readable. When two or more symbolic names are
joined by a |, it means that the actual value will be the logical
"or" of the values of the symbolic names. In the interest of
clarity, for these examples the leading IAC and IAC SB sequences, and
the trailing IAC SE sequences have been omitted. Also, the SLC_
prefix has been left off where ever it would normally occur.
CLIENT SERVER
DO TOGGLE-FLOW-CONTROL
DO LINEMODE
WILL TOGGLE-FLOW-CONTROL
WILL LINEMODE
[ Subnegotiation may now proceed in both directions. The client
sends of the list of special characters. ]
LINEMODE SLC SYNCH DEFAULT 0 IP
VALUE|FLUSHIN|FLUSHOUT 3 AO
VALUE 15 AYT DEFAULT 0 ABORT
VALUE|FLUSHIN|FLUSHOUT 28 EOF
VALUE 4 SUSP VALUE|FLUSHIN 26 EC
VALUE 127 EL VALUE 21 EW VALUE
23 RP VALUE 18 LNEXT VALUE 22
XON VALUE 17 XOFF VALUE 19
[ Now that linemode is enabled, the server sets the initial mode,
and acknowledges the special characters. ]
LINEMODE MODE EDIT
LINEMODE SLC SYNCH NOSUPPORT 0
IP VALUE|FLUSHIN|FLUSHOUT|ACK 3
Telnet Working Group [Page 19]
RFC 1184 Telnet Linemode Option October 1990
AO NOSUPPORT 0 AYT NOSUPPORT 0
ABORT VALUE|FLUSHIN|FLUSHOUT|ACK
28 EOF VALUE|ACK 4 SUSP NOSUP-
PORT 0 EC VALUE|ACK 127 EL
VALUE|ACK 21 EW VALUE|ACK 23 RP
VALUE|ACK 18 LNEXT VALUE|ACK 22
XON VALUE|ACK 17 XOFF VALUE|ACK
19
[ The client gets the mode and ack of the special characters, and
acks the mode and any special characters that the server
changed. ]
LINEMODE MODE EDIT|MODE_ACK
LINEMODE SLC SYNCH NOSUPPORT|ACK
0 AO NOSUPPORT|ACK 0 AYT|ACK
NOSUPPORT 0 SUSP NOSUPPORT|ACK 0
"Login:"
"my_account"
[ Turn off echo to the user. ]
WILL ECHO
DO ECHO
"Password:"
"my_password"
[ Turn back on echo to the user. ]
WONT ECHO
DONT ECHO
[ User does some stuff, and then runs an application that wants
to use single character mode, doing its own echoing of
characters, but keep signal trapping on. ]
WILL ECHO
DO ECHO
LINEMODE MODE TRAPSIG
LINEMODE MODE TRAPSIG|MODE_ACK
[ Application finishes ]
WONT ECHO
DONT ECHO
LINEMODE MODE EDIT|TRAPSIG
LINEMODE MODE
EDIT|TRAPSIG|MODE_ACK
[ Another application, that wants full control of everything. ]
WILL ECHO
DO ECHO
LINEMODE MODE 0
LINEMODE MODE 0|MODE_ACK
[ Application finishes ]
WONT ECHO
DONT ECHO
LINEMODE MODE EDIT|TRAPSIG
Telnet Working Group [Page 20]
RFC 1184 Telnet Linemode Option October 1990
LINEMODE MODE
EDIT|TRAPSIG|MODE_ACK
[ The user changes his erase character to ^H. ]
LINEMODE SLC EC VALUE 8
LINEMODE SLC EC VALUE|ACK 8
[ The user decides to revert to all the original client side
special characters. ]
LINEMODE SLC SYNCH DEFAULT 0 IP
VALUE|FLUSHIN|FLUSHOUT 3 AO
VALUE 15 AYT DEFAULT 0 ABORT
VALUE|FLUSHIN|FLUSHOUT 28 EOF
VALUE 4 SUSP VALUE|FLUSHIN 26 EC
VALUE 127 EL VALUE 21 EW VALUE
23 RP VALUE 18 LNEXT VALUE 22
XON VALUE 17 XOFF VALUE 19
LINEMODE SLC SYNCH NOSUPPORT 0
AO NOSUPPORT 15 AYT NOSUPPORT 0
SUSP NOSUPPORT|FLUSHIN 26 EC
VALUE|ACK 127 EW VALUE|ACK 23 RP
VALUE|ACK 18 LNEXT VALUE|ACK 22
XON VALUE|ACK 17 XOFF VALUE|ACK
19
LINEMODE SLC SYNCH NOSUPPORT|ACK
0 AO NOSUPPORT|ACK 15 AYT
NOSUPPORT|ACK 0 SUSP
NOSUPPORT|ACK|FLUSHIN 26
[ The user decides to import the remote sides default special
characters. ]
LINEMODE SLC 0 DEFAULT 0
LINEMODE SLC IP
VALUE|FLUSHIN|FLUSHOUT 3 ABORT
VALUE|FLUSHIN|FLUSHOUT 28 EOF
VALUE 4 EC VALUE 127 EL VALUE 21
[ Since these are the same as the current local settings, no
response is generated. ]
[ This next example is what would happen if an editor was fired
up, that wanted to let the client side do the echoing and
buffering of characters, but did not want it to do any line
editing, and only forward the data when got a control
character. Note that we have preceded all the the 0377s
in the forward mask with an IAC. ]
LINEMODE MODE 0
LINEMODE DO FORWARDMASK IAC 0377
IAC 0377 IAC 0377 IAC 0377 0 0 0
0 0 0 0 0 0 0 0 01
LINEMODE MODE 0
LINEMODE WILL FORWARDMASK
[ Application runs to completion, and then things are to be set
Telnet Working Group [Page 21]
RFC 1184 Telnet Linemode Option October 1990
back to what they were before. ]
LINEMODE MODE EDIT|TRAPSIG
LINEMODE DONT FORWARDMASK
LINEMODE MODE EDIT|TRAPSIG
LINEMODE WONT FORWARDMASK
6. Other Telnet options and RFCs
The following is a list of RFCs for various Telnet options that
should be supported along with LINEMODE.
1. Postel, J. and Reynolds, J., "TELNET PROTOCOL SPECIFICATION",
RFC 854, ISI, May 1983.
2. Postel, J. and Reynolds, J., "TELNET OPTION SPECIFICATIONS",
RFC 855, ISI, May 1983.
3. Postel, J. and Reynolds, J., "TELNET BINARY TRANSMISSION",
RFC 856, ISI, May 1983.
4. Postel, J. and Reynolds, J., "TELNET ECHO OPTION", RFC 857,
ISI, May 1983.
5. Postel, J. and Reynolds, J., "TELNET SUPRESS GO AHEAD OPTION",
RFC 858, ISI, May 1983.
6. Postel, J. and Reynolds, J., "TELNET TIMING MARK OPTION",
RFC 860, ISI, May 1983.
7. VanBokkeln, J., "Telnet Terminal-Type Option", RFC 1091,
FTP Software, Inc., February 1989.
8. Waitzman, D., "Telnet Window Size Option", RFC 1073, BBN STC,
October 1988.
9. Hedrick, C., "Telnet Remote Flow Control Option", RFC 1080,
Rutgers University, November, 1988.
10. Hedrick, C., "Telnet Terminal Speed Option", RFC 1079, Rutgers
University, December, 1988.
The following is a list of RFCs that need not be supported for
LINEMODE, but which would enhance any TELNET implementation.
11. Postel, J. and Reynolds, J., "TELNET STATUS OPTION", RFC 859,
ISI, May 1983.
12. Postel, J. and Reynolds, J., "TELNET END OF RECORD OPTION",
Telnet Working Group [Page 22]
RFC 1184 Telnet Linemode Option October 1990
RFC 885, ISI, December 1983.
13. Silverman, S., "OUTPUT MARKING TELNET OPTION", RFC 933,
MITRE-Washington, January 1985.
14. Marcy, G., "Telnet X Display Location Option", RFC 1096,
Carnegie Mellon University, March 1989.
Security Consideratiions
Security issues are not discussed in this memo.
Author's Address
David A. Borman
Cray Research Inc.
655F Lone Oak Drive
Eagan, MN 55123
Phone: (612) 452-6650
EMail: dab@CRAY.COM
IETF Telnet WG Mailing List: telnet-ietf@CRAY.COM
Telnet Working Group [Page 23]
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?