NAME
telnetd - DARPA TELNET protocol server
SYNOPSIS
/etc/telnetd
DESCRIPTION
Telnetd is a server which supports the DARPA standard TELNET
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/services file (see
services(5)).
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, and to receive terminal
type
information 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-terminal 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:
binary, terminal type, and suppress go ahead.
SEE ALSO
telnet(1)
BUGS
Some TELNET commands are only partially implemented.
The TELNET protocol allows for
the exchange of the number of lines
and columns on the user’s terminal, but telnetd
doesn’t make use of
them.
Because of bugs in the original
4.2 BSD telnet(1), telnetd performs
some dubious protocol exchanges to try to discover if the
remote
client is, in fact, a 4.2 BSD telnet(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.
The packet interface to the
pseudo-terminal (see pty(4)) should be
used for more intelligent flushing of input and output
queues.
Telnetd never sends TELNET go ahead commands.