TN3270(1) MachTen Reference Manual TN3270(1)
NAME
tn3270 - full-screen remote login to IBM VM/CMS
SYNOPSIS
tn3270 [-d] [-n filename] [-t commandname] [sysname
[port]]
DESCRIPTION
Tn3270 permits a full-screen, full-duplex connection from a
UNIX machine
to an IBM (or compatible) machine. Tn3270 gives the
appearance of being
logged in to the remote machine from an IBM 3270 terminal.
Of course,
you must have an account on the machine to which you connect
in order to
log in. Tn3270 looks to the user in many respects like the
Yale ASCII
Terminal Communication System II. Tn3270 is actually a
modification of
the Arpanet TELNET user interface (see telnet(1)) which
will, in certain
circumstances, interpret and generate raw 3270 control
streams.
The flags to tn3270 are as follows:
-d Turn on socket-level tracing
(for super-user only) -nfilename
Specify a file to receive network trace data output (from
commands "toggle netdata" and "toggle
options", see
telnet(1)); the default is for output to be directed to the
standard error file. -tcommandname Specify a UNIX command to
process IBM 4994 style transparent mode data received from
the remote IBM machine.
sysname The name of the remote
system. If the remote name is NOT
specified, the user will be prompted for a command (see be-
low).
port The port to connect to on
the remote system. Normally,
tn3270 attempts to connect to the standard TELNET port (port
23) on the remote machine.
When tn3270 first connects to
the remote system, it will negotiate to go
into 3270 mode. Part of this negotiation involves telling
the remote
system what model 3270 it is emulating. In all cases, tn3270
emulates a
3278 terminal. To decide which specific model, tn3270 looks
at the num-
ber of lines and columns on the actual terminal (as defined
in the TERM
environment variable; see termcap(5)). The terminal (or
window in which
tn3270 is running, on multiple window systems) must have at
least 80
columns and 24 lines, or tn3270 will not go into emulation
mode. If the
terminal does have at least 80 columns and at least 24
lines, the follow-
ing table describes the emulation:
minimum_size emulated
(rows*columns) terminal
-------------- ------------
27*132 3278 model 5
43*80 3278 model 4
32*80 3278 model 3
24*80 3278 model 2.
Emulation of the 3270 terminal
is done in the UNIX process. This emula-
tion involves mapping 3270-style commands from the host into
appropriate
sequences to control the user’s terminal screen.
Tn3270 uses curses(3)
and the /usr/share/misc/termcap file to do this. The
emulation also in-
volves simulating the special 3270 keyboard keys (program
function keys,
etc.) by mapping sequences of keystrokes from the ASCII
keyboard into
appropriate 3270 control strings. This mapping is terminal
dependent and
is specified in a description file, /usr/share/misc/map3270,
(see
map3270(5)) or in an environment variable MAP3270 (and, if
necessary,
MAP3270A, MAP3270B, and so on - see mset(1)). Any special
function keys
on the ASCII keyboard are used whenever possible. If an
entry for the
user’s terminal is not found, tn3270 looks for an
entry for the terminal
type unknown. If this is not found, tn3270 uses a default
keyboard map-
ping (see map3270(5)).
The first character of each
special keyboard mapping sequence is either
an ASCII escape (ESC), a control character, or an ASCII
delete (DEL). If
the user types an unrecognized function key sequence, tn3270
sends an
ASCII bell (BEL), or a visual bell if defined in the
user’s termcap en-
try, to the user’s terminal and nothing is sent to the
IBM host.
If tn3270 is invoked without
specifying a remote host system name, it en-
ters local command mode, indicated by the prompt
‘‘tn3270> ’’. In this
mode, tn3270 accepts and executes all the commands of
telnet(1), plus
one additional command:
transcom Specify UNIX command
for IBM 4994 style transparent mode
processing.
Tn3270 command mode may also be
entered, after connecting to a host, by
typing a special escape sequence. If tn3270 has succeeded in
negotiating
3270 mode with the remote host, the escape sequence will be
as defined by
the map3270 (see map3270(5)) entry for the user’s
terminal type (typi-
cally control-C); otherwise the escape sequence will
initially be set to
the single character ‘^]’ (control right square
bracket).
While in command mode, any host
login session is still alive but tem-
porarily suspended. The host login session may be resumed by
entering an
empty line (press the RETURN key) in response to the command
prompt. A
session may be terminated by logging off the foreign host,
or by typing
‘‘quit’’ or
‘‘close’’ while in local command
mode.
FILES
/usr/share/misc/termcap
/usr/share/misc/map3270
NOTES
The IBM 4994 style transparent mode command is invoked when
tn3270 re-
ceives IBM 4994 style transparent output from the remote
host. Output
and input pipes are created for communication between the
two processes.
The pipes are closed when a 3270 clear command is received
from the re-
mote hosts, signaling the end of transparent mode output.
Transparent
mode is necessary for sending ASCII control characters over
the 3270 ter-
minal connection; ASCII graphics terminal support is
accomplished this
way. Developers of transcom commands should note that the
transcom stdin
pipe end will be in CBREAK mode, with ECHO and CRMOD turned
off.
ENVIRONMENT
Tn3270 checks the following environment variables: TERM,
MAP3270,
MAP3270[A...]. Information on these can be found in mset(1).
Tn3270 also
checks SHELL, KEYBD and API3270.
SEE ALSO
mset(1), telnet(1), curses(3), termcap(3), termcap(5),
map3270(5),
"Yale ASCII Terminal
Communication", System II Program
Description/Operator’s Manual, IBM SB30-1911.
HISTORY
The tn3270 command appeared in 4.3BSD.
BUGS
Tn3270 is slow and uses system resources prodigiously.
Not all 3270 functions are supported, nor all Yale enhancements.
Error conditions (attempting to
enter data in a protected field, for ex-
ample) should cause a message to be sent to the user’s
terminal instead
of just ringing a bell.
4.3 Berkeley Distribution April 18, 1994 3