BSD 4_3_Net_2 release
[unix-history] / usr / src / usr.bin / telnet / telnet.1
index 939a53d..6dfcf24 100644 (file)
@@ -1,34 +1,61 @@
 .\" Copyright (c) 1983, 1990 The Regents of the University of California.
 .\" All rights reserved.
 .\"
 .\" Copyright (c) 1983, 1990 The Regents of the University of California.
 .\" All rights reserved.
 .\"
-.\" %sccs.include.redist.man%
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in the
+.\"    documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\"    must display the following acknowledgement:
+.\"    This product includes software developed by the University of
+.\"    California, Berkeley and its contributors.
+.\" 4. Neither the name of the University nor the names of its contributors
+.\"    may be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
 .\"
 .\"
-.\"     @(#)telnet.1   6.14 (Berkeley) %G%
+.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
 .\"
 .\"
-.Vx
-.Vx
-.Dd 
+.\"    @(#)telnet.1    6.16 (Berkeley) 7/27/91
+.\"
+.Dd July 27, 1991
 .Dt TELNET 1
 .Os BSD 4.2
 .Sh NAME
 .Nm telnet
 .Dt TELNET 1
 .Os BSD 4.2
 .Sh NAME
 .Nm telnet
-.Nd user interface to the 
-.Li TELNET
+.Nd User interface to the 
+.Tn TELNET
 protocol
 .Sh SYNOPSIS
 .Nm telnet
 .Op Fl d
 .Op Fl a
 .Op Fl n Ar tracefile
 protocol
 .Sh SYNOPSIS
 .Nm telnet
 .Op Fl d
 .Op Fl a
 .Op Fl n Ar tracefile
+.Op Fl e Ar escapechar
+.Oo
+.Op Fl l Ar user
 .Ar host
 .Op port
 .Ar host
 .Op port
-.Oe
+.Oc
 .Sh DESCRIPTION
 The
 .Nm telnet
 command
 is used to communicate with another host using the 
 .Sh DESCRIPTION
 The
 .Nm telnet
 command
 is used to communicate with another host using the 
-.Li TELNET
+.Tn TELNET
 protocol.
 If
 .Nm telnet
 protocol.
 If
 .Nm telnet
@@ -43,44 +70,68 @@ If it is invoked with arguments, it performs an
 command with those arguments.
 .Pp
 Options:
 command with those arguments.
 .Pp
 Options:
-.Tw Fl
-.Tp Fl d
+.Bl -tag -width indent
+.It Fl d
 Sets the initial value of the
 .Ic debug
 toggle to
 Sets the initial value of the
 .Ic debug
 toggle to
-.Li TRUE
-.Tp Fl a
+.Dv TRUE
+.It Fl a
 Attempt automatic login.
 Attempt automatic login.
-Currently, this sends the user name via the USER variable
-of the ENVIRON option if supported by the remote system.
+Currently, this sends the user name via the
+.Ev USER
+variable
+of the
+.Ev ENVIRON
+option if supported by the remote system.
 The name used is that of the current user as returned by
 .Xr getlogin 2
 if it agrees with the current user ID,
 otherwise it is the name associated with the user ID.
 The name used is that of the current user as returned by
 .Xr getlogin 2
 if it agrees with the current user ID,
 otherwise it is the name associated with the user ID.
-.Tp Cx Fl n
-.Cx \&\ \&
-.Ar tracefile
-.Cx
+.It Fl n Ar tracefile 
 Opens
 .Ar tracefile
 for recording trace information.
 See the
 .Ic set tracefile
 command below.
 Opens
 .Ar tracefile
 for recording trace information.
 See the
 .Ic set tracefile
 command below.
-.Tp Ar host
+.It Fl l Ar user 
+When connecting to the remote system, if the remote system
+understands the
+.Ev ENVIRON
+option, then
+.Ar user
+will be sent to the remote system as the value for the variable USER.
+This option implies the
+.Fl a
+option.
+This option may also be used with the
+.Ic open
+command.
+.It Fl e Ar escape char 
+Sets the initial
+.Nm
+.Nm telnet
+escape character to
+.Ar escape char.
+If
+.Ar escape char
+is ommitted, then
+there will be no escape character.
+.It Ar host
 Indicates the official name, an alias, or the Internet address
 of a remote host.
 Indicates the official name, an alias, or the Internet address
 of a remote host.
-.Tp Ar port
+.It Ar port
 Indicates a port number (address of an application).  If a number is
 not specified, the default
 .Nm telnet
 port is used.
 Indicates a port number (address of an application).  If a number is
 not specified, the default
 .Nm telnet
 port is used.
-.Tp
+.El
 .Pp
 Once a connection has been opened,
 .Nm telnet
 will attempt to enable the
 .Pp
 Once a connection has been opened,
 .Nm telnet
 will attempt to enable the
-.Li TELNET LINEMODE
+.Dv TELNET LINEMODE
 option.
 If this fails, then
 .Nm telnet
 option.
 If this fails, then
 .Nm telnet
@@ -90,7 +141,7 @@ or \*(Lqold line by line\*(Rq
 depending on what the remote system supports.
 .Pp
 When 
 depending on what the remote system supports.
 .Pp
 When 
-.Li LINEMODE
+.Dv LINEMODE
 is enabled, character processing is done on the
 local system, under the control of the remote system.  When input
 editing or character echoing is to be disabled, the remote system
 is enabled, character processing is done on the
 local system, under the control of the remote system.  When input
 editing or character echoing is to be disabled, the remote system
@@ -109,33 +160,35 @@ to turn off and on the local echo
 without the password being echoed).
 .Pp
 If the 
 without the password being echoed).
 .Pp
 If the 
-.Li LINEMODE
+.Dv LINEMODE
 option is enabled, or if the
 .Ic localchars
 option is enabled, or if the
 .Ic localchars
-toggle is TRUE (the default for \*(Lqold line by line\*(Lq; see below),
+toggle is
+.Dv TRUE
+(the default for \*(Lqold line by line\*(Lq; see below),
 the user's
 .Ic quit  ,
 .Ic intr ,
 and
 .Ic flush
 characters are trapped locally, and sent as
 the user's
 .Ic quit  ,
 .Ic intr ,
 and
 .Ic flush
 characters are trapped locally, and sent as
-.Li TELNET
+.Tn TELNET
 protocol sequences to the remote side.
 If 
 protocol sequences to the remote side.
 If 
-.Li LINEMODE
+.Dv LINEMODE
 has ever been enabled, then the user's
 .Ic susp
 and
 .Ic eof
 are also sent as
 has ever been enabled, then the user's
 .Ic susp
 and
 .Ic eof
 are also sent as
-.Li TELNET
+.Tn TELNET
 protocol sequences,
 and
 .Ic quit
 is sent as a 
 protocol sequences,
 and
 .Ic quit
 is sent as a 
-.Li TELNET ABORT
+.Dv TELNET ABORT
 instead of 
 instead of 
-.Li BREAK
+.Dv BREAK
 There are options (see
 .Ic toggle
 .Ic autoflush
 There are options (see
 .Ic toggle
 .Ic autoflush
@@ -145,7 +198,7 @@ and
 below)
 which cause this action to flush subsequent output to the terminal
 (until the remote host acknowledges the
 below)
 which cause this action to flush subsequent output to the terminal
 (until the remote host acknowledges the
-.Li TELNET
+.Tn TELNET
 sequence) and flush previous terminal input
 (in the case of
 .Ic quit
 sequence) and flush previous terminal input
 (in the case of
 .Ic quit
@@ -156,11 +209,11 @@ While connected to a remote host,
 .Nm telnet
 command mode may be entered by typing the
 .Nm telnet
 .Nm telnet
 command mode may be entered by typing the
 .Nm telnet
-\*(Lqescape character\*(Rq (initially \*(Lq^
-\*(Rq).
+\*(Lqescape character\*(Rq (initially \*(Lq^]\*(Rq).
 When in command mode, the normal terminal editing conventions are available.
 .Pp
 When in command mode, the normal terminal editing conventions are available.
 .Pp
-The following .Nm telnet
+The following
+.Nm telnet
 commands are available.
 Only enough of each command to uniquely identify it need be typed
 (this is also true for arguments to the
 commands are available.
 Only enough of each command to uniquely identify it need be typed
 (this is also true for arguments to the
@@ -169,102 +222,112 @@ Only enough of each command to uniquely identify it need be typed
 .Ic toggle  ,
 .Ic unset ,
 .Ic slc  ,
 .Ic toggle  ,
 .Ic unset ,
 .Ic slc  ,
+.Ic environ ,
 and
 .Ic display
 commands).
 .Pp
 and
 .Ic display
 commands).
 .Pp
-.Tw Ic
-.Tp Ic close
+.Bl -tag -width "mode type"
+.It Ic close
 Close a
 Close a
-.Li TELNET
+.Tn TELNET
 session and return to command mode.
 session and return to command mode.
-.Tp Cx Ic display
-.Cx \&\ \&
-.Ar argument ...
-.Cx
+.It Ic display Ar argument ... 
 Displays all, or some, of the
 .Ic set
 and
 .Ic toggle
 values (see below).
 Displays all, or some, of the
 .Ic set
 and
 .Ic toggle
 values (see below).
-.Tp Cx Ic mode
-.Cx \&\ \&
-.Ar type
-.Cx
+.It Ic mode Ar type 
 .Ar Type
 is one of several options, depending on the state of the
 .Ar Type
 is one of several options, depending on the state of the
-.Li TELNET
+.Tn TELNET
 session.
 The remote host is asked for permission to go into the requested mode.
 If the remote host is capable of entering that mode, the requested
 mode will be entered.
 session.
 The remote host is asked for permission to go into the requested mode.
 If the remote host is capable of entering that mode, the requested
 mode will be entered.
-.Tw Ar
-.Tp Ic character
+.Bl -tag -width Ar
+.It Ic character
 Disable the
 Disable the
-.Li TELNET LINEMODE
+.Dv TELNET LINEMODE
 option, or, if the remote side does not understand the
 option, or, if the remote side does not understand the
-.Li LINEMODE
+.Dv LINEMODE
 option, then enter \*(Lqcharacter at a time\*(Lq mode.
 option, then enter \*(Lqcharacter at a time\*(Lq mode.
-.Tp Ic line
+.It Ic line
 Enable the
 Enable the
-.Li TELNET LINEMODE
+.Dv TELNET LINEMODE
 option, or, if the remote side does not understand the
 option, or, if the remote side does not understand the
-.Li LINEMODE
+.Dv LINEMODE
 option, then attempt to enter \*(Lqold-line-by-line\*(Lq mode.
 option, then attempt to enter \*(Lqold-line-by-line\*(Lq mode.
-.Tp Cx Ic isig
-.Cx \&\ \&
-.Pq Ic \-isig
-.Cx
+.It Ic isig Pq Ic \-isig 
+Attempt to enable (disable) the 
+.Dv TRAPSIG
+mode of the 
+.Dv LINEMODE
+option.
+This requires that the 
+.Dv LINEMODE
+option be enabled.
+.It Ic edit Pq Ic \-edit 
 Attempt to enable (disable) the 
 Attempt to enable (disable) the 
-.Li TRAPSIG
+.Dv EDIT
 mode of the 
 mode of the 
-.Li LINEMODE
+.Dv LINEMODE
 option.
 This requires that the 
 option.
 This requires that the 
-.Li LINEMODE
+.Dv LINEMODE
 option be enabled.
 option be enabled.
-.Tp Cx Ic edit
-.Cx \&\ \&
-.Pq Ic \-edit
-.Cx
+.It Ic softtabs Pq Ic \-softtabs 
 Attempt to enable (disable) the 
 Attempt to enable (disable) the 
-.Li EDIT
+.Dv SOFT_TAB
 mode of the 
 mode of the 
-.Li LINEMODE
+.Dv LINEMODE
 option.
 This requires that the 
 option.
 This requires that the 
-.Li LINEMODE
+.Dv LINEMODE
 option be enabled.
 option be enabled.
-.Tp Ic \&?
+.It Ic litecho Pq Ic \-litecho 
+Attempt to enable (disable) the 
+.Dv LIT_ECHO
+mode of the 
+.Dv LINEMODE
+option.
+This requires that the 
+.Dv LINEMODE
+option be enabled.
+.It Ic \&?
 Prints out help information for the
 .Ic mode
 command.
 Prints out help information for the
 .Ic mode
 command.
-.Tp
-.Tp Cx Ic open
-.Cx \&\ \&
-.Ar host
-.Cx \&\ \&
-.Cx [
-.Op Fl
-.Cx \&\ \&
-.Ar port
-.Cx ]
-.Cx
+.El
+.It Xo
+.Ic open Ar host
+.Oo Op Fl l
+.Ar user
+.Oc Ns Oo Fl
+.Ar port Oc
+.Xc
 Open a connection to the named host.
 If no port number
 is specified,
 .Nm telnet
 will attempt to contact a
 Open a connection to the named host.
 If no port number
 is specified,
 .Nm telnet
 will attempt to contact a
-.Li TELNET
+.Tn TELNET
 server at the default port.
 The host specification may be either a host name (see
 .Xr hosts  5  )
 or an Internet address specified in the \*(Lqdot notation\*(Rq (see
 .Xr inet 3 ) .
 server at the default port.
 The host specification may be either a host name (see
 .Xr hosts  5  )
 or an Internet address specified in the \*(Lqdot notation\*(Rq (see
 .Xr inet 3 ) .
+The
+.Op Fl l
+option may be used to specify the user name
+to be passed to the remote system via the
+.Ev ENVIRON
+option.
 When connecting to a non-standard port,
 .Nm telnet
 omits any automatic initiation of
 When connecting to a non-standard port,
 .Nm telnet
 omits any automatic initiation of
-.Li TELNET
+.Tn TELNET
 options.  When the port number is preceeded by a minus sign,
 the inital option negotiation is done.
 After establishing a connection, the file
 options.  When the port number is preceeded by a minus sign,
 the inital option negotiation is done.
 After establishing a connection, the file
@@ -281,125 +344,122 @@ commands and are processed as if they had been typed
 in manually to the
 .Nm telnet
 command prompt.
 in manually to the
 .Nm telnet
 command prompt.
-.Tp Ic quit
+.It Ic quit
 Close any open
 Close any open
-.Li TELNET
+.Tn TELNET
 session and exit
 .Nm telnet  .
 An end of file (in command mode) will also close a session and exit.
 session and exit
 .Nm telnet  .
 An end of file (in command mode) will also close a session and exit.
-.Tp Cx Ic send
-.Cx \&\ \&
-.Ar arguments
-.Cx
+.It Ic send Ar arguments 
 Sends one or more special character sequences to the remote host.
 The following are the arguments which may be specified
 (more than one argument may be specified at a time):
 .Pp
 Sends one or more special character sequences to the remote host.
 The following are the arguments which may be specified
 (more than one argument may be specified at a time):
 .Pp
-.Tw Ds
-.Tp Ic abort
+.Bl -tag -width escape
+.It Ic abort
 Sends the
 Sends the
-.Li TELNET ABORT
-(ABORT processes)
+.Dv TELNET ABORT
+(Abort
+processes)
 sequence.
 sequence.
-.Tp Ic ao
+.It Ic ao
 Sends the
 Sends the
-.Li TELNET AO
+.Dv TELNET AO
 (Abort Output) sequence, which should cause the remote system to flush
 all output
 .Em from
 the remote system
 .Em to
 the user's terminal.
 (Abort Output) sequence, which should cause the remote system to flush
 all output
 .Em from
 the remote system
 .Em to
 the user's terminal.
-.Tp Ic ayt
+.It Ic ayt
 Sends the
 Sends the
-.Li TELNET AYT
+.Dv TELNET AYT
 (Are You There)
 sequence, to which the remote system may or may not choose to respond.
 (Are You There)
 sequence, to which the remote system may or may not choose to respond.
-.Tp Ic brk
+.It Ic brk
 Sends the
 Sends the
-.Li TELNET BRK
+.Dv TELNET BRK
 (Break) sequence, which may have significance to the remote
 system.
 (Break) sequence, which may have significance to the remote
 system.
-.Tp Ic ec
+.It Ic ec
 Sends the
 Sends the
-.Li TELNET EC
+.Dv TELNET EC
 (Erase Character)
 sequence, which should cause the remote system to erase the last character
 entered.
 (Erase Character)
 sequence, which should cause the remote system to erase the last character
 entered.
-.Tp Ic el
+.It Ic el
 Sends the
 Sends the
-.Li TELNET EL
+.Dv TELNET EL
 (Erase Line)
 sequence, which should cause the remote system to erase the line currently
 being entered.
 (Erase Line)
 sequence, which should cause the remote system to erase the line currently
 being entered.
-.Tp Ic eof
+.It Ic eof
 Sends the
 Sends the
-.Li TELNET EOF
+.Dv TELNET EOF
 (End Of File)
 sequence.
 (End Of File)
 sequence.
-.Tp Ic eor
+.It Ic eor
 Sends the
 Sends the
-.Li TELNET EOR
+.Dv TELNET EOR
 (End of Record)
 sequence.
 (End of Record)
 sequence.
-.Tp Ic escape
+.It Ic escape
 Sends the current
 .Nm telnet
 escape character (initially \*(Lq^\*(Rq).
 Sends the current
 .Nm telnet
 escape character (initially \*(Lq^\*(Rq).
-.Tp Ic ga
+.It Ic ga
 Sends the
 Sends the
-.Li TELNET GA
+.Dv TELNET GA
 (Go Ahead)
 sequence, which likely has no significance to the remote system.
 (Go Ahead)
 sequence, which likely has no significance to the remote system.
-.Tp Ic getstatus
+.It Ic getstatus
 If the remote side supports the
 If the remote side supports the
-.Li TELNET STATUS
+.Dv TELNET STATUS
 command,
 .Ic getstatus
 will send the subnegotiation to request that the server send
 its current option status.
 command,
 .Ic getstatus
 will send the subnegotiation to request that the server send
 its current option status.
-.Tp Ic ip
+.It Ic ip
 Sends the
 Sends the
-.Li TELNET IP
+.Dv TELNET IP
 (Interrupt Process) sequence, which should cause the remote
 system to abort the currently running process.
 (Interrupt Process) sequence, which should cause the remote
 system to abort the currently running process.
-.Tp Ic nop
+.It Ic nop
 Sends the
 Sends the
-.Li TELNET NOP
+.Dv TELNET NOP
 (No OPeration)
 sequence.
 (No OPeration)
 sequence.
-.Tp Ic susp
+.It Ic susp
 Sends the
 Sends the
-.Li TELNET SUSP
+.Dv TELNET SUSP
 (SUSPend process)
 sequence.
 (SUSPend process)
 sequence.
-.Tp Ic synch
+.It Ic synch
 Sends the
 Sends the
-.Li TELNET SYNCH
+.Dv TELNET SYNCH
 sequence.
 This sequence causes the remote system to discard all previously typed
 (but not yet read) input.
 sequence.
 This sequence causes the remote system to discard all previously typed
 (but not yet read) input.
-This sequence is sent as TCP urgent
-data (and may not work if the remote system is a 4.2 BSD system -- if
+This sequence is sent as
+.Tn TCP
+urgent
+data (and may not work if the remote system is a
+.Bx 4.2
+system -- if
 it doesn't work, a lower case \*(Lqr\*(Rq may be echoed on the terminal).
 it doesn't work, a lower case \*(Lqr\*(Rq may be echoed on the terminal).
-.Tp Ic \&?
+.It Ic \&?
 Prints out help information for the
 .Ic send
 command.
 Prints out help information for the
 .Ic send
 command.
-.Tp
-.Tp Cx Ic set
-.Cx \&\ \&
-.Ar argument value
-.Cx
-.Tp Cx Ic unset
-.Cx \&\ \&
-.Ar argument value
-.Cx
+.El
+.It Ic set Ar argument value 
+.It Ic unset Ar argument value 
 The
 .Ic set
 command will set any one of a number of
 .Nm telnet
 The
 .Ic set
 command will set any one of a number of
 .Nm telnet
-variables to a specific value or to TRUE.
+variables to a specific value or to
+.Dv TRUE .
 The special value
 .Ic off
 turns off the function associated with
 The special value
 .Ic off
 turns off the function associated with
@@ -408,7 +468,9 @@ the variable, this is equivalent to using the
 command.
 The
 .Ic unset
 command.
 The
 .Ic unset
-command will disable or set to FALSE any of the specified functions.
+command will disable or set to
+.Dv FALSE
+any of the specified functions.
 The values of variables may be interrogated with the
 .Ic display
 command.
 The values of variables may be interrogated with the
 .Ic display
 command.
@@ -421,24 +483,24 @@ the
 and
 .Ic unset
 commands.
 and
 .Ic unset
 commands.
-.Tw Fl
-.Tp Ic echo
+.Bl -tag -width escape
+.It Ic echo
 This is the value (initially \*(Lq^E\*(Rq) which, when in
 \*(Lqline by line\*(Rq mode, toggles between doing local echoing
 of entered characters (for normal processing), and suppressing
 echoing of entered characters (for entering, say, a password).
 This is the value (initially \*(Lq^E\*(Rq) which, when in
 \*(Lqline by line\*(Rq mode, toggles between doing local echoing
 of entered characters (for normal processing), and suppressing
 echoing of entered characters (for entering, say, a password).
-.Tp Ic eof
+.It Ic eof
 If
 .Nm telnet
 is operating in
 If
 .Nm telnet
 is operating in
-.Li LINEMODE
+.Dv LINEMODE
 or \*(Lqold line by line\*(Rq mode, entering this character
 as the first character on a line will cause this character to be
 sent to the remote system.
 The initial value of the eof character is taken to be the terminal's
 .Ic eof
 character.
 or \*(Lqold line by line\*(Rq mode, entering this character
 as the first character on a line will cause this character to be
 sent to the remote system.
 The initial value of the eof character is taken to be the terminal's
 .Ic eof
 character.
-.Tp Ic erase
+.It Ic erase
 If
 .Nm telnet
 is in
 If
 .Nm telnet
 is in
@@ -452,7 +514,7 @@ if
 .Nm telnet
 is operating in \*(Lqcharacter at a time\*(Rq mode, then when this
 character is typed, a
 .Nm telnet
 is operating in \*(Lqcharacter at a time\*(Rq mode, then when this
 character is typed, a
-.Li TELNET EC
+.Dv TELNET EC
 sequence (see
 .Ic send
 .Ic ec
 sequence (see
 .Ic send
 .Ic ec
@@ -462,14 +524,14 @@ The initial value for the erase character is taken to be
 the terminal's
 .Ic erase
 character.
 the terminal's
 .Ic erase
 character.
-.Tp Ic escape
+.It Ic escape
 This is the
 .Nm telnet
 escape character (initially \*(Lq^[\*(Rq) which causes entry
 into
 .Nm telnet
 command mode (when connected to a remote system).
 This is the
 .Nm telnet
 escape character (initially \*(Lq^[\*(Rq) which causes entry
 into
 .Nm telnet
 command mode (when connected to a remote system).
-.Tp Ic flushoutput
+.It Ic flushoutput
 If
 .Nm telnet
 is in
 If
 .Nm telnet
 is in
@@ -481,7 +543,7 @@ below)
 and the
 .Ic flushoutput
 character is typed, a
 and the
 .Ic flushoutput
 character is typed, a
-.Li TELNET AO
+.Dv TELNET AO
 sequence (see
 .Ic send
 .Ic ao
 sequence (see
 .Ic send
 .Ic ao
@@ -491,7 +553,7 @@ The initial value for the flush character is taken to be
 the terminal's
 .Ic flush
 character.
 the terminal's
 .Ic flush
 character.
-.Tp Ic interrupt
+.It Ic interrupt
 If
 .Nm telnet
 is in
 If
 .Nm telnet
 is in
@@ -503,7 +565,7 @@ below)
 and the
 .Ic interrupt
 character is typed, a
 and the
 .Ic interrupt
 character is typed, a
-.Li TELNET IP
+.Dv TELNET IP
 sequence (see
 .Ic send
 .Ic ip
 sequence (see
 .Ic send
 .Ic ip
@@ -513,7 +575,7 @@ The initial value for the interrupt character is taken to be
 the terminal's
 .Ic intr
 character.
 the terminal's
 .Ic intr
 character.
-.Tp Ic kill
+.It Ic kill
 If
 .Nm telnet
 is in
 If
 .Nm telnet
 is in
@@ -527,7 +589,7 @@ if
 .Nm telnet
 is operating in \*(Lqcharacter at a time\*(Rq mode, then when this
 character is typed, a
 .Nm telnet
 is operating in \*(Lqcharacter at a time\*(Rq mode, then when this
 character is typed, a
-.Li TELNET EL
+.Dv TELNET EL
 sequence (see
 .Ic send
 .Ic el
 sequence (see
 .Ic send
 .Ic el
@@ -537,11 +599,11 @@ The initial value for the kill character is taken to be
 the terminal's
 .Ic kill
 character.
 the terminal's
 .Ic kill
 character.
-.Tp Ic lnext
+.It Ic lnext
 If
 .Nm telnet
 is operating in
 If
 .Nm telnet
 is operating in
-.Li LINEMODE
+.Dv LINEMODE
 or \*(Lqold line by line\*(Lq mode, then this character is taken to
 be the terminal's
 .Ic lnext
 or \*(Lqold line by line\*(Lq mode, then this character is taken to
 be the terminal's
 .Ic lnext
@@ -550,7 +612,7 @@ The initial value for the lnext character is taken to be
 the terminal's
 .Ic lnext
 character.
 the terminal's
 .Ic lnext
 character.
-.Tp Ic quit
+.It Ic quit
 If
 .Nm telnet
 is in
 If
 .Nm telnet
 is in
@@ -562,7 +624,7 @@ below)
 and the
 .Ic quit
 character is typed, a
 and the
 .Ic quit
 character is typed, a
-.Li TELNET BRK
+.Dv TELNET BRK
 sequence (see
 .Ic send
 .Ic brk
 sequence (see
 .Ic send
 .Ic brk
@@ -572,11 +634,11 @@ The initial value for the quit character is taken to be
 the terminal's
 .Ic quit
 character.
 the terminal's
 .Ic quit
 character.
-.Tp Ic reprint
+.It Ic reprint
 If
 .Nm telnet
 is operating in
 If
 .Nm telnet
 is operating in
-.Li LINEMODE
+.Dv LINEMODE
 or \*(Lqold line by line\*(Lq mode, then this character is taken to
 be the terminal's
 .Ic reprint
 or \*(Lqold line by line\*(Lq mode, then this character is taken to
 be the terminal's
 .Ic reprint
@@ -585,9 +647,9 @@ The initial value for the reprint character is taken to be
 the terminal's
 .Ic reprint
 character.
 the terminal's
 .Ic reprint
 character.
-.Tp Ic start
+.It Ic start
 If the
 If the
-.Li TELNET TOGGLE-FLOW-CONTROL
+.Dv TELNET TOGGLE-FLOW-CONTROL
 option has been enabled,
 then this character is taken to
 be the terminal's
 option has been enabled,
 then this character is taken to
 be the terminal's
@@ -597,9 +659,9 @@ The initial value for the kill character is taken to be
 the terminal's
 .Ic start
 character.
 the terminal's
 .Ic start
 character.
-.Tp Ic stop
+.It Ic stop
 If the
 If the
-.Li TELNET TOGGLE-FLOW-CONTROL
+.Dv TELNET TOGGLE-FLOW-CONTROL
 option has been enabled,
 then this character is taken to
 be the terminal's
 option has been enabled,
 then this character is taken to
 be the terminal's
@@ -609,17 +671,17 @@ The initial value for the kill character is taken to be
 the terminal's
 .Ic stop
 character.
 the terminal's
 .Ic stop
 character.
-.Tp Ic susp
+.It Ic susp
 If
 .Nm telnet
 is in
 .Ic localchars
 mode, or
 If
 .Nm telnet
 is in
 .Ic localchars
 mode, or
-.Li LINEMODE
+.Dv LINEMODE
 is enabled, and the
 .Ic suspend
 character is typed, a
 is enabled, and the
 .Ic suspend
 character is typed, a
-.Li TELNET SUSP
+.Dv TELNET SUSP
 sequence (see
 .Ic send
 .Ic susp
 sequence (see
 .Ic send
 .Ic susp
@@ -629,19 +691,21 @@ The initial value for the suspend character is taken to be
 the terminal's
 .Ic suspend
 character.
 the terminal's
 .Ic suspend
 character.
-.Tp Ic tracefile
+.It Ic tracefile
 Thi is the file to which the output, caused by
 .Ic netdata
 or
 .Ic option
 Thi is the file to which the output, caused by
 .Ic netdata
 or
 .Ic option
-tracing being TRUE, will be written.  If it is set to
+tracing being
+.Dv TRUE ,
+will be written.  If it is set to
 .Dq Fl ,
 then tracing information will be written to standard output (the default).
 .Dq Fl ,
 then tracing information will be written to standard output (the default).
-.Tp Ic worderase
+.It Ic worderase
 If
 .Nm telnet
 is operating in
 If
 .Nm telnet
 is operating in
-.Li LINEMODE
+.Dv LINEMODE
 or \*(Lqold line by line\*(Lq mode, then this character is taken to
 be the terminal's
 .Ic worderase
 or \*(Lqold line by line\*(Lq mode, then this character is taken to
 be the terminal's
 .Ic worderase
@@ -650,21 +714,23 @@ The initial value for the worderase character is taken to be
 the terminal's
 .Ic worderase
 character.
 the terminal's
 .Ic worderase
 character.
-.Tp
-.Tp Cx Ic slc
-.Cx \&\ \&
-.Ar state
-.Cx
+.It Ic \&?
+Displays the legal
+.Ic set
+.Pq Ic unset
+commands.
+.El
+.It Ic slc Ar state 
 The
 .Ic slc
 command (Set Local Characters) is used to set
 or change the state of the the special
 characters when the 
 The
 .Ic slc
 command (Set Local Characters) is used to set
 or change the state of the the special
 characters when the 
-.Li TELNET LINEMODE
+.Dv TELNET LINEMODE
 option has
 been enabled.  Special characters are characters that get
 mapped to 
 option has
 been enabled.  Special characters are characters that get
 mapped to 
-.Li TELNET
+.Tn TELNET
 commands sequences (like
 .Ic ip
 or
 commands sequences (like
 .Ic ip
 or
@@ -674,46 +740,100 @@ or line editing characters (like
 and
 .Ic kill  ) .
 By default, the local special characters are exported.
 and
 .Ic kill  ) .
 By default, the local special characters are exported.
-.Tw Fl
-.Tp Ic export
+.Bl -tag -width Fl
+.It Ic export
 Switch to the local defaults for the special characters.  The
 local default characters are those of the local terminal at
 the time when
 .Nm telnet
 was started.
 Switch to the local defaults for the special characters.  The
 local default characters are those of the local terminal at
 the time when
 .Nm telnet
 was started.
-.Tp Ic import
+.It Ic import
 Switch to the remote defaults for the special characters.
 The remote default characters are those of the remote system
 at the time when the 
 Switch to the remote defaults for the special characters.
 The remote default characters are those of the remote system
 at the time when the 
-.Li TELNET
+.Tn TELNET
 connection was established.
 connection was established.
-.Tp Ic check
+.It Ic check
 Verify the current settings for the current special characters.
 The remote side is requested to send all the current special
 character settings, and if there are any discrepencies with
 the local side, the local side will switch to the remote value.
 Verify the current settings for the current special characters.
 The remote side is requested to send all the current special
 character settings, and if there are any discrepencies with
 the local side, the local side will switch to the remote value.
-.Ic Ic \&?
+.It Ic \&?
 Prints out help information for the
 .Ic slc
 command.
 Prints out help information for the
 .Ic slc
 command.
-.Tp
-.Tp Ic \&?
-Displays the legal
-.Ic set
-.Pq Ic unset
-commands.
-.Tp Cx Ic toggle
-.Cx \&\ \&
-.Ar arguments ...
-.Cx
+.El
+.It Ic environ Ar arguments... 
+The
+.Ic environ
+command is used to manipulate the
+the variables that my be sent through the
+.Dv TELNET ENVIRON
+option.
+The initial set of variables is taken from the users
+environment, with only the
+.Ev DISPLAY
+and
+.Ev PRINTER
+variables being exported by default.
+The
+.Ev USER
+variable is also exported if the
+.Fl a
+or
+.Fl l
+options are used.
+.br
+Valid arguments for the
+.Ic environ
+command are:
+.Bl -tag -width Fl
+.It Ic define Ar variable value 
+Define the variable
+.Ar variable
+to have a value of
+.Ar value.
+Any variables defined by this command are automatically exported.
+The
+.Ar value
+may be enclosed in single or double quotes so
+that tabs and spaces may be included.
+.It Ic undefine Ar variable 
+Remove
+.Ar variable
+from the list of environment variables.
+.It Ic export Ar variable 
+Mark the variable
+.Ar variable
+to be exported to the remote side.
+.It Ic unexport Ar variable 
+Mark the variable
+.Ar variable
+to not be exported unless
+explicitly asked for by the remote side.
+.It Ic list
+List the current set of environment variables.
+Those marked with a
+.Cm *
+will be sent automatically,
+other variables will only be sent if explicitly requested.
+.It Ic \&?
+Prints out help information for the
+.Ic environ
+command.
+.El
+.It Ic toggle Ar arguments ... 
 Toggle (between
 Toggle (between
-TRUE
+.Dv TRUE
 and
 and
-FALSE)
+.Dv FALSE )
 various flags that control how
 .Nm telnet
 responds to events.
 various flags that control how
 .Nm telnet
 responds to events.
-These flags may be set explicitly to TRUE or FALSE
+These flags may be set explicitly to
+.Dv TRUE
+or
+.Dv FALSE
 using the
 .Ic set
 and
 using the
 .Ic set
 and
@@ -724,41 +844,45 @@ The state of these flags may be interrogated with the
 .Ic display
 command.
 Valid arguments are:
 .Ic display
 command.
 Valid arguments are:
-.Tw Ar
-.Tp Ic autoflush
+.Bl -tag -width Ar
+.It Ic autoflush
 If
 .Ic autoflush
 and
 .Ic localchars
 are both
 If
 .Ic autoflush
 and
 .Ic localchars
 are both
-TRUE,
+.Dv TRUE ,
 then when the
 .Ic ao  ,
 or
 .Ic quit
 characters are recognized (and transformed into
 then when the
 .Ic ao  ,
 or
 .Ic quit
 characters are recognized (and transformed into
-.Li TELNET
+.Tn TELNET
 sequences; see
 .Ic set
 above for details),
 .Nm telnet
 refuses to display any data on the user's terminal
 until the remote system acknowledges (via a
 sequences; see
 .Ic set
 above for details),
 .Nm telnet
 refuses to display any data on the user's terminal
 until the remote system acknowledges (via a
-.Li TELNET TIMING MARK
+.Dv TELNET TIMING MARK
 option)
 that it has processed those
 option)
 that it has processed those
-.Li TELNET
+.Tn TELNET
 sequences.
 sequences.
-The initial value for this toggle is TRUE if the terminal user had not
-done an "stty noflsh", otherwise FALSE (see
+The initial value for this toggle is
+.Dv TRUE
+if the terminal user had not
+done an "stty noflsh", otherwise
+.Dv FALSE
+(see
 .Xr stty  1  ) .
 .Xr stty  1  ) .
-.Tp Ic autosynch
+.It Ic autosynch
 If
 .Ic autosynch
 and
 .Ic localchars
 are both
 If
 .Ic autosynch
 and
 .Ic localchars
 are both
-TRUE,
+.Dv TRUE ,
 then when either the
 .Ic intr
 or
 then when either the
 .Ic intr
 or
@@ -770,34 +894,42 @@ above for descriptions of the
 and
 .Ic quit
 characters), the resulting
 and
 .Ic quit
 characters), the resulting
-.Li TELNET
+.Tn TELNET
 sequence sent is followed by the
 sequence sent is followed by the
-.Li TELNET SYNCH
+.Dv TELNET SYNCH
 sequence.
 This procedure
 .Ic should
 cause the remote system to begin throwing away all previously
 typed input until both of the
 sequence.
 This procedure
 .Ic should
 cause the remote system to begin throwing away all previously
 typed input until both of the
-.Li TELNET
+.Tn TELNET
 sequences have been read and acted upon.
 sequences have been read and acted upon.
-The initial value of this toggle is FALSE.
-.Tp Ic binary
+The initial value of this toggle is
+.Dv FALSE .
+.It Ic binary
 Enable or disable the
 Enable or disable the
-.Li TELNET BINARY
+.Dv TELNET BINARY
 option on both input and output.
 option on both input and output.
-.Tp Ic inbinary
+.It Ic inbinary
 Enable or disable the
 Enable or disable the
-.Li TELNET BINARY
+.Dv TELNET BINARY
 option on input.
 option on input.
-.Tp Ic outbinary
+.It Ic outbinary
 Enable or disable the
 Enable or disable the
-.Li TELNET BINARY
+.Dv TELNET BINARY
 option on output.
 option on output.
-.Tp Ic crlf
-If this is TRUE, then carriage returns will be sent as <CR><LF>.
-If this is FALSE, then carriage returns will be send as <CR><NUL>.
-The initial value for this toggle is FALSE.
-.Tp Ic crmod
+.It Ic crlf
+If this is
+.Dv TRUE ,
+then carriage returns will be sent as
+.Li <CR><LF> .
+If this is
+.Dv FALSE ,
+then carriage returns will be send as
+.Li <CR><NUL> .
+The initial value for this toggle is
+.Dv FALSE .
+.It Ic crmod
 Toggle carriage return mode.
 When this mode is enabled, most carriage return characters received from
 the remote host will be mapped into a carriage return followed by
 Toggle carriage return mode.
 When this mode is enabled, most carriage return characters received from
 the remote host will be mapped into a carriage return followed by
@@ -806,41 +938,52 @@ This mode does not affect those characters typed by the user, only
 those received from the remote host.
 This mode is not very useful unless the remote host
 only sends carriage return, but never line feed.
 those received from the remote host.
 This mode is not very useful unless the remote host
 only sends carriage return, but never line feed.
-The initial value for this toggle is FALSE.
-.Tp Ic debug
+The initial value for this toggle is
+.Dv FALSE .
+.It Ic debug
 Toggles socket level debugging (useful only to the
 .Ic super user  ) .
 Toggles socket level debugging (useful only to the
 .Ic super user  ) .
-The initial value for this toggle is FALSE.
-.Tp Ic localchars
+The initial value for this toggle is
+.Dv FALSE .
+.It Ic localchars
 If this is
 If this is
-TRUE,
+.Dv TRUE ,
 then the
 .Ic flush  ,
 then the
 .Ic flush  ,
+.Ic interrupt ,
 .Ic quit  ,
 .Ic quit  ,
+.Ic erase ,
 and
 .Ic kill
 characters (see
 .Ic set
 above) are recognized locally, and transformed into (hopefully) appropriate
 and
 .Ic kill
 characters (see
 .Ic set
 above) are recognized locally, and transformed into (hopefully) appropriate
-.Li TELNET
+.Tn TELNET
 control sequences
 (respectively
 .Ic ao  ,
 control sequences
 (respectively
 .Ic ao  ,
+.Ic ip ,
 .Ic brk  ,
 .Ic brk  ,
+.Ic ec ,
 and
 .Ic el  ;
 see
 .Ic send
 above).
 and
 .Ic el  ;
 see
 .Ic send
 above).
-The initial value for this toggle is TRUE in \*(Lqold line by line\*(Rq mode,
-and FALSE in \*(Lqcharacter at a time\*(Rq mode.
+The initial value for this toggle is
+.Dv TRUE
+in \*(Lqold line by line\*(Rq mode,
+and
+.Dv FALSE
+in \*(Lqcharacter at a time\*(Rq mode.
 When the
 When the
-.Li LINEMODE
+.Dv LINEMODE
 option is enabled, the value of
 .Ic localchars
 option is enabled, the value of
 .Ic localchars
-is ignored, and assumed to always be TRUE.
+is ignored, and assumed to always be
+.Dv TRUE .
 If
 If
-.Li LINEMODE
+.Dv LINEMODE
 has ever been enabled, then
 .Ic quit
 is sent as
 has ever been enabled, then
 .Ic quit
 is sent as
@@ -850,20 +993,23 @@ and
 .B suspend
 are sent as
 .Ic eof and
 .B suspend
 are sent as
 .Ic eof and
+.Ic susp ,
 see
 .Ic send
 above).
 see
 .Ic send
 above).
-.Tp Ic netdata
+.It Ic netdata
 Toggles the display of all network data (in hexadecimal format).
 Toggles the display of all network data (in hexadecimal format).
-The initial value for this toggle is FALSE.
-.Tp Ic options
+The initial value for this toggle is
+.Dv FALSE .
+.It Ic options
 Toggles the display of some internal
 .Nm telnet
 protocol processing (having to do with
 Toggles the display of some internal
 .Nm telnet
 protocol processing (having to do with
-.Li TELNET
+.Tn TELNET
 options).
 options).
-The initial value for this toggle is FALSE.
-.Tp Ic prettydump
+The initial value for this toggle is
+.Dv FALSE .
+.It Ic prettydump
 When the
 .Ic netdata
 toggle is enabled, if
 When the
 .Ic netdata
 toggle is enabled, if
@@ -873,66 +1019,67 @@ is enabled the output from the
 command will be formated in a more user readable format.
 Spaces are put between each character in the output, and the
 begining of any
 command will be formated in a more user readable format.
 Spaces are put between each character in the output, and the
 begining of any
-.Li TELNET
+.Tn TELNET
 escape sequence is preceeded by a '*' to aid in locating them.
 escape sequence is preceeded by a '*' to aid in locating them.
-.Tp Ic \&?
+.It Ic \&?
 Displays the legal
 .Ic toggle
 commands.
 Displays the legal
 .Ic toggle
 commands.
-.Tp
-.Tp Ic z
+.El
+.It Ic z
 Suspend
 .Nm telnet  .
 This command only works when the user is using the
 .Xr csh  1  .
 Suspend
 .Nm telnet  .
 This command only works when the user is using the
 .Xr csh  1  .
-.Tp Cx Ic \&!
-.Cx \&\ \&
-.Op Ar command
-.Cx
+.It Ic \&! Op Ar command 
 Execute a single command in a subshell on the local
 system.  If
 .Ic command
 is ommitted, then an interactive
 subshell is invoked.
 Execute a single command in a subshell on the local
 system.  If
 .Ic command
 is ommitted, then an interactive
 subshell is invoked.
-.Tp Ic status
+.It Ic status
 Show the current status of
 .Nm telnet  .
 This includes the peer one is connected to, as well
 as the current mode.
 Show the current status of
 .Nm telnet  .
 This includes the peer one is connected to, as well
 as the current mode.
-.Tp Cx Ic \&?
-.Cx \&\ \&
-.Op Ar command
-.Cx
+.It Ic \&? Op Ar command 
 Get help.  With no arguments,
 .Nm telnet
 prints a help summary.
 If a command is specified,
 .Nm telnet
 will print the help information for just that command.
 Get help.  With no arguments,
 .Nm telnet
 prints a help summary.
 If a command is specified,
 .Nm telnet
 will print the help information for just that command.
+.El
 .Sh ENVIRONMENT
 .Nm Telnet
 .Sh ENVIRONMENT
 .Nm Telnet
-uses the
+uses at least the
 .Ev HOME ,
 .Ev HOME ,
-.Ev SHELL
+.Ev SHELL ,
+.Ev DISPLAY ,
 and
 .Ev TERM
 environent variables.
 and
 .Ev TERM
 environent variables.
+Other envirnoment variables may be propogated
+to the other side via the
+.Dv TELNET ENVIRON
+option.
 .Sh FILES
 .Sh FILES
-.Dw ~/.telnetrc
-.Di L
-.Dp Pa ~/.telnetrc
+.Bl -tag -width ~/.telnetrc -compact
+.It Pa ~/.telnetrc
 user customized telnet startup values
 user customized telnet startup values
-.Dp
+.El
 .Sh HISTORY
 .Sh HISTORY
+The
 .Nm Telnet
 .Nm Telnet
-appeared in 4.2 BSD.
+command appeared in
+.Bx 4.2 .
 .Sh NOTES
 .Pp
 On some remote systems, echo has to be turned off manually when in
 \*(Lqold line by line\*(Rq mode.
 .Pp
 In \*(Lqold line by line\*(Rq mode or 
 .Sh NOTES
 .Pp
 On some remote systems, echo has to be turned off manually when in
 \*(Lqold line by line\*(Rq mode.
 .Pp
 In \*(Lqold line by line\*(Rq mode or 
-.Li LINEMODE
+.Dv LINEMODE
 the terminal's
 .Ic eof
 character is only recognized (and sent to the remote system)
 the terminal's
 .Ic eof
 character is only recognized (and sent to the remote system)