|
|
| |
c3270(1) |
FreeBSD General Commands Manual |
c3270(1) |
c3270 - curses-based IBM host access tool
c3270 [options] [host]
c3270 [options] session-file.c3270
c3270 opens a telnet connection to an IBM host in a console window. It
implements RFCs 2355 (TN3270E), 1576 (TN3270) and 1646 (LU name selection),
and supports IND$FILE file transfer. If the console is capable of displaying
colors, then c3270 emulates an IBM 3279. Otherwise, it emulates a 3278.
The full syntax for host is:
[prefix:]...[LUname@]hostname[:port][=accept]
Prepending a P: onto hostname causes the connection
to go through the telnet-passthru service rather than directly to the
host. See PASSTHRU below.
Prepending an S: onto hostname removes the
"extended data stream" option reported to the host. See -tn
below for further information.
Prepending an N: onto hostname turns off TN3270E
support for the session.
Prepending an L: onto hostname causes c3270
to first create a TLS tunnel to the host, and then create a TN3270 session
inside the tunnel. (This function is supported only if c3270 was
built with TLS support). Note that TLS-encrypted sessions using the TELNET
START-TLS option are negotiated with the host automatically; for these
sessions the L: prefix should not be used.
Prepending a Y: onto hostname causes c3270 to
skip validation of host TLS certificates. This overrides any other
configuration or command-line options.
Prepending an A: onto hostname is equivalent to
setting the -nvt option; it forces an NVT-mode session instead of a
3270-mode session.
A specific Logical Unit (LU) name to use may be specified by
prepending it to the hostname with an `@'. Multiple LU names
to try can be separated by commas. An empty LU can be placed in the list
with an extra comma. (Note that the LU name is used for different purposes
by different kinds of hosts. For example, CICS uses the LU name as the
Terminal ID.)
The hostname may optionally be placed inside square-bracket
characters `[' and `]'. This will prevent any colon `:'
characters in the hostname from being interpreted as indicating option
prefixes or port numbers. This allows numeric IPv6 addresses to be used as
hostnames.
On systems that support the forkpty library call, the
hostname may be replaced with -e and a command string. This
will cause c3270 to connect to a local child process, such as a
shell.
The port to connect to defaults to telnet. This can be
overridden with the -port option, or by appending a port to
the hostname with a colon `:'. (For compatability with
previous versions of c3270 and with tn3270(1), the port
may also be specified as a second, separate argument.)
An optional accept name (a hostname to accept in the host's TLS
certificate) may be specified by appending it to the hostname with an equals
sign (`='). The accept name can also be specified with the
-accepthostname option.
c3270 understands the following options:
- -accepthostname name
- Specifies a particular hostname to accept when validating the name
presented in the server SSL certificate, instead of comparing to the name
used to make the connection.
- -allbold
- Forces all characters to be displayed in bold. This helps with PC consoles
which display non-bold characters in unreadably dim colors. All-bold mode
is the default for color displays, but not for monochrome displays.
- -altscreen
rowsxcols=
init_string
- Defines the dimensions and escape sequence for the alternate (132-column)
screen mode. See SCREEN SIZE SWITCHING, below.
- -cadir directory
- Specifies a directory containing CA (root) certificates to use when
verifying a certificate provided by the host. (OpenSSL only)
- -cafile filename
- Specifies a PEM-format file containing CA (root) certificates to use when
verifying a certificate provided by the host. (OpenSSL only)
- -cbreak
- Causes c3270 to operate in cbreak mode, instead of
raw mode. In cbreak mode, the TTY driver will properly
process XOFF and XON characters, which are required by some terminals for
proper operation. However, those characters (usually ^S and ^Q), as well
as the characters for interrupt, quit, and lnext
(usually ^C, ^\ and ^V respectively) will be seen by c3270 only if
preceded by the lnext character. The susp character (usually
^Z) cannot be seen by c3270 at all.
- -certfile filename
- Specifies a file containing a client certificate to provide to the host.
The default file type is PEM.
- -clientcert name
- Specifies the name of a client certificate to provide to the host. (MacOS
only)
- -certfiletype type
- Specifies the type of the certificate file specified by -certfile.
Type can be pem or asn1. (OpenSSL only)
- -chainfile filename
- Specifies a certificate chain file in PEM format, containing a certificate
to provide to the host, as well as one or more intermediate certificates
and the CA certificate used to sign that certificate. If -chainfile
is specified, it overrides -certfile. (OpenSSL only)
- -clear toggle
- Sets the initial value of toggle to false.
- -codepage name
- Specifies an EBCDIC host code page.
- -connecttimeout seconds
- Specifies the time that c3270 will wait for a host connection to
complete.
- -defaultfgbg
- Causes c3270 to use the terminal's default foreground color instead of the
curses color black, and the terminal's default background color
instead of the curses color white. This is helpful for emulators
such as gnome-terminal whose representation of a black background
is a murky gray, and for emulators configured to use black text on a white
background. It is set automatically if the environment variable
COLORTERM is set to gnome-terminal. It is available only if
c3270 was compiled with a version of ncurses that supports default
colors, if the emulator supports default colors, and if the
termcap/terminfo entry indicates this capability.
- -defscreen
rowsxcols=
init_string
- Defines the dimensions and escape sequence for the default (80-column)
screen mode. See SCREEN SIZE SWITCHING, below.
- -devname name
- Specifies a device name (workstation ID) for RFC 4777 support.
- -hostsfile file
- Uses file as the hosts file, which allows aliases for host names
and scripts to be executed at login. See ibm_hosts(1) for
details.
- -httpd [addr:]port
- Specifies a port and optional address to listen on for HTTP connections.
Addr can be specified as `*' to indicate 0.0.0.0; the default is
127.0.0.1. IPv6 numeric addresses must be specified inside of square
brackets, e.g., [::1]:4080 to specify the IPv6 loopback address and TCP
port 4080.
- Note that this option is mutually-exclusive with the -scriptport
option
- -keyfile filename
- Specifies a file containing the private key for the certificate file
(specified via -certfile or -chainfile). The default file
type is PEM. (OpenSSL only)
- -keyfiletype type
- Specifies the type of the private key file specified by -keyfile.
Type can be pem or asn1. (OpenSSL only)
- -keypasswd type:value
- Specifies the password for the private key file (OpenSSL) or client
certificate file (MacOS), if it is encrypted. The argument can be
file:filename, specifying that the password is in a file, or
string:string, specifying the password on the command-line
directly. If the private key file is encrypted and no -keypasswd
option is given, the password will be prompted for interactively.
- -keymap name
- Specifies a keyboard map to be found in the resource
c3270.keymap.name or the file name. See KEYMAPS below
for details.
- -km name
- Specifies the local encoding method for multi-byte text. name is an
encoding name recognized by the ICU library. (Supported only when c3270 is
compiled with DBCS support, and necessary only when c3270 cannot figure it
out from the locale.)
- -loginmacro Action(arg...) ...
- Specifies a macro to run at login time.
- -model name
- The model of 3270 display to be emulated. The model name is in two parts,
either of which may be omitted:
- The first part is the base model, which is either 3278 or
3279. 3278 specifies a monochrome (green on black) 3270
display; 3279 specifies a color 3270 display.
- The second part is the model number, which specifies the number of
rows and columns. Model 4 is the default.
Model Number |
Columns |
Rows |
2 |
80 |
24 |
3 |
80 |
32 |
4 |
80 |
43 |
5 |
132 |
27 |
- Note: Technically, there is no such 3270 display as a 3279-4 or 3279-5,
but most hosts seem to work with them anyway.
- The default model for a color display is 3279-4. For a monochrome
display, it is 3278-4.
- -mono
- Prevents c3270 from using color, ignoring any color capabilities
reported by the terminal.
- -noprompt
- An alias for -secure.
- -noverifycert
- For TLS connections, do not verify the host certificate.
- -nvt
- Start in NVT mode instead of waiting for the host to send data, and make
the default terminal type xterm.
- -oversize colsxrows
- Makes the screen larger than the default for the chosen model number. This
option has effect only in combination with extended data stream support
(controlled by the "c3270.extended" resource), and only if the
host supports the Query Reply structured field. The number of columns
multiplied by the number of rows must not exceed 16383 (3fff hex), the
limit of 14-bit 3270 buffer addressing.
- It can also be specified as auto, which causes c3270 to fill
the entire terminal or console window.
- -port n
- Specifies a different TCP port to connect to. n can be a name from
/etc/services like telnet, or a number. This option changes
the default port number used for all connections. (The positional
parameter affects only the initial connection.)
- -proxy
type:host[:port]
- Causes c3270 to connect via the specified proxy, instead of using a
direct connection. The host can be an IP address or hostname. The
optional port can be a number or a service name. For a list of
supported proxy types, see PROXY below.
- -printerlu luname
- Causes c3270 to automatically start a pr3287 printer
session. If luname is ".", then the printer session will
be associated with the interactive terminal session (this requires that
the host support TN3270E). Otherwise, the value is used as the explicit LU
name to associate with the printer session.
- -reconnect
- Causes c3270 to automatically reconnect to the host if it ever
disconnects. This option has effect only if a hostname is specified on the
command line.
- -rv
- Switches c3270 from a white-on-black display to a black-on-white
display.
- -sl n
- Specifies that n lines should be saved for scrolling back. The
default is 4096.
- -scriptport [addr:]port
- Specifies a port and optional address to listen on for scripting
connections. Addr can be specified as `*' to indicate 0.0.0.0; the
default is 127.0.0.1. IPv6 numeric addresses must be specified inside of
square brackets, e.g., [::1]:4081 to specify the IPv6 loopback address and
TCP port 4081.
- Note that this option is mutually-exclusive with the -httpd option
- -scriptportonce
- Allows c3270 to accept only one script connection. When that connection is
broken, c3270 will exit.
- -secure
- Disables the interactive c3270> prompt. When used, a hostname
must be provided on the command line.
- -set toggle
- Sets the initial value of toggle to true.
- -socket
- Causes the emulator to create a Unix-domain socket when it starts, for use
by script processes to send actions to the emulator. The socket is named
/tmp/x3sck.pid. The -p option of x3270if
causes it to use this socket, instead of pipes specified by environment
variables.
- -tn name
- Specifies the terminal name to be transmitted over the telnet connection.
The default name is IBM-model_name-E, for example,
IBM-3279-4-E for a color display, or IBM-3278-4-E for a
monochrome display.
- Some hosts are confused by the -E suffix on the terminal name, and
will ignore the extra screen area on models 3, 4 and 5. Prepending an
S: on the hostname, or setting the "c3270.extended"
resource to "false", removes the -E from the terminal
name when connecting to such hosts.
- The name can also be specified with the "c3270.termName"
resource.
- -trace
- Turns on data stream and event tracing at startup. The default trace file
name is /tmp/x3trc.pid.
- -tracefile file
- Specifies a file to save data stream and event traces into. If the name
starts with `>>', data will be appended to the file.
- -tracefilesize size
- Places a limit on the size of a trace file. If this option is not
specified, or is specified as 0 or none, the trace file size
will be unlimited. The minimum size is 64 Kbytes. The value of size
can have a K or M suffix, indicating kilobytes or megabytes
respectively. When the trace file reaches the size limit, it will be
renamed with a `-' appended and a new file started.
- -user name
- Specifies the user name for RFC 4777 support.
- -utf8
- Forces the local codeset to be UTF-8, ignoring the locale or Windows
codepage.
- -v
- Display the version and build options for c3270 and exit.
- -verifycert
- For TLS connections, verify the host certificate, and do not allow the
connection to complete unless it can be validated. (This is the default
setting.) This option is overridden by a Y: prepended to the
hostname when connecting.
- -xrm "c3270.resource: value"
- Sets the value of the named resource to value. Resources
control less common c3270 options, and are defined under RESOURCES
below.
If the terminal that c3270 is running on has at least one more row that
the 3270 model requires (e.g., 25 rows for a model 2), c3270 will
display a status line. The c3270 status line contains a variety of
information. From left to right, the fields are:
- comm status
- The first symbol is always a 4. If c3270 is in TN3270E mode,
the second symbol is a B; otherwise it is an A. If
c3270 is in SSCP-LU mode, the third symbol is an S.
Otherwise it is blank.
- keyboard lock
- If the keyboard is locked, an "X" symbol and a message field
indicate the reason for the keyboard lock.
- typeahead
- The letter "T" indicates that one or more keystrokes are in the
typeahead buffer.
- temporary keymap
- The letter "K" indicates that a temporary keymap is in
effect.
- reverse
- The letter "R" indicates that the keyboard is in reverse field
entry mode.
- insert mode
- The letter "I" indicates that the keyboard is in insert
mode.
- printer session
- The letter "P" indicates that a pr3287 session is
active.
- secure connection
- A green letter "S" indicates that the connection is secured via
TLS.
- LU name
- The LU name associated with the session, if there is one.
- cursor position
- The cursor row and column are optionally displayed, zero padded and
separated by a "/". Location 001/001 is at the upper left, which
is different from the row and columns parameters used with various
actions, where the upper left corner is row 0, column 0.
Here is a complete list of basic c3270 actions. Script-specific actions are
described on the x3270-script(1) manual page.
Actions marked with an asterisk (*) may block, sending data to the
host and possibly waiting for a response.
+2 BackSpace() |
move cursor left (or send ASCII BS) |
+2 BackTab() |
tab to start of previous input field |
+2 Charset(charset) |
change host code page |
+2 CircumNot() |
input "^" in NVT mode, or "notsign" in 3270
mode |
+2 Compose() |
next two keys form a special symbol |
+2 *Connect(host) |
connect to host |
+2 *CursorSelect() |
Cursor Select AID |
+2 Delete() |
delete character under cursor (or send ASCII DEL) |
+2 DeleteField() |
delete the entire field |
+2 DeleteWord() |
delete the current or previous word |
+2 *Disconnect() |
disconnect from host |
+2 Down() |
move cursor down |
+2 Dup()([failonerror|nofailonerror]) |
duplicate field |
+2 *Enter() |
Enter AID (or send ASCII CR) |
+2 Erase() |
erase previous character (or send ASCII BS) |
+2 EraseEOF() |
erase to end of current field |
+2 EraseInput() |
erase all input fields |
+2 Escape() |
escape to c3270> prompt |
+2 FieldEnd() |
move cursor to end of field |
+2 FieldMark()([failonerror|nofailonError]) |
mark field |
+2 HexString(hex_digits) |
insert control-character string |
+2 Home() |
move cursor to first input field |
+2 Insert() |
set insert mode |
+2 *Interrupt() |
send TELNET IP to host |
+2 Keypad() |
Display pop-up keypad |
+2 Key(keysym[,failonerror|nofailonerror]) |
insert key keysym |
+2 Key(0xxx[,failonError|nofailonerror]) |
insert key with character code xx |
+2 Left() |
move cursor left |
+2 Left2() |
move cursor left 2 positions |
+2 Menu() |
Display menu bar |
+2 MonoCase() |
toggle uppercase-only mode |
+2 MoveCursor(row,col) |
move cursor to zero-origin (row,col) |
+2 Newline() |
move cursor to first field on next line (or send ASCII LF) |
+2 NextWord() |
move cursor to next word |
+2 *PA(n) |
Program Attention AID (n from 1 to 3) |
+2 *PF(n) |
Program Function AID (n from 1 to 24) |
+2 PreviousWord() |
move cursor to previous word |
+2 PasteString(hex_digits) |
insert string using pasting behavior |
+2 Printer(start[,lu]|stop) |
start or stop printer session |
+2 PrintText(command) |
print screen text on printer |
+2 Redraw() |
redraw window |
+2 Reset() |
reset locked keyboard |
+2 Right() |
move cursor right |
+2 Right2() |
move cursor right 2 positions |
+2 *Script(command[,arg...]) |
run a script |
+2 Scroll(forward|backward) |
scroll screen |
+2 *String(string) |
insert string (simple macro facility) |
+2 Tab() |
move cursor to next input field |
+2 Toggle(option[,set|clear]) |
toggle an option |
+2 ToggleInsert() |
toggle insert mode |
+2 ToggleReverse() |
toggle reverse-input mode |
+2 *Transfer(option=value...') |
file transfer |
Any of the above actions may be entered at the c3270>
prompt; these actions are also available for use in keymaps (see KEYMAPS).
Command names are case-insensitive. Parameters can be specified with
parentheses and commas, e.g.:
PF(1)
or with spaces, e.g.:
PF 1
Parameters can be quoted with double-quote characters, to allow spaces, commas,
and parentheses to be used.
c3270 also supports the following interactive actions:
- Help()
- Displays a list of available actions.
- ScreenTrace()
- Turns screen tracing (saving screen images to a file) on or off. The
action ScreenTrace(on) enables screen tracing; the action
ScreenTrace(off) disables it. After on, a filename may be
specified to override the default trace file name of
/tmp/x3scr.pid. The keyword on can also be followed
by the keyword printer and an optional print command to direct
screen traces directly to the printer.
- Show()
- Displays statistics and settings.
- Trace()
- Turns tracing on or off. The action Trace(on) enables data stream
and keyboard event tracing; the action Trace(off) disables it. The
qualifier data or keyboard can be specified before on
or off to enable or disable a particular trace. After on, a
filename may be specified to override the default trace file name of
/tmp/x3trc.pid.
Note that certain parameters to c3270 actions (such as the names
of files and keymaps) are subject to substitutions:
The character ~ at the beginning of a string is replaced
with the user's home directory. A ~ character followed by a username
is replaced with that user's home directory.
Environment variables are substituted using the Unix shell
convention of $name or ${name}.
Two special pseudo-environment variables are supported.
${TIMESTAMP} is replaced with a microsecond-resolution timestamp; ${UNIQUE}
is replaced with a string guaranteed to make a unique filename (the process
ID optionally followed by a dash and a string of digits). ${UNIQUE} is used
to form trace file names.
The -keymap option or the c3270.keymap resource allow a custom
keymap to be specified. If the option -keymap xxx is given (or
the c3270.keymap resource has the value xxx), c3270 will
look for a resource named c3270.keymap.xxx. If no resource
definition is found, it will look for a file named xxx.
Multiple keymaps may be specified be separating their names with
commas. Definitions in later keymaps supercede those in earlier keymaps.
In addition, separate keymaps may be defined that apply only in
3270 mode or NVT mode. For example, the resource definition
c3270.keymap.xxx.nvt or the file xxx.nvt
will augment the definition of keymap xxx in NVT mode. Similarly, the
resource definition c3270.keymap.xxx.3270 or the file
xxx.3270 will augment the definition of keymap xxx in
3270 mode.
Temporary keymaps can also be added or removed while c3270 is
running with the Keymap action. See x3270-script(1) for
details.
Each line (rule) in a keymap specifies actions to perform when a
particular key or sequence of keys is pressed. Keymap rules have the
following syntax:
[Meta][Ctrl]<Key>key...:
action[(param[,...])] ...
Here is a sample keymap definition from a file:
! Lines beginning with ! are ignored and can
! occur anywhere.
! Definition of keymap xxx
! When Alt-c is pressed, clear the screen.
Alt<Key>c: Clear()
! When PageUp is pressed, send PF7 to the host.
<Key>PPAGE: PF(7)
! When Ctrl-a is pressed, then F1, send PF13
! to the host.
Ctrl<Key>a <Key>F1: PF(13)
Here is the same definition as a resource:
! Lines beginning with ! are ignored, but NOT
! within a definition.
! Note that the \ is required at the end of the
! first line, and \n\ is
! required at the end of every other line except
! the last.
! Definition of keymap xxx
c3270.keymap.xxx: \
Alt<Key>c: Clear() \n\
<Key>PPAGE: PF(7) \n\
Ctrl<Key>A <Key>F1: PF(13)
The optional Alt or Ctrl modifiers specify that the
Alt and Ctrl keys are pressed along with the specified
key, respectively. Key is either an ISO 8859-1 symbol name,
such as equal for `=' and a for `a', or a symbolic
ncurses key name, such as UP. More than one key can be
specified, indicating that a sequence of keys must be pressed in order for
the rule to be matched. The action is an action from the ACTIONS list
above. More than one action may be specified; they will be executed
in order.
Keymap entries are case-sensitive and modifier-specific. This
means that a keymap for the b key will match only a lowercase
b. Actions for uppercase B, or for Alt-B, must be
specified separately.
The base keymap is:
Key |
Action |
Ctrl<Key>] |
Escape() |
Ctrl<Key>a Ctrl<Key>a |
Key(0x01) |
Ctrl<Key>a Ctrl<Key>] |
Key(0x1d) |
Ctrl<Key>a <Key>Tab |
BackTab() |
Ctrl<Key>a <Key>c |
Clear() |
Ctrl<Key>a <Key>e |
Escape() |
Ctrl<Key>a <Key>r |
Reset() |
Ctrl<Key>a <Key>k |
Keypad() |
Ctrl<Key>a <Key>l |
Redraw() |
Ctrl<Key>a <Key>m |
Compose() |
Ctrl<Key>a <Key>n |
Menu() |
Ctrl<Key>a <Key>p |
PrintText() |
Ctrl<Key>a <Key>^ |
Key(notsign) |
Ctrl<Key>k |
Keypad() |
Ctrl<Key>n |
Menu() |
<Key>UP |
Up() |
<Key>DOWN |
Down() |
<Key>LEFT |
Left() |
<Key>RIGHT |
Right() |
<Key>F(n) |
PF(n) |
Ctrl<Key>a <Key>F(n) |
PF(n+12) |
Ctrl<Key>a <Key>1 |
PA(1) |
Ctrl<Key>a <Key>2 |
PA(2) |
Ctrl<Key>a <Key>3 |
PA(3) |
<Key>PPAGE |
Scroll(backward) |
<Key>NPAGE |
Scroll(forward) |
The base 3270-mode keymap adds:
Key |
Action |
Ctrl<Key>c |
Clear() |
Ctrl<Key>d |
Dup() |
Ctrl<Key>f |
FieldMark() |
Ctrl<Key>i |
Tab() |
Ctrl<Key>l |
Redraw() |
Ctrl<Key>r |
Reset() |
Ctrl<Key>u |
DeleteField() |
<Key>BackSpace |
BackSpace() |
<Key>Return |
Enter() |
<Key>Tab |
Tab() |
<Key>Linefeed |
Newline() |
<Key>BACKSPACE |
BackSpace() |
<Key>DC |
Delete() |
<Key>HOME |
Home() |
<Key>IC |
ToggleInsert() |
Some keyboards do not have a Meta key. Instead, they have an Alt
key. Sometimes this key acts as a proper Meta key, that is, it is a
modifier key that sets the high-order bit (0x80) in the code that is
transmitted for each key. Other keyboards send a two-character sequence when
the Alt key is pressed with another key: the Escape character (0x1b),
followed by the code for the other key.
The resource c3270.metaEscape and the termcap km
attribute control how c3270 will interpret these sequences. When
c3270.metaEscape is set to true, or when
c3270.metaEscape is set to auto and the termcap km
attribute is set, the keyboard is assumed to have a separate Meta
key. The Escape key can be used as an ordinary data key and has no special
meaning.
When c3270.metaEscape is set to true, or when
c3270.metaEscape is set to auto and the termcap km
attribute is not set, the keyboard is assumed to use the Escape character as
a prefix to indicate that the following character is supposed to have the
high-order bit set. When c3270 sees an Escape character from the
keyboard, it sets a short timeout. If another character arrives before the
timeout expires, then c3270 will combine the two characters, setting
the high-order bit of the second. In an event trace file, the combined
character is listed as derived. In a keymap, only the combined
character or the Meta prefix may be used. The Escape key can still be
used by itself, but only if there is a short pause before pressing another
key.
The default value for c3270.metaEscape is auto.
The Transfer() action implements IND$FILE file transfer. This
action requires that the IND$FILE program be installed on the IBM host,
and that the 3270 cursor be located in a field that will accept a TSO or
VM/CMS command.
The Transfer() action can be entered at the
c3270> prompt with no parameters, which will cause it to prompt
interactively for the file names and options. It can also be invoked with
parameters to define the entire transfer.
Because of the complexity and number of options for file transfer,
the parameters to the Transfer() action can take the unique form of
option=value. They can also be given with their parameters
separately. Options can appear in any order. Note that if the value
contains spaces (such as a VM/CMS file name), then the entire parameter must
be quoted, e.g., "hostfile=xxx foo a". With sequential
options, this would be hostfile,"xxx foo a". The options
are:
Option |
Required? |
Default |
Other Values |
direction |
No |
receive |
send |
hostfile |
Yes |
|
|
localfile |
Yes |
|
|
host |
No |
tso |
vm, cics |
mode |
No |
ascii |
binary |
cr |
No |
remove |
add, keep |
remap |
No |
yes |
no |
exist |
No |
keep |
replace, append |
recfm |
No |
|
fixed, variable, undefined |
lrecl |
No |
|
|
blksize |
No |
|
|
allocation |
No |
|
tracks, cylinders, avblock |
primaryspace |
Sometimes |
|
|
secondaryspace |
No |
|
|
avblock |
Sometimes |
|
|
buffersize |
No |
4096 |
|
The option details are as follows.
- direction
- send to send a file to the host, receive to receive a file
from the host.
- hostfile
- The name of the file on the host.
- localfile
- The name of the file on the local workstation.
- host
- The type of host (which dictates the form of the IND$FILE command):
tso (the default), vm or cics.
- mode
- Use ascii (the default) for a text file, which will be translated
between EBCDIC and ASCII as necessary. Use binary for non-text
files.
- cr
- Controls how newline characters are handled when transferring
mode=ascii files. remove (the default) strips newline
characters in local files before transferring them to the host. add
adds newline characters to each host file record before transferring it to
the local workstation. keep preserves newline characters when
transferring a local file to the host.
- remap
- Controls text translation for mode=ascii files. The value
yes (the default) causes c3270 to remap the text to ensure maximum
compatibility between the workstation's character set and encoding and the
host's EBCDIC code page. The value no causes c3270 to pass the text
to or from the host as-is, leaving all translation to the IND$FILE
program on the host.
- exist
- Controls what happens when the destination file already exists.
keep (the default) preserves the file, causing the
Transfer() action to fail. replace overwrites the
destination file with the source file. append appends the source
file to the destination file.
- recfm
- Controls the record format of files created on the host. (TSO and VM hosts
only.) fixed creates a file with fixed-length records.
variable creates a file with variable-length records.
undefined creates a file with undefined-length records (TSO hosts
only). The lrecl option controls the record length or maximum
record length for recfm=fixed and recfm=variable files,
respectively.
- lrecl
- Specifies the record length (or maximum record length) for files created
on the host. (TSO and VM hosts only.)
- blksize
- Specifies the block size for files created on the host. (TSO and VM hosts
only.)
- allocation
- Specifies the units for the primaryspace and secondaryspace
options: tracks, cylinders or avblock. (TSO hosts
only.)
- primaryspace
- Primary allocation for a file. The units are given by the
allocation option. Required when the allocation is specified
as something other than default. (TSO hosts only.)
- secondaryspace
- Secondary allocation for a file. The units are given by the
allocation option. (TSO hosts only.)
- avblock
- Average block size, required when allocation specifies
avblock. (TSO hosts only.)
- buffersize
- Buffer size for DFT-mode transfers. Can range from 256 to 32768. Larger
values give better performance, but some hosts may not be able to support
them.
There are also resources that control the default values for each
of the file transfer parameters. These resources have the same names as the
Transfer() keywords, but with ft prepended and the option name
capitalized. E.g., the default for the mode keyword is the
c3270.ftMode resource.
The PrintText() produces screen snapshots in a number of different forms.
The default form wth no arguments sends a copy of the screen to the default
printer. A single argument is the command to use to print, e.g., lpr.
Multiple arguments can include keywords to control the output of
PrintText():
- file,filename
- Save the output in a file.
- html
- Save the output as HTML. This option implies file.
- rtf
- Save the output as RichText. This option implies file. The font
defaults to Courier New and the point size defaults to 8. These can
be overridden by the printTextFont and printTextSize
resources, respectively.
- string
- Return the output as a string. This can only be used from scripts.
- modi
- Render modified fields in italics.
- caption,text
- Add the specified text as a caption above the output. Within
text, the special sequence %T% will be replaced with a
timestamp.
- command,command
- Directs the output to a command. This allows one or more of the other
keywords to be specified, while still sending the output to the printer.
There are several types of script functions available.
- The String Action
- The simplest method for scripting is provided via the String()
action, which can be bound to any key in a keymap. The arguments to
String() are one or more double-quoted strings which are inserted
directly as if typed. The C backslash conventions are honored as follows.
(Entries marked * mean that after sending the AID code to the host,
c3270 will wait for the host to unlock the keyboard before further
processing the string.)
\b |
Left() |
\exxxx |
EBCDIC character in hex |
\f |
Clear()* |
\n |
Enter()* |
\pan |
PA(n)* |
\pfnn |
PF(nn)* |
\r |
Newline() |
\t |
Tab() |
\T |
BackTab() |
\uxxxx |
Unicode character in hex |
\xxxxx |
Unicode character in hex |
- Note that the numeric values for the \e, \u and \x sequences can be
abbreviated to 2 digits. Note also that EBCDIC codes greater than 255 and
some Unicode character codes represent DBCS characters, which will work
only if c3270 is built with DBCS support and the host allows DBCS input in
the current field.
- An example keymap entry would be:
Meta<Key>p: String("probs
clearrdr\n")
- Note: The strings are in ASCII and converted to EBCDIC, so beware
of inserting control codes.
- There is also an alternate form of the String() action,
HexString(), which is used to enter non-printing data. The argument
to HexString() is a string of hexadecimal digits, two per
character. A leading 0x or 0X is optional. In 3270 mode, the hexadecimal
data represent EBCDIC characters, which are entered into the current
field. In NVT mode, the hexadecimal data represent ASCII characters, which
are sent directly to the host.
- The Script Action
- This action causes c3270 to start a child process which can execute
c3270 actions. Standard input and output from the child process are
piped back to c3270. The Script() action is fully documented
in x3270-script(1).
c3270 allows the direct entry of accented letters and special symbols.
Pressing and releasing the "Compose" key, followed by two other
keys, causes entry of the symbol combining those two keys. For example,
"Compose" followed by the "C" key and the ","
(comma) key, enters the "C-cedilla" symbol. A C on the status line
indicates a pending composite character.
The mappings between these pairs of ordinary keys and the symbols
they represent is controlled by the "c3270.composeMap" resource;
it gives the name of the map to use. The maps themselves are named
"c3270.composeMap.name". The default is "latin1",
which gives mappings for most of the symbols in the ISO 8859-1 Latin-1
character set that are not in the 7-bit ASCII character set.
Note: The default keymap defines Meta<Key>m as the
"Compose" key. You may set up your own "Compose" key
with a keymap that maps some other keysym onto the Compose()
action.
c3270 supports associated printer sessions via the pr3287(1) program. The
Printer() action is used to start or stop a pr3287 session.
The action Printer(Start) starts a printer session,
associated with the current LU. (This works only if the host supports
TN3270E.)
The action Printer(Start,lu) starts a printer
session, associated with a specific lu.
The action Printer Stop stops a printer session.
The resource c3270.printer.options specifies extra options,
such as -trace to pass to pr3287.
See pr3287(1) for further details.
The resource c3270.printerLu controls automatic printer
session start-up. If it is set to `.', then whenever a login session
is started, a printer session will automatically be started, associated with
the login session. If it is set an LU name, then the automatic printer
session will be associated with the specified LU.
c3270 supports the Sun telnet-passthru service provided by the
in.telnet-gw server. This allows outbound telnet connections through a
firewall machine. When a P: is prepended to a hostname, c3270
acts much like the itelnet(1) command. It contacts the machine named
internet-gateway at the port defined in /etc/services as
telnet-passthru (which defaults to 3514). It then passes the requested
hostname and port to the in.telnet-gw server.
The -proxy option or the c3270.proxy resource causes c3270 to use
a proxy server to connect to the host. The syntax of the option or resource
is:
type:[ username: password@] host[: port]
The supported values for type are:
Proxy Type |
Protocol |
Default Port |
http |
RFC 2817 HTTP tunnel (squid) |
3128 |
passthru |
Sun in.telnet-gw |
none |
socks4 |
SOCKS version 4 |
1080 |
socks5 |
SOCKS version 5 (RFC 1928) |
1080 |
telnet |
No protocol (just send connect host port) |
none |
The special types socks4a and socks5d can also be
used to force the proxy server to do the hostname resolution for the SOCKS
protocol. Note that only the http and socks5 proxies support a
username and password.
When running as a 3270 Model 5, c3270 can take advantage of terminals
that can switch between 80 and 132 column modes.
Because the curses library does not support mode switching, the
escape sequences and resulting screen dimensions must be specified
explicitly to c3270. These are specified with the -altscreen
and -defscreen command-line options, or the altScreen and
defScreen resources. -altscreen or altScreen defines
the alternate (132-column) mode; -defscreen or defScreen
defines the default (80-column) mode.
The syntax for the options and resources is
rowsxcols=init_string, where rows
and cols give the screen dimensions, and init_string is the
escape sequence to transmit to the terminal to enter that mode. For
defscreen, the minimum dimensions are 24 rows and 80 columns. For
altscreen, the minimum dimensions are 27 rows and 132 columns. Within
init_string, the usual escape sequences are supported (\E for escape,
\r, \b, etc.). For example, the init string for a 132-column xterm is:
- \E[?40h\E[?3h
Note: When defscreen and altscreen are specified,
the model number is always set to 5.
Certain c3270 options can be configured via resources. Resources are
defined in the file .c3270pro in the user's home directory, and by
-xrm options. The definitions are similar to X11 resources, and use a
similar syntax. The resources available in c3270 are:
Resource |
Default |
Option |
Purpose |
allBold |
Auto |
-allbold |
Display all characters bold |
altScreen |
|
-altscreen |
132-col screen definition |
blankFill |
False |
-set blankFill |
Blank Fill mode |
charset |
bracket |
-charset |
EBCDIC character set |
composeMap |
latin1 |
|
Name of composed-character map |
cursesColorForHostColorn |
(note 6) |
|
Color mapping |
cursesColorForDefault |
green |
|
Default color mapping |
cursesColorForIntensified |
red |
|
Default color mapping |
cursesColorForProtected |
blue |
|
Default color mapping |
cursesColorForProtectedIntensified |
white |
|
Default color mapping |
cursesKeymap |
True |
|
Set curses keymap option |
defScreen |
|
-defscreen |
80-col screen definition |
dbcsCgcsgid |
|
|
Override DBCS CGCSGID |
dsTrace |
False |
-trace |
Data stream tracing |
eof |
^D |
|
NVT-mode EOF character |
erase |
^H |
|
NVT-mode erase character |
extended |
True |
|
Use 3270 extended data stream |
eventTrace |
False |
-trace |
Event tracing |
hostsFile |
|
-hostsfile |
Host alias/macro file |
icrnl |
False |
|
Map CR to NL on NVT-mode input |
inlcr |
False |
|
Map NL to CR in NVT-mode input |
intr |
^C |
|
NVT-mode interrupt character |
keymap |
|
-keymap |
Keyboard map name |
keymap.foo |
|
|
Definition of keymap foo |
kill |
^U |
|
NVT-mode kill character |
lineWrap |
False |
-set lineWrap |
NVT line wrap mode |
lnext |
^V |
|
NVT-mode lnext character |
m3279 |
(note 1) |
-model |
3279 (color) emulation |
metaEscape |
Auto |
|
Interpret ESC-x as Meta-x |
mono |
(note 5) |
-mono |
Ignore terminal color capabilities |
monoCase |
False |
-set monoCase |
Mono-case mode |
noPrompt |
False |
-noprompt |
Disable c3270>-prompt mode |
numericLock |
False |
|
Lock keyboard for numeric field error |
oerrLock |
True |
|
Lock keyboard for input error |
oversize |
|
-oversize |
Oversize screen dimensions |
port |
telnet |
-port |
Non-default TCP port |
printer.* |
(note 4) |
|
Printer session config |
printerLu |
(note 4) |
|
Printer session config |
quit |
^\ |
|
NVT-mode quit character |
reconnect |
False |
-reconnect |
Automatically reconnect to host |
rprnt |
^R |
|
NVT-mode reprint character |
sbcsCgcsgid |
|
|
Override SBCS CGCSGID |
secure |
False |
|
Disable "dangerous" options |
termName |
(note 2) |
-tn |
TELNET terminal type string |
traceDir |
/tmp |
|
Directory for trace files |
traceFile |
(note 3) |
-tracefile |
File for trace output |
typeahead |
True |
|
Allow typeahead |
werase |
^W |
|
NVT-mode word-erase character |
Note 1: m3279 defaults to True if
the terminal supports color, False otherwise. It can be forced to
False with the proper -model option.
Note 2: The default terminal type string is constructed
from the model number, color emulation, and extended data stream modes.
E.g., a model 2 with color emulation and the extended data stream option
would be sent as IBM-3279-2-E. Note also that when TN3270E mode is
used, the terminal type is always sent as 3278, but this does not affect
color capabilities.
Note 3: The default trace file is x3trc.pid
in the directory specified by the traceDir resource.
Note 4: See PRINTER SUPPORT for details.
Note 5: mono defaults to false if the
terminal supports at least 8 colors and to true otherwise.
Note 6: The default curses color mappings for host colors 0
through 15 are: black, blue, red, magenta, green, cyan, yellow, white,
black, blue, yellow, blue, green, cyan, black and white.
In .c3270pro, lines are continued with a backslash
character.
-xrm options override definitions found in
.c3270pro. If more than one -xrm option is given for the same
resource, the last one on the command line is used.
/usr/local/lib/x3270/ibm_hosts
$HOME/.c3270pro
pr3287(1), s3270(1), x3270-script(1), x3270(1), telnet(1), tn3270(1)
Data Stream Programmer's Reference, IBM GA23-0059
Character Set Reference, IBM GA27-3831
RFC 1576, TN3270 Current Practices
RFC 1646, TN3270 Extensions for LUname and Printer Selection
RFC 2355, TN3270 Enhancements
Copyright 1993-2021, Paul Mattes.
Copyright 2004-2005, Don Russell.
Copyright 2004, Dick Altenbern.
Copyright 1990, Jeff Sparkes.
Copyright 1989, Georgia Tech Research Corporation (GTRC), Atlanta, GA
30332.
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
- *
- Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
- *
- 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.
- *
- Neither the names of Paul Mattes, Don Russell, Dick Altenbern, Jeff
Sparkes, GTRC nor the names of their contributors may be used to endorse
or promote products derived from this software without specific prior
written permission.
THIS SOFTWARE IS PROVIDED BY PAUL MATTES, DON RUSSELL, DICK
ALTENBERN, JEFF SPARKES AND GTRC "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 PAUL MATTES, DON RUSSELL, DICK ALTENBERN, JEFF SPARKES OR GTRC
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.
Visit the GSP FreeBSD Man Page Interface. Output converted with ManDoc. |