Yikes! Almost forgot to add skey.h as well.
[unix-history] / libexec / telnetd / telnetd.8
CommitLineData
15637ed4
RG
1.\" Copyright (c) 1983 The Regents of the University of California.
2.\" All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\" notice, this list of conditions and the following disclaimer.
9.\" 2. Redistributions in binary form must reproduce the above copyright
10.\" notice, this list of conditions and the following disclaimer in the
11.\" documentation and/or other materials provided with the distribution.
12.\" 3. All advertising materials mentioning features or use of this software
13.\" must display the following acknowledgement:
14.\" This product includes software developed by the University of
15.\" California, Berkeley and its contributors.
16.\" 4. Neither the name of the University nor the names of its contributors
17.\" may be used to endorse or promote products derived from this software
18.\" without specific prior written permission.
19.\"
20.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
21.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
23.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
24.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
26.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
27.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
28.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
29.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
30.\" SUCH DAMAGE.
31.\"
32.\" @(#)telnetd.8 6.8 (Berkeley) 4/20/91
33.\"
34.TH TELNETD 8 "April 20, 1991"
35.UC 5
36.SH NAME
37telnetd \- DARPA TELNET protocol server
38.SH SYNOPSIS
39.B /etc/telnetd
40[\fB\-debug\fP [\fIport\fP]]
41[\fB\-l]
42[\fB\-D options\fP]
43[\fB\-D report\fP]
44[\fB\-D exercise\fP]
45[\fB\-D netdata\fP]
46[\fB\-D ptydata\fP]
47.SH DESCRIPTION
48.I Telnetd
49is a server which supports the DARPA standard
50.B TELNET
51virtual terminal protocol.
52.I Telnetd
53is invoked by the internet server (see
54.IR inetd (8)),
55normally for requests to connect to the
56.B TELNET
57port as indicated by the
58.I /etc/services
59file (see
60.IR services (5)).
61If the \fB\-debug\fP may be used, to start up \fBtelnetd\fP
62manually, instead of through
63.IR inetd (8).
64If started up this way, \fIport\fP may be specified to
65run \fItelnetd\fP on an alternate TCP port number.
66.PP
67The \fB\-D\fP option may be used for debugging purposes.
68This allows \fItelnet\fR to print out debugging information
69to the connection, allowing the user to see what telnetd
70is doing.
71There are several modifiers:
72\fBoptions\fR prints information about the negotiation
73of \fBTELNET\fR options,
74\fBreport\fR prints the \fBoptions\fR information, plus
75some additional information about what processing is going on,
76\fBnetdata\fP displays the data stream received by \fItelnetd\fP,
77\fBptydata\fP displays data written to the pty, and
78\fBexercise\fR has not been implemented yet.
79.PP
80.I Telnetd
81operates by allocating a pseudo-terminal device (see
82.IR pty (4))
83for a client, then creating a login process which has
84the slave side of the pseudo-terminal as
85.BR stdin ,
86.BR stdout ,
87and
88.BR stderr .
89.I Telnetd
90manipulates the master side of the pseudo-terminal,
91implementing the
92.B TELNET
93protocol and passing characters
94between the remote client and the login process.
95.PP
96When a
97.B TELNET
98session is started up,
99.I telnetd
100sends
101.B TELNET
102options to the client side indicating
103a willingness to do
104.I remote echo
105of characters, to
106.I suppress go
107.IR ahead ,
108to do
109.I remote flow
110.IR control ,
111and to receive
112.I terminal type
113.IR information ,
114.I terminal speed
115.IR information ,
116and
117.I window size information
118from the remote client.
119If the remote client is willing, the remote terminal type is
120propagated in the environment of the created login process.
121The pseudo-terminal allocated to the client is configured
122to operate in \*(lqcooked\*(rq mode, and with XTABS and CRMOD
123enabled (see
124.IR tty (4)).
125.PP
126.I Telnetd
127is willing to
128.IR do :
129.IR echo ,
130.IR binary ,
131.I suppress go
132.IR ahead ,
133and
134.I timing
135.IR mark .
136.I Telnetd
137is willing to have the remote client
138.IR do :
139.IR linemode ,
140.IR binary ,
141.I terminal
142.IR type ,
143.I terminal
144.IR speed ,
145.I window
146.IR size ,
147.I toggle flow
148.IR control ,
149.IR environment ,
150.I X display
151.IR location ,
152and
153.I suppress go
154.IR ahead .
155.SH "SEE ALSO"
156telnet(1)
157.SH BUGS
158Some
159.B TELNET
160commands are only partially implemented.
161.PP
162Because of bugs in the original 4.2 BSD
163.IR telnet (1),
164.I telnetd
165performs some dubious protocol exchanges to try to discover if the remote
166client is, in fact, a 4.2 BSD
167.IR telnet (1).
168.PP
169.I Binary mode
170has no common interpretation except between similar operating systems
171(Unix in this case).
172.PP
173The terminal type name received from the remote client is converted to
174lower case.
175.PP
176.I Telnetd
177never sends
178.B TELNET
179.I go ahead
180commands.