# s3270 Resources

Resources are used to configure s3270. Resources are named items with string, integer or Boolean values.

Resource definitions come from the following sources:

- Default values are compiled into s3270.
- If a session file foo.s3270 is specified on the command line, its contents are applied. These definitions override resource values defined by compiled-in defaults.
- Command-line options override all other resource definitions. If more than one command-line option sets a resource, the last one is used.

Many resources have their own command-line switches, which are listed below. Those that do not can still be set from the command-line via the -xrm command-line option. For example s3270.bsdTm can be set by the following command-line option:

         -xrm 's3270.bsdTm: true'

Note that -xrm is supported on all of the 3270 emulators, not just on x3270.

## Resource File Syntax

A resource file (session file) has the following syntax.

- Each definition consists of:

          s3270.resource-name: value

- Comment lines begin with !.
- Line continuation is indicated by a backshash (\) character at the end of a line.

## Alphabetical Resource List

Name: s3270.aidWait
Type: Boolean
Default: false
Command Line: -set aidWait , -clear aidWait
Description:

When true, s3270 will not block a script after executing an AID action (Enter, Clear, PF or PA). It is then script's responsibility to poll s3270's status until it shows that the keyboard is no longer unlocked.

Name: s3270.bindLimit
Type: Boolean
Default: true
Description:

When true, s3270 will restrict its screen dimensions to those specified in the BIND image sent by the host. If false, it will not.

Name: s3270.blankFill
Type: Boolean
Default: false
Command Line: -set blankFill , -clear blankFill
Description:

When true, in 3270 mode s3270 will automatically convert trailing blanks in a field to NULLs in order to insert a character, and will automatically convert leading NULLs to blanks so that input data is not squeezed to the left. This works around some of the quirkier behavior of real 3270 terminals.

Name: s3270.bsdTm
Type: Boolean
Default: false
Description:

Defines s3270's response to the TELNET DO TIMING MARK option. When set to false, s3270 will respond to DO TIMING MARK with WONT TIMING MARK, which is consistent with most modern TELNET clients. When true, s3270 will respond with WILL TIMING MARK, which is consistent with the old BSD telnet command and with previous versions of s3270. In either case, s3270 will never respond to a DONT TIMING MARK option.

Name: s3270.caDir
Type: String
Command Line: -cadir
Description:

Defines a directory containing CA (root) certificates, used to validate a certificate presented by the host during SSL negotiation. The default is determined by the OpenSSL library on your workstation.

Name: s3270.caFile
Type: String
Command Line: -cafile
Description:

Defines a PEM-format file containing CA (root) certificates, used to validate a certificate presented by the host during SSL negotiation.

Name: s3270.certFile
Type: String
Command Line: -certfile
Description:

Gives the name of a certificate file, provided to the host if requested during SSL negotiation. The default file format is PEM; it can be overridden by s3270.certFileType. The private key for the certificate is specified by s3270.keyFile. If s3270.chainFile is specified, it overrides s3270.certFile.

Name: s3270.certFileType
Type: String
Default: pem
Command Line: -certfiletype
Description:

Gives the type of the certificate file specified by s3270.certFile. The value can be pem or asn1.

Name: s3270.chainFile
Type: String
Command Line: -chainfile
Description:

Gives the name of a certificate chain file, provided to the host if requested during SSL negotiation. The file contains a PEM-format certificate, optionally followed by any intermediate certificates used to sign it, and the CA (root) certificate. The private key for the certificate is specified by s3270.keyFile. If s3270.chainFile is specified, it overrides s3270.certFile.

Name: s3270.charset
Type: String
Default: bracket
Command Line: -charset
Description:

This defines the host EBCDIC character set, that is, what glyph (image) is displayed for each EBCDIC code sent by the host, and what EBCDIC code is sent to the host for each character typed on the keyboard. This is more correctly referred to as the host code page.

To display the character sets supported by s3270, use the -v command-line option.

Name: s3270.color8
Type: Boolean
Default: false
Description:

If true, s3270 will respond to a Query(Color) with a list of 8 supported colors. If false, it will send a list of 16 colors. The 8-color setting is required for some hosts which abort a session if 16 colors are reported.

Name: s3270.confDir
Type: String
Default: /usr/local/etc/x3270
Description:

Defines the s3270 configuration directory, where s3270 will search for the ibm_hosts file by default. (See s3270.hostsFile.)

Name: s3270.dbcsCgcsgid
Type: String
Description:

Overrides the compiled-in value of the CGCSGID for the current host character set, which will be reported to the host in response to a Query(Character Sets). The value is an integer, which can be prefixed with '0x' to be in hexadecimal. The upper 16 bits are the GCSGID (character set) and the lower 16 bits are the CPGID (code page). This value applies only to the double-byte (DBCS) character set. Use s3270.sbcsCgcsgid for the single-byte (SBCS) character set.

Name: s3270.dftBufferSize
Type: Integer
Default: 4096
Description:

Specifies the default buffer size for DFT IND$FILE file transfers. This value can be overridden in the File Transfer dialog and by a parameter to the Transfer action.

Name: s3270.devName
Type: String
Command Line: -devname
Description:

Specifies the device name (workstation ID) sent in response to a TELNET NEW-ENVIRON sub-negotiation request, used by iSeries hosts (RFC 4777).

Name: s3270.dsTrace
Type: Boolean
Default: false
Command Line: -trace , -set dsTrace , -clear dsTrace
Description:

When true, s3270 writes a hexadecimal representation of all network traffic (and its interpretation) into a file, which defaults to /tmp/x3trc.pid. The directory prefix is defined by s3270.traceDir. If s3270.traceFile is defined, it gives the entire pathname and s3270.traceDir is ignored.

Name: s3270.eof
Type: String
Default: ^D
Description:

This setting is used only in NVT mode, and is similar in function to the stty parameter of the same name.

When connected in line-at-a-time mode (when s3270 gathers a line of input before forwarding it to the host), entering this character at the keyboard causes the current line of input to be forwarded to the host without a trailing CR/LF sequence.

Name: s3270.erase
Type: String
Default: ^?
Description:

This setting is used only in NVT mode, and is similar in function to the stty parameter of the same name.

When connected in line-at-a-time mode (s3270 gathers a line of input before forwarding it ot the host), entering this character at the keyboard will cause s3270 to discard the last character on the input line.

When connected in character-at-a-time mode (s3270 sends each keystroke to the host as it is entered), this is the character that will be sent to the host by the Erase action.

Name: s3270.eventTrace
Type: Boolean
Default: false
Command Line: -set eventTrace , -clear eventTrace
Description:

When true, s3270 traces information about keyboard and mouse events into a file. The default file name is /tmp/x3trc.pid. The directory prefix is defined by s3270.traceDir. If s3270.traceFile is defined, it gives the entire pathname and s3270.traceDir is ignored.

Name: s3270.extended
Type: Boolean
Default: false
Command Line: -extended
Description:

Deprecated resource -- replaced by s3270.model syntax

Indicates support for the 3270 Extended Data Stream.

Name: s3270.hostname
Type: String
Description:

Gives the name of the host to connect to. The name can include the usual options (prefixes to specify special connection options, LU names, and port). A hostname specified on the command line takes precedence over s3270.hostname.

The most common use of s3270.hostname is in session files, where a file is used to pass all of the options to establish a s3270 session.

Name: s3270.hostsFile
Type: String
Default: /usr/local/etc/x3270/ibm_hosts
Description:

The pathname of a file containing hostname aliases. The file can also be used to define a set of actions to perform when connecting to a host.

The format of the file is explained on the ibm_hosts manual page. The default pathname is actually ibm_hosts in the directory defined by s3270.confDir.

Name: s3270.icrnl
Type: Boolean
Default: true
Description:

This setting is used only in NVT mode, and is similar in function to the stty parameter of the same name. It controls whether input carriage returns are mapped to newlines.

Name: s3270.inlcr
Type: Boolean
Default: false
Description:

This setting is used only in NVT mode, and is similar in function to the stty parameter of the same name. It controls whether input newlines are mapped to carriage returns.

Name: s3270.intr
Type: String
Default: ^C
Description:

This setting is used only in NVT mode, and is similar in function to the stty parameter of the same name. When this character is typed on the keyboard, the TELNET IP (Interrupt Process) sequence is sent to the host.

Name: s3270.keyFile
Type: String
Command Line: -keyfile
Description:

Gives the name of a file containg the private key for the certificate specified by s3270.certFile or s3270.chainFile. The default file type is PEM; it can be overridden by s3270.keyFileType. If the private key is encrypted, the password is specified by s3270.keyPasswd.

Name: s3270.keyFileType
Type: String
Default: pem
Command Line: -keyfileType
Description:

Gives the type of the private key file specified by s3270.keyFile. The value can be pem or asn1.

Name: s3270.keyPasswd
Type: String
Command Line: -keypasswd
Description:

Gives the password for the private key file specified by s3270.keyFile, if it is encrypted. The value can take one of two forms. file:filename specifies that the password is in a file. string:string gives the password value in the resource itself.

Name: s3270.kill
Type: String
Default: ^U
Description:

This setting is used only in NVT mode, and is similar in function to the stty parameter of the same name.

When connected in line-at-a-time mode (when s3270 gathers a line of input before forwarding it to the host), entering this character at the keyboard causes the current input line to be erased.

When connected in character-at-a-time mode (when s3270 sends each keystroke to the host), this is the ASCII character that is sent to the host by the DeleteField action.

Name: s3270.lineWrap
Type: Boolean
Default: true
Command Line: -set lineWrap , -clear lineWrap
Description:

This setting is used only in NVT mode. When true, s3270 will automatically insert a CR/LF sequence when output reaches the end of a line. When false, output will pile up at the end of each line until the host sends a CR/LF sequence.

Name: s3270.loginMacro
Type: String
Description:

Defines a sequence of commands to run as soon as a host connection is established. Usually these would be commands used to navigate through login screens, such String, Tab and Enter.

If a s3270.hostsFile is in use and a matching entry is found, the login macro from that entry will be used in preference to the s3270.loginMacro.

Name: s3270.lnext
Type: String
Default: ^V
Description:

This setting is used only in NVT mode, and is similar in function to the stty parameter of the same name.

When connected in line-at-a-time mode (when s3270 gathers a line of input before forwarding it to the host), entering this character at the keyboard removes any special meaning from the next character entered.

Name: s3270.m3279
Type: Boolean
Default: false
Command Line: -color
Description:

Deprecated resource -- replaced by s3270.model syntax

Indicates support for color (a 3279 terminal).

Name: s3270.model
Type: String
Default: 3279-4-E
Command Line: -model
Description:

The terminal model that s3270 is emulating. The model is in three parts, separated by dashes; each part is optional.

- 3278 or 3279
  3278 specifies a monochrome (green) 3270 display.
  3279 specifies a color 3270 display.
- 2, 3, 4 or 5 The model number, which determines the size of the screen. Model 2 has 24 rows and 80 columns. Model 3 has 32 rows and 80 columns. Model 4 has 43 rows and 80 columns. Model 5 has 27 rows and 132 columns. The default is 4.
- E An optional suffix which indicates support for the 3270 Extended Data Stream (color, extended attributes, Query Reply). 3279 implies E.

Name: s3270.monoCase
Type: Boolean
Default: false
Command Line: -set monoCase , -clear monoCase
Description:

When true, causes s3270 to run in uppercase-only mode.

Name: s3270.numericLock
Type: Boolean
Default: false
Description:

When true, causes s3270 to lock the keyboard when non-numeric data is entered into fields with the Numeric attribute.

Name: s3270.onlcr
Type: Boolean
Default: true
Description:

Used only in NVT line-at-a-time mode; similar to the stty parameter of the same name. It controls whether output newlines are mapped to CR/LF sequences.

Name: s3270.oerrLock
Type: Boolean
Default: true
Description:

If true, operator errors (typing into protected fields, insert overflow, etc.) will cause the keyboard to lock with an error message in the OIA (status line). If false, these errors will simply cause the terminal bell will ring, without any keyboard lock or message.

Name: s3270.once
Type: Boolean
Default: false
Command Line: -once
Description:

When true, s3270 will exit as soon as a host disconnects. The default is false if no hostname is specified on the command line, true otherwise.

Name: s3270.oversize
Type: String
Command Line: -oversize
Description:

Sets the screen dimensions to be larger than the default for the chosen model. Its value is a string in the format colsxrows. It is used only if the s3270.model includes the "-E" (extended data stream) suffix, and only if the specified dimensions are larger than the model number defaults. Also, only hosts that support the Query Reply structured field will function properly with s3270 in this mode.

Name: s3270.port
Type: String
Default: telnet
Command Line: -port
Description:

The name of the default TCP port for s3270 to connect to. This can be either a symbolic name from /etc/services, or an integer.

Name: s3270.proxy
Type: String
Command Line: -proxy
Description:

Defines a proxy server that s3270 will use to connect to hosts. The value is of the form type:server[:port], where options for type are described on the s3270 manual page.

Name: s3270.qrBgColor
Type: Boolean
Default: false
Description:

When true, s3270 will report in the QueryReply(color) that it supports background color; when false, it will not. It is disabled by default because certain versions of GDDM are confused by this report and will crash.

Name: s3270.quit
Type: String
Default: ^\
Description:

This setting is used only in NVT mode, and is similar in function to the stty parameter of the same name. When connected in line-at-a-time mode (when s3270 gathers a line of input before forwarding it to the host), entering this character at the keyboard causes the TELNET BREAK sequence to be sent to the host.

Name: s3270.rprnt
Type: String
Default: ^R
Description:

This setting is used only in NVT mode, and is similar in function to the stty parameter of the same name. When connected in line-at-a-time mode (when s3270 gathers a line of input before forwarding it to the host), entering this character at the keyboard causes the current input line to be redisplayed.

Name: s3270.sbcsCgcsgid
Type: String
Description:

Overrides the compiled-in value of the CGCSGID for the current host character set. The value is an integer, which can be prefixed with '0x' to be in hexadecimal. The upper 16 bits are the GCSGID (character set) and the lower 16 bits are the CPGID (code page). This value applies only to the single-byte (SBCS) character set. Use s3270.dbcsCgcsgid for the double-byte (DBCS) character set.

Name: s3270.screenTrace
Type: Boolean
Default: false
Command Line: -set screenTrace , -clear screenTrace
Description:

When true, s3270 will save an ASCII version of the screen image in a file every time it changes. The file name defaults to /tmp/x3scr.pid. The directory prefix is defined by s3270.traceDir. If s3270.screenTraceFile is defined, it defines the file name and s3270.traceDir is ignored.

Name: s3270.screenTraceFile
Type: String
Description:

If defined, gives the name of the file that screen traces will be written into.

Name: s3270.scriptPort
Type: Integer
Command Line: -scriptport
Description:

If defined, s3270 will accept script connections on the specified local TCP port. The rules for the commands passed over these connections are documented in the x3270-script manual page.

Name: s3270.selfSignedOk
Type: Boolean
Default: false
Description:

When true, s3270 will allow SSL authentication with a host that uses a self-signed certificate.

Name: s3270.socket
Type: Boolean
Default: false
Command Line: -socket
Description:

When true, s3270 will create a Unix-domain socket than can be used by an external script to control the session. The name of the socket is /tmp/x3sck.pid. The -p option of the x3270if command can be used to connect to this socket.

Name: s3270.suppressActions
Type: String
Description:

A list of whitespace-separated action names, with or without parentheses, which are to be ignored. The actions will be completely inaccessible, whether by keymaps, scripts, macros or the Execute an Action menu option. This resource is intended to be used as a security precaution for users who can define their own keymaps, but who do not have access to resource definitions or command-line options.

Name: s3270.termName
Type: String
Command Line: -tn
Description:

An alternate name to be sent in response to the host's TELNET DO OPTION TERMINAL-NAME request. The default is IBM-, followed by the value of s3270.model.

Name: s3270.traceDir
Type: String
Default: /tmp
Description:

Defines the directory that trace files are written into.

Name: s3270.traceFile
Type: String
Command Line: -tracefile
Description:

If defined, gives the name of the file that data stream and event traces will be written into. If it begins with ">>", data will be appended to the file.

Name: s3270.traceFileSize
Type: String
Command Line: -tracefilesize
Description:

If defined, gives a limit on the size of the file that data stream and event traces will be written into. If not defined, or defined as 0, there will be no limit on the size of the file. The value is a number, followed by an optional suffix. If the suffix is K (e.g., 128K), the value will be multiplied by 1024. If the suffix is M, the value will be multiplied by (1024*1024). The size limit enforced at operation boundaries, not per byte, so the actual file may grow slightly larger. When the file size exceeds the limit, the trace file will be renamed with a "-" appended and a new file started.

Name: s3270.unlockDelay
Type: Boolean
Default: true
Description:

When s3270 sends the host an AID (the Enter, Clear, PF or PA actions), it locks the keyboard until the host sends a reply to unlock it. Some hosts unlock the keyboard before they are actually finished processing the command, which can cause scripts to malfunction subtly. To avoid this, s3270 implements a hack to briefly delay actually unlocking the keyboard. When s3270.unlockDelay is true, the keyboard unlock will be delayed for s3270.unlockDelayMs milliseconds. Setting it to false removes this delay, except when executing a macro.

Name: s3270.unlockDelayMs
Type: Integer
Default: 350
Description:

Overrides the default value for the unlock delay (the delay between the host unlocking the keyboard and s3270 actually performing the unlock). The value is in milliseconds; use 0 to turn off the delay completely, including for macros.

Name: s3270.user
Type: String
Command Line: -user
Description:

Specifies the user name sent in response to a TELNET NEW-ENVIRON sub-negotiation request, used by iSeries hosts (RFC 4777).

Name: s3270.verifyHostCert
Type: Boolean
Default: false
Command Line: -verifycert
Description:

If false (the default), s3270 will not verify SSL host certificates. If true or if the -verifycert option is given, s3270 will verify SSL host certificates, and not allow an SSL or SSL/TLS connection to complete unless the host certificate can be validated.

Name: s3270.werase
Type: String
Default: ^W
Description:

This setting is used only in NVT mode, and is similar in function to the stty parameter of the same name. When connected in line-at-a-time mode (when s3270 gathers a line of input before forwarding it to the host), entering this character at the keyboard erases the last word of input.

When connected in character-at-a-time mode (when s3270 sends each keystroke to the host), this is the ASCII character that is sent to the host by the DeleteWord action.

## Index of All Resources

aidWait | bindLimit | blankFill | bsdTm
caDir | caFile | certFile | certFileType
chainFile | charset | color8 | confDir
dbcsCgcsgid | dftBufferSize | devName | dsTrace
eof | erase | eventTrace | extended
hostname | hostsFile | icrnl | inlcr
intr | keyFile | keyFileType | keyPasswd
kill | lineWrap | loginMacro | lnext
m3279 | model | monoCase | numericLock
onlcr | oerrLock | once | oversize
port | proxy | qrBgColor | quit
rprnt | sbcsCgcsgid | screenTrace | screenTraceFile
scriptPort | selfSignedOk | socket | suppressActions
termName | traceDir | traceFile | traceFileSize
unlockDelay | unlockDelayMs | user | verifyHostCert
werase

## Basic Configuration Resources

charset | hostname | model | port
proxy

## NVT-Mode Resources

eof | erase | icrnl | inlcr
intr | kill | lineWrap | lnext
onlcr | quit | rprnt | werase

## Protocol Resources

bindLimit | bsdTm | color8 | dbcsCgcsgid
dftBufferSize | devName | sbcsCgcsgid | termName
user

## Terminal Interaction Resources

blankFill | numericLock | oerrLock

## Security Resources

caDir | caFile | certFile | certFileType
chainFile | keyFile | keyFileType | keyPasswd
selfSignedOk | suppressActions | verifyHostCert

## Tracing Resources

dsTrace | eventTrace | screenTrace | screenTraceFile
traceDir | traceFile | traceFileSize

## Other Resources

aidWait | confDir | hostsFile | loginMacro
monoCase | once | oversize | qrBgColor
scriptPort | socket | unlockDelay | unlockDelayMs

## Deprecated Resources

extended | m3279

s3270 version 3.3.12ga12 Tue Feb 26 13:46:44 CST 2013