telnetd
Hurricane Electric Internet Services
NAME
telnetd - DARPA TELNET protocol server
SYNOPSIS
/etc/telnetd [-debug [port]] [-l] [-L login_program] [-D
options] [-D report] [-D exercise] [-D netdata] [-D pty-
data]
DESCRIPTION
Telnetd is a server which supports the DARPA standard TEL-
NET virtual terminal protocol. Telnetd is invoked by the
internet server (see inetd(8)), normally for requests to
connect to the TELNET port as indicated by the /etc/ser-
vices file (see services(5)). If the -debug may be used,
to start up telnetd manually, instead of through inetd(8).
If started up this way, port may be specified to run tel-
netd on an alternate TCP port number.
The -D option may be used for debugging purposes. This
allows telnet to print out debugging information to the
connection, allowing the user to see what telnetd is
doing. There are several modifiers: options prints infor-
mation about the negotiation of TELNET options, report
prints the options information, plus some additional
information about what processing is going on, netdata
displays the data stream received by telnetd, ptydata dis-
plays data written to the pty, and exercise has not been
implemented yet.
Telnetd operates by allocating a pseudo-terminal device
(see pty(4)) for a client, then creating a login process
which has the slave side of the pseudo-terminal as stdin,
stdout, and stderr. Telnetd manipulates the master side
of the pseudo-terminal, implementing the TELNET protocol
and passing characters between the remote client and the
login process.
When a TELNET session is started up, telnetd sends TELNET
options to the client side indicating a willingness to do
remote echo of characters, to suppress go ahead, to do
remote flow control, and to receive terminal type informa-
tion, terminal speed information, and window size informa-
tion from the remote client. If the remote client is
willing, the remote terminal type is propagated in the
environment of the created login process. The pseudo-ter-
minal allocated to the client is configured to operate in
"cooked" mode, and with XTABS and CRMOD enabled (see
tty(4)).
Telnetd is willing to do: echo, binary, suppress go ahead,
and timing mark. Telnetd is willing to have the remote
client do: linemode, binary, terminal type, terminal
speed, window size, toggle flow control, environment, X
display location, and suppress go ahead.
If the file /etc/issue.net is present, telnetd will show
its contents before the login prompt of a telnet session
(see issue.net(5)).
SEE ALSO
telnet(1), issue.net(5)
BUGS
Some TELNET commands are only partially implemented.
Because of bugs in the original 4.2 BSD telnet(1), telnetd
performs some dubious protocol exchanges to try to dis-
cover if the remote client is, in fact, a 4.2 BSD tel-
net(1).
Binary mode has no common interpretation except between
similar operating systems (Unix in this case).
The terminal type name received from the remote client is
converted to lower case.
Telnetd never sends TELNET go ahead commands.
Hurricane Electric Internet Services
Copyright (C) 1998
Hurricane Electric.
All Rights Reserved.