Man Linux: Main Page and Category List

NAME

       s3270 - IBM host access tool

SYNOPSIS

       s3270 [options] [host]

       s3270 [options] session-file.s3270

DESCRIPTION

       s3270 opens a telnet connection to an IBM host, then allows a script to
       control the host login session.  It is derived  from  x3270(1),  an  X-
       windows  IBM  3270  emulator.   It implements RFCs 2355 (TN3270E), 1576
       (TN3270) and 1646 (LU  name  selection),  and  supports  IND$FILE  file
       transfer.

       The full syntax for host is:
              [prefix:]...[LUname@]hostname[:port]

       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 s3270 to first create an SSL
       tunnel to the host, and then create a TN3270 session inside the tunnel.
       (This  function  is  supported  only  if  s3270  was built with SSL/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.

       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 s3270 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  s3270  and  with
       tn3270(1),  the  port  may  also  be  specified  as  a second, separate
       argument.)

OPTIONS

        s3270 understands the following options:

       -charset name
              Specifies an EBCDIC host character set.

       -clear toggle
              Sets the initial value of toggle to false.  The list  of  toggle
              names is under TOGGLES below.

       -im method
              Specifies  the  name  of  the input method to use for multi-byte
              input.   (Supported  only  when  s3270  is  compiled  with  DBCS
              support.)

       -km name
              Specifies  the  local encoding method for multi-byte text.  name
              is an encoding name recognized by the ICU  library.   (Supported
              only  when  s3270  is  compiled with DBCS support, and necessary
              only when s3270 cannot figure it out from the locale.)

       -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 is 3278-4.

       -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 "s3270.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.

       -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 s3270 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.

       -scriptport port
              Causes  s3270  to  listen for scripting connections on local TCP
              port port.

       -set toggle
              Sets the initial value of toggle to true.  The  list  of  toggle
              names is under TOGGLES below.

       -socket
              Causes  the  emulator  to  create  a  Unix-domain socket when it
              starts, for use by script processes  to  send  commands  to  the
              emulator.   The  socket  is named /tmp/x3sck.process_id.  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-3278-4-E.

              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
              "s3270.extended" resource to "false", removes the  -E  from  the
              terminal name when connecting to such hosts.

              The  name  can  also  be  specified  with  the  "s3270.termName"
              resource.

       -trace Turns on data stream and event tracing at startup.  The  default
              trace file name is /tmp/x3trc.process_id.

       -tracefile file
              Specifies a file to save data stream and event traces into.

       -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 will
              be  unlimited.   If  specified,  the  trace  file cannot already
              exist, and the (silently enforced) minimum size  is  64  Kbytes.
              The value of size can have a K or M suffix, indicating kilobytes
              or megabytes respectively.

       -v     Display the version and build options for s3270 and exit.

       -xrm "s3270.resource: value"
              Sets the value  of  the  named  resource  to  value.   Resources
              control  less  common  s3270  options,  and  are  defined  under
              RESOURCES below.

       These names are also used as the first parameter to the Toggle  action.

ACTIONS

       Here  is  a  complete  list  of  basic  s3270 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.

           *Attn                            attention key
           BackSpace                        move cursor left (or send
                                            ASCII BS)
           BackTab                          tab to start of previous input
                                            field
           CircumNot                        input "^" in NVT mode, or
                                            "notsign" in 3270 mode

           *Clear                           clear screen
           *Connect(host)                   connect to host
           *CursorSelect                    Cursor Select AID
           Delete                           delete character under cursor
                                            (or send ASCII DEL)
           DeleteField                      delete the entire field
           DeleteWord                       delete the current or previous
                                            word
           *Disconnect                      disconnect from host
           Down                             move cursor down
           Dup                              duplicate field
           *Enter                           Enter AID (or send ASCII CR)
           Erase                            erase previous character (or
                                            send ASCII BS)
           EraseEOF                         erase to end of current field
           EraseInput                       erase all input fields
           Execute(cmd)                     execute a command in a shell
           FieldEnd                         move cursor to end of field
           FieldMark                        mark field
           HexString(hex_digits)            insert control-character
                                            string
           Home                             move cursor to first input
                                            field
           Insert                           set insert mode
           *Interrupt                       send TELNET IP to host
           Key(keysym)                      insert key keysym
           Key(0xxx)                        insert key with character code
                                            xx
           Left                             move cursor left
           Left2                            move cursor left 2 positions
           MonoCase                         toggle uppercase-only mode
           MoveCursor(row, col)             move cursor to (row,col)
           Newline                          move cursor to first field on
                                            next line (or send ASCII LF)
           NextWord                         move cursor to next word
           *PA(n)                           Program Attention AID (n from
                                            1 to 3)
           *PF(n)                           Program Function AID (n from 1
                                            to 24)
           PreviousWord                     move cursor to previous word
           Quit                             exit s3270
           Redraw                           redraw window
           Reset                            reset locked keyboard
           Right                            move cursor right
           Right2                           move cursor right 2 positions
           *Script(command[,arg...])        run a script
           *String(string)                  insert string (simple macro
                                            facility)
           *SysReq                          System Request AID
           Tab                              move cursor to next input
                                            field
           Toggle(option[,set|clear])       toggle an option
           ToggleInsert                     toggle insert mode
           ToggleReverse                    toggle reverse-input mode
           *Transfer(option=value...)       file transfer
           Up                               move cursor up

FILE TRANSFER

       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.

       Because of the complexity and number of options for file transfer,  the
       parameters to the Transfer action take the unique form of option=value,
       and 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".  The options are:

       Option           Required?   Default   Other Values
       --------------------------------------------------------
       Direction           No       receive   send
       HostFile            Yes
       LocalFile           Yes
       Host                No       tso       vm
       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        No
       SecondarySpace      No
       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) or vm.

       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 s3270 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
              s3270 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.  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.

       Blksize
              Specifies  the  block  size for files created on the host.  (TSO
              hosts only.)

       Allocation
              Specifies  the  units  for  the  TSO   host   PrimarySpace   and
              SecondarySpace options: tracks, cylinders or avblock.

       PrimarySpace
              Primary  allocation for a file created on a TSO host.  The units
              are given by the Allocation option.

       SecondarySpace
              Secondary allocation for a file created  on  a  TSO  host.   The
              units are given by the Allocation option.

       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.

THE PRINTTEXT ACTION

       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.

NESTED SCRIPTS

       There are several types of nested script functions available.

       The String Action
              The  simplest  method  for  nested  scripts  is provided via the
              String action.  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, s3270 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 s3270  is  built  with  DBCS
              support and the host allows DBCS input in the current field.

              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 s3270 to start  a  child  process  which  can
              execute s3270 actions.  Standard input and output from the child
              process are piped back to s3270.  The  Script  action  is  fully
              documented in x3270-script(1).

PASSTHRU

       s3270   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, s3270 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.

PROXY

       The  -proxy  option  or  the s3270.proxy resource causes s3270 to use a
       proxy server to connect to the host.   The  syntax  of  the  option  or
       resource is:
              type:host[:port]

       The supported values for type are:

                    Proxy Type   Protocol            Default Port
                    ----------------------------------------------
                       http      RFC 2817 HTTP           3128
                                 tunnel (squid)
                     passthru    Sun in.telnet-gw        none
                      socks4     SOCKS version 4         1080
                      socks5     SOCKS version 5         1080
                                 (RFC 1928)

                      telnet     No protocol (just       none
                                 send connect host
                                 port)

       The  special  types  socks4a  and socks5d can also be used to force the
       proxy server to do the hostname resolution for the SOCKS protocol.

RESOURCES

       Certain s3270 options can be configured via resources.   Resources  are
       defined by -xrm options.  The definitions are similar to X11 resources,
       and use a similar syntax.  The resources available in s3270 are:

       Resource      Default    Option           Purpose
       -----------------------------------------------------------
       blankFill     False      -set blankFill   Blank Fill mode
       charset       bracket    -charset         EBCDIC character
                                                 set
       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
       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
       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
       monoCase      False      -set monoCase    Mono-case mode
       numericLock   False                       Lock keyboard
                                                 for numeric
                                                 field error
       oerrLock      False                       Lock keyboard
                                                 for input error
       oversize                 -oversize        Oversize screen
                                                 dimensions
       port          telnet     -port            Non-default TCP
                                                 port
       quit          ^\                          NVT-mode quit
                                                 character
       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
       werase        ^W                          NVT-mode word-
                                                 erase character

              Note  1: m3279 defaults to False.  It can be forced to True 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.

              If more than one -xrm option is given for the same resource, the
              last one on the command line is used.

FILES

       /usr/local/lib/x3270/ibm_hosts

SEE ALSO

       x3270(1),    c3270(1),   tcl3270(1),   ibm_hosts(5),   x3270-script(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

COPYRIGHTS

       Copyright 1993-2009, 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.

VERSION

       s3270 3.3.10ga4

                                02 October 2009                       s3270(1)