1s3270(1) General Commands Manual s3270(1)
2
3
4
6 s3270 - IBM host access tool
7
9 s3270 [options] [host]
10
11 s3270 [options] session-file.s3270
12
13
15 s3270 opens a telnet connection to an IBM host, then allows a script to
16 control the host login session. It is derived from x3270(1), an X-win‐
17 dows IBM 3270 emulator. It implements RFCs 2355 (TN3270E), 1576
18 (TN3270) and 1646 (LU name selection), and supports IND$FILE file
19 transfer. The full syntax for host is:
20 [prefix:]...[LUname@]hostname[:port][=accept]
21
22 Prepending a P: onto hostname causes the connection to go through the
23 telnet-passthru service rather than directly to the host. See PASSTHRU
24 below.
25
26 Prepending an S: onto hostname removes the "extended data stream"
27 option reported to the host. See -tn below for further information.
28
29 Prepending an N: onto hostname turns off TN3270E support for the ses‐
30 sion.
31
32 Prepending an L: onto hostname causes s3270 to first create an SSL/TLS
33 tunnel to the host, and then create a TN3270 session inside the tunnel.
34 (This function is supported only if s3270 was built with SSL/TLS sup‐
35 port). Note that TLS-encrypted sessions using the TELNET START-TLS
36 option are negotiated with the host automatically; for these sessions
37 the L: prefix should not be used.
38
39 Prepending a Y: onto hostname causes s3270 to skip validation of host
40 SSL/TLS certificates. This overrides any other configuration or com‐
41 mand-line options.
42
43 Prepending an A: onto hostname is equivalent to setting the -nvt
44 option; it forces an NVT-mode session instead of a 3270-mode session.
45
46 A specific Logical Unit (LU) name to use may be specified by prepending
47 it to the hostname with an `@'. Multiple LU names to try can be sepa‐
48 rated by commas. An empty LU can be placed in the list with an extra
49 comma. (Note that the LU name is used for different purposes by dif‐
50 ferent kinds of hosts. For example, CICS uses the LU name as the Ter‐
51 minal ID.)
52
53 The hostname may optionally be placed inside square-bracket characters
54 `[' and `]'. This will prevent any colon `:' characters in the host‐
55 name from being interpreted as indicating option prefixes or port num‐
56 bers. This allows numeric IPv6 addresses to be used as hostnames.
57
58 On systems that support the forkpty library call, the hostname may be
59 replaced with -e and a command string. This will cause s3270 to con‐
60 nect to a local child process, such as a shell.
61
62 The port to connect to defaults to telnet. This can be overridden with
63 the -port option, or by appending a port to the hostname with a colon
64 `:'. (For compatability with previous versions of s3270 and with
65 tn3270(1), the port may also be specified as a second, separate argu‐
66 ment.)
67
68 An optional accept name (a hostname to accept in the host's SSL/TLS
69 certificate) may be specified by appending it to the hostname with an
70 equals sign (`='). The accept name can also be specified with the
71 -accepthostname option.
72
73
75 s3270 understands the following options:
76
77 -accepthostname name
78 Specifies a particular hostname to accept when validating the
79 name presented in the server SSL certificate, instead of compar‐
80 ing to the name used to make the connection.
81
82 -cadir directory
83 Specifies a directory containing CA (root) certificates to use
84 when verifying a certificate provided by the host. (OpenSSL
85 only)
86
87 -cafile filename
88 Specifies a PEM-format file containing CA (root) certificates to
89 use when verifying a certificate provided by the host. (OpenSSL
90 only)
91
92 -certfile filename
93 Specifies a file containing a client certificate to provide to
94 the host. The default file type is PEM.
95
96 -clientcert name
97 Specifies the name of a client certificate to provide to the
98 host. (MacOS only)
99
100 -certfiletype type
101 Specifies the type of the certificate file specified by -cert‐
102 file. Type can be pem or asn1. (OpenSSL only)
103
104 -chainfile filename
105 Specifies a certificate chain file in PEM format, containing a
106 certificate to provide to the host, as well as one or more
107 intermediate certificates and the CA certificate used to sign
108 that certificate. If -chainfile is specified, it overrides
109 -certfile. (OpenSSL only)
110
111 -charset name
112 Specifies an EBCDIC host character set.
113
114 -clear toggle
115 Sets the initial value of toggle to false.
116
117 -connecttimeout seconds
118 Specifies the time that s3270 will wait for a host connection to
119 complete.
120
121 -devname name
122 Specifies a device name (workstation ID) for RFC 4777 support.
123
124 -httpd [addr:]port
125 Specifies a port and optional address to listen on for HTTP con‐
126 nections. Addr can be specified as `*' to indicate 0.0.0.0; the
127 default is 127.0.0.1. IPv6 numeric addresses must be specified
128 inside of square brackets, e.g., [::1]:4080 to specify the IPv6
129 loopback address and TCP port 4080.
130
131 Note that this option is mutually-exclusive with the -scriptport
132 option and disables reading commands from standard input.
133
134 -keyfile filename
135 Specifies a file containing the private key for the certificate
136 file (specified via -certfile or -chainfile). The default file
137 type is PEM. (OpenSSL only)
138
139 -keyfiletype type
140 Specifies the type of the private key file specified by -key‐
141 file. Type can be pem or asn1. (OpenSSL only)
142
143 -keypasswd type:value
144 Specifies the password for the private key file (OpenSSL) or
145 client certificate file (MacOS), if it is encrypted. The argu‐
146 ment can be file:filename, specifying that the password is in a
147 file, or string:string, specifying the password on the command-
148 line directly. If the private key file is encrypted and no
149 -keypasswd option is given, secure connections will not be
150 allowed.
151
152 -km name
153 Specifies the local encoding method for multi-byte text. name
154 is an encoding name recognized by the ICU library. (Supported
155 only when s3270 is compiled with DBCS support, and necessary
156 only when s3270 cannot figure it out from the locale.)
157
158 -loginmacro Action(arg...) ...
159 Specifies a macro to run at login time.
160
161 -minversion version
162 The minimum required version of s3270, e.g., 3.6ga10. If the
163 running version is less than the specified version, s3270 will
164 abort. The format of a version is major.minortypeiteration.
165 type is ignored, and minor and iteration can be omitted.
166
167 -model name
168 The model of 3270 display to be emulated. The model name is in
169 two parts, either of which may be omitted:
170
171 The first part is the base model, which is either 3278 or 3279.
172 3278 specifies a monochrome (green on black) 3270 display; 3279
173 specifies a color 3270 display.
174
175 The second part is the model number, which specifies the number
176 of rows and columns. Model 4 is the default.
177
178 Model Number Columns Rows
179 ──────────────────────────────
180 2 80 24
181 3 80 32
182 4 80 43
183 5 132 27
184
185 Note: Technically, there is no such 3270 display as a 3279-4 or
186 3279-5, but most hosts seem to work with them anyway.
187
188 The default model is 3279-4.
189
190 -noverifycert
191 For SSL/TLS connections, do not verify the host certificate.
192
193 -nvt Start in NVT mode instead of waiting for the host to send data,
194 and make the default terminal type xterm.
195
196 -oversize colsxrows
197 Makes the screen larger than the default for the chosen model
198 number. This option has effect only in combination with
199 extended data stream support (controlled by the "s3270.extended"
200 resource), and only if the host supports the Query Reply
201 structured field. The number of columns multiplied by the
202 number of rows must not exceed 16383 (3fff hex), the limit of
203 14-bit 3270 buffer addressing.
204
205 -port n
206 Specifies a different TCP port to connect to. n can be a name
207 from /etc/services like telnet, or a number. This option
208 changes the default port number used for all connections. (The
209 positional parameter affects only the initial connection.)
210
211 -proxy type:host[:port]
212 Causes s3270 to connect via the specified proxy, instead of
213 using a direct connection. The host can be an IP address or
214 hostname. The optional port can be a number or a service name.
215 For a list of supported proxy types, see PROXY below.
216
217 -scriptport [addr:]port
218 Specifies a port and optional address to listen on for scripting
219 connections. Addr can be specified as `*' to indicate 0.0.0.0;
220 the default is 127.0.0.1. IPv6 numeric addresses must be
221 specified inside of square brackets, e.g., [::1]:4081 to specify
222 the IPv6 loopback address and TCP port 4081.
223
224 Note that this option is mutually-exclusive with the -httpd
225 option and disables reading commands from standard input.
226
227 -scriptportonce
228 Allows s3270 to accept only one script connection. When that
229 connection is broken, s3270 will exit.
230
231 -set toggle
232 Sets the initial value of toggle to true.
233
234 -socket
235 Causes the emulator to create a Unix-domain socket when it
236 starts, for use by script processes to send commands to the
237 emulator. The socket is named /tmp/x3sck.pid. The -p option of
238 x3270if causes it to use this socket, instead of pipes specified
239 by environment variables.
240
241 -tn name
242 Specifies the terminal name to be transmitted over the telnet
243 connection. The default name is IBM-model_name-E, for example,
244 IBM-3278-4-E.
245
246 Some hosts are confused by the -E suffix on the terminal name,
247 and will ignore the extra screen area on models 3, 4 and 5.
248 Prepending an s: on the hostname, or setting the
249 "s3270.extended" resource to "false", removes the -E from the
250 terminal name when connecting to such hosts.
251
252 The name can also be specified with the "s3270.termName"
253 resource.
254
255 -trace Turns on data stream and event tracing at startup. The default
256 trace file name is /tmp/x3trc.
257
258 -tracefile file
259 Specifies a file to save data stream and event traces into. If
260 the name starts with `>>', data will be appended to the file.
261
262 -tracefilesize size
263 Places a limit on the size of a trace file. If this option is
264 not specified, or is specified as 0 or none, the trace file size
265 will be unlimited. The minimum size is 64 Kbytes. The value of
266 size can have a K or M suffix, indicating kilobytes or megabytes
267 respectively. When the trace file reaches the size limit, it
268 will be renamed with a `-' appended and a new file started.
269
270 -user name
271 Specifies the user name for RFC 4777 support.
272
273 -utf8 Forces the local codeset to be UTF-8, ignoring the locale or
274 Windows codepage.
275
276 -v Display the version and build options for s3270 and exit.
277
278 -verifycert
279 For SSL/TLS connections, verify the host certificate, and do not
280 allow the connection to complete unless it can be validated.
281 (This is the default setting.) This option is overridden by a
282 y: prepended to the hostname when connecting.
283
284 -xrm "s3270.resource: value"
285 Sets the value of the named resource to value. Resources
286 control less common s3270 options, and are defined under
287 RESOURCES below.
288
289
291 Here is a complete list of basic s3270 actions. Script-specific
292 actions are described on the x3270-script(1) manual page. ).PP Actions
293 marked with an asterisk (*) may block, sending data to the host and
294 possibly waiting for a response.
295
296 *Attn attention key
297 BackSpace move cursor left (or send
298 ASCII BS)
299 BackTab tab to start of previous input
300 field
301 CircumNot input "^" in NVT mode, or
302 "notsign" in 3270 mode
303 *Clear clear screen
304 *Connect(host) connect to host
305 *CursorSelect Cursor Select AID
306 Delete delete character under cursor
307 (or send ASCII DEL)
308 DeleteField delete the entire field
309 DeleteWord delete the current or previous
310 word
311 *Disconnect disconnect from host
312 Down move cursor down
313 Dup duplicate field
314 *Enter Enter AID (or send ASCII CR)
315 Erase erase previous character (or
316 send ASCII BS)
317 EraseEOF erase to end of current field
318 EraseInput erase all input fields
319 Execute(cmd) execute a command in a shell
320 FieldEnd move cursor to end of field
321 FieldMark mark field
322 HexString(hex_digits) insert control-character
323 string
324 Home move cursor to first input
325 field
326 Insert set insert mode
327 *Interrupt send TELNET IP to host
328 Key(keysym) insert key keysym
329
330
331 Key(0xxx) insert key with character code
332 xx
333 Left move cursor left
334 Left2 move cursor left 2 positions
335 MonoCase toggle uppercase-only mode
336 MoveCursor(row, col) move cursor to zero-origin
337 (row,col)
338 Newline move cursor to first field on
339 next line (or send ASCII LF)
340 NextWord move cursor to next word
341 *PA(n) Program Attention AID (n from
342 1 to 3)
343 *PF(n) Program Function AID (n from 1
344 to 24)
345 PreviousWord move cursor to previous word
346 PrintText(command) print screen text on printer
347 Quit exit s3270
348 Redraw redraw window
349 Reset reset locked keyboard
350 Right move cursor right
351 Right2 move cursor right 2 positions
352 *Script(command[,arg...]) run a script
353 *String(string) insert string (simple macro
354 facility)
355 Tab move cursor to next input
356 field
357 Toggle(option[,set|clear]) toggle an option
358 ToggleInsert toggle insert mode
359 ToggleReverse toggle reverse-input mode
360 *Transfer(option=value...') file transfer
361 Up move cursor up
362
363 Note that certain parameters to s3270 actions (such as the names of
364 files and keymaps) are subject to substitutions:
365
366 The character ~ at the beginning of a string is replaced with the
367 user's home directory. A ~ character followed by a username is
368 replaced with that user's home directory.
369
370 Environment variables are substituted using the Unix shell convention
371 of $name or ${name}.
372
373 Two special pseudo-environment variables are supported. ${TIMESTAMP} is
374 replaced with a microsecond-resolution timestamp; ${UNIQUE} is replaced
375 with a string guaranteed to make a unique filename (the process ID
376 optionally followed by a dash and a string of digits). ${UNIQUE} is
377 used to form trace file names.
378
380 The Transfer action implements IND$FILE file transfer. This action
381 requires that the IND$FILE program be installed on the IBM host, and
382 that the 3270 cursor be located in a field that will accept a TSO or
383 VM/CMS command.
384
385 Because of the complexity and number of options for file transfer, the
386 parameters to the Transfer action take the unique form of option=value,
387 and can appear in any order. Note that if the value contains spaces
388 (such as a VM/CMS file name), then the entire parameter must be quoted,
389 e.g., "HostFile=xxx foo a". The options are:
390
391 Option Required? Default Other Values
392 ────────────────────────────────────────────────────────
393 Direction No receive send
394 HostFile Yes
395 LocalFile Yes
396
397 Host No tso vm, cics
398 Mode No ascii binary
399 Cr No remove add, keep
400 Remap No yes no
401 Exist No keep replace, append
402 Recfm No fixed, variable,
403 undefined
404 Lrecl No
405 Blksize No
406 Allocation No tracks,
407 cylinders,
408 avblock
409 PrimarySpace Sometimes
410 SecondarySpace No
411 Avblock Sometimes
412 BufferSize No 4096
413
414 The option details are as follows.
415
416 Direction
417 send to send a file to the host, receive to receive a file from
418 the host.
419
420 HostFile
421 The name of the file on the host.
422
423 LocalFile
424 The name of the file on the local workstation.
425
426 Host The type of host (which dictates the form of the IND$FILE
427 command): tso (the default), vm or cics.
428
429 Mode Use ascii (the default) for a text file, which will be
430 translated between EBCDIC and ASCII as necessary. Use binary
431 for non-text files.
432
433 Cr Controls how Newline characters are handled when transferring
434 Mode=ascii files. remove (the default) strips Newline
435 characters in local files before transferring them to the host.
436 add adds Newline characters to each host file record before
437 transferring it to the local workstation. keep preserves
438 Newline characters when transferring a local file to the host.
439
440 Remap Controls text translation for Mode=ascii files. The value yes
441 (the default) causes s3270 to remap the text to ensure maximum
442 compatibility between the workstation's character set and
443 encoding and the host's EBCDIC code page. The value no causes
444 s3270 to pass the text to or from the host as-is, leaving all
445 translation to the IND$FILE program on the host.
446
447 Exist Controls what happens when the destination file already exists.
448 keep (the default) preserves the file, causing the Transfer
449 action to fail. replace overwrites the destination file with
450 the source file. append appends the source file to the
451 destination file.
452
453 Recfm Controls the record format of files created on the host. (TSO
454 and VM hosts only.) fixed creates a file with fixed-length
455 records. variable creates a file with variable-length records.
456 undefined creates a file with undefined-length records (TSO
457 hosts only). The Lrecl option controls the record length or
458 maximum record length for Recfm=fixed and Recfm=variable files,
459 respectively.
460
461 Lrecl Specifies the record length (or maximum record length) for files
462 created on the host. (TSO and VM hosts only.)
463
464 Blksize
465 Specifies the block size for files created on the host. (TSO
466 and VM hosts only.)
467
468 Allocation
469 Specifies the units for the PrimarySpace and SecondarySpace
470 options: tracks, cylinders or avblock. (TSO hosts only.)
471
472 PrimarySpace
473 Primary allocation for a file. The units are given by the
474 Allocation option. Required when the Allocation is specified as
475 something other than default. (TSO hosts only.)
476
477 SecondarySpace
478 Secondary allocation for a file. The units are given by the
479 Allocation option. (TSO hosts only.)
480
481 Avblock
482 Average block size, required when Allocation specifies avblock.
483 (TSO hosts only.)
484
485 BufferSize
486 Buffer size for DFT-mode transfers. Can range from 256 to
487 32768. Larger values give better performance, but some hosts
488 may not be able to support them.
489
490 There are also resources that control the default values for each of
491 the file transfer parameters. These resources have the same names as
492 the Transfer keywords, but with ft prepended. E.g., the default for the
493 Mode keyword is the s3270.ftMode resource.
494
495
497 The PrintText produces screen snapshots in a number of different forms.
498 The default form wth no arguments sends a copy of the screen to the
499 default printer. A single argument is the command to use to print,
500 e.g., lpr.
501
502 Multiple arguments can include keywords to control the output of
503 PrintText:
504
505 file filename
506 Save the output in a file.
507
508 html Save the output as HTML. This option implies file.
509
510 rtf Save the output as RichText. This option implies file. The
511 font defaults to Courier New and the point size defaults to 8.
512 These can be overridden by the printTextFont and printTextSize
513 resources, respectively.
514
515 string Return the output as a string. This can only be used from
516 scripts.
517
518 modi Render modified fields in italics.
519
520 caption text
521 Add the specified text as a caption above the output. Within
522 text, the special sequence %T% will be replaced with a
523 timestamp.
524
525 command command
526 Directs the output to a command. This allows one or more of the
527 other keywords to be specified, while still sending the output
528 to the printer.
529
530
532 There are several types of nested script functions available.
533
534 The String Action
535 The simplest method for nested scripts is provided via the
536 String action. The arguments to String are one or more double-
537 quoted strings which are inserted directly as if typed. The C
538 backslash conventions are honored as follows. (Entries marked *
539 mean that after sending the AID code to the host, s3270 will
540 wait for the host to unlock the keyboard before further
541 processing the string.)
542
543 \b Left
544 \exxxx EBCDIC character in hex
545 \f Clear*
546 \n Enter*
547 \pan PA(n)*
548 \pfnn PF(nn)*
549 \r Newline
550 \t Tab
551 \T BackTab
552 \uxxxx Unicode character in hex
553 \xxxxx Unicode character in hex
554
555 Note that the numeric values for the \e, \u and \x sequences can
556 be abbreviated to 2 digits. Note also that EBCDIC codes greater
557 than 255 and some Unicode character codes represent DBCS
558 characters, which will work only if s3270 is built with DBCS
559 support and the host allows DBCS input in the current field.
560
561 Note: The strings are in ASCII and converted to EBCDIC, so
562 beware of inserting control codes.
563
564 There is also an alternate form of the String action, HexString,
565 which is used to enter non-printing data. The argument to
566 HexString is a string of hexadecimal digits, two per character.
567 A leading 0x or 0X is optional. In 3270 mode, the hexadecimal
568 data represent EBCDIC characters, which are entered into the
569 current field. In NVT mode, the hexadecimal data represent
570 ASCII characters, which are sent directly to the host.
571
572 The Script Action
573 This action causes s3270 to start a child process which can
574 execute s3270 actions. Standard input and output from the child
575 process are piped back to s3270. The Script action is fully
576 documented in x3270-script(1).
577
578
580 s3270 supports the Sun telnet-passthru service provided by the
581 in.telnet-gw server. This allows outbound telnet connections through a
582 firewall machine. When a p: is prepended to a hostname, s3270 acts
583 much like the itelnet(1) command. It contacts the machine named
584 internet-gateway at the port defined in /etc/services as telnet-
585 passthru (which defaults to 3514). It then passes the requested
586 hostname and port to the in.telnet-gw server.
587
589 The -proxy option or the s3270.proxy resource causes s3270 to use a
590 proxy server to connect to the host. The syntax of the option or
591 resource is:
592 type:host[:port]
593
594 The supported values for type are:
595
596 Proxy Type Protocol Default Port
597 ──────────────────────────────────────────────
598 http RFC 2817 HTTP 3128
599 tunnel (squid)
600 passthru Sun in.telnet-gw none
601 socks4 SOCKS version 4 1080
602 socks5 SOCKS version 5 1080
603 (RFC 1928)
604 telnet No protocol (just none
605 send connect host
606 port)
607
608 The special types socks4a and socks5d can also be used to force the
609 proxy server to do the hostname resolution for the SOCKS protocol.
610
612 Certain s3270 options can be configured via resources. Resources are
613 defined by -xrm options. The definitions are similar to X11 resources,
614 and use a similar syntax. The resources available in s3270 are:
615
616 Resource Default Option Purpose
617 ───────────────────────────────────────────────────────────
618 blankFill False -set blankFill Blank Fill mode
619 charset bracket -charset EBCDIC character
620 set
621 dbcsCgcsgid Override DBCS
622 CGCSGID
623 dsTrace False -trace Data stream
624 tracing
625 eof ^D NVT-mode EOF
626 character
627 erase ^H NVT-mode erase
628 character
629 extended True Use 3270
630 extended data
631 stream
632 eventTrace False -trace Event tracing
633 icrnl False Map CR to NL on
634 NVT-mode input
635 inlcr False Map NL to CR in
636 NVT-mode input
637 intr ^C NVT-mode
638 interrupt
639 character
640 kill ^U NVT-mode kill
641 character
642 lineWrap False -set lineWrap NVT line wrap
643 mode
644 lnext ^V NVT-mode lnext
645 character
646 m3279 (note 1) -model 3279 (color)
647 emulation
648 monoCase False -set monoCase Mono-case mode
649 numericLock False Lock keyboard
650 for numeric
651 field error
652 oerrLock False Lock keyboard
653 for input error
654 oversize -oversize Oversize screen
655 dimensions
656 port telnet -port Non-default TCP
657 port
658 quit ^\ NVT-mode quit
659 character
660
661 rprnt ^R NVT-mode reprint
662 character
663 sbcsCgcsgid Override SBCS
664 CGCSGID
665 secure False Disable
666 "dangerous"
667 options
668 termName (note 2) -tn TELNET terminal
669 type string
670 traceDir /tmp Directory for
671 trace files
672 traceFile (note 3) -tracefile File for trace
673 output
674 werase ^W NVT-mode word-
675 erase character
676
677 Note 1: m3279 defaults to False. It can be forced to True with
678 the proper -model option.
679
680 Note 2: The default terminal type string is constructed from the
681 model number, color emulation, and extended data stream modes.
682 E.g., a model 2 with color emulation and the extended data
683 stream option would be sent as IBM-3279-2-E. Note also that
684 when TN3270E mode is used, the terminal type is always sent as
685 3278, but this does not affect color capabilities.
686
687 Note 3: The default trace file is x3trc.pid in the directory
688 specified by the traceDir resource.
689
690
691
692
693
694 If more than one -xrm option is given for the same resource, the last
695 one on the command line is used.
696
698 /usr/local/lib/x3270/ibm_hosts
699
700
702 x3270-script(1), x3270(1), c3270(1), tcl3270(1), telnet(1), tn3270(1)
703 Data Stream Programmer's Reference, IBM GA23-0059
704 Character Set Reference, IBM GA27-3831
705 RFC 1576, TN3270 Current Practices
706 RFC 1646, TN3270 Extensions for LUname and Printer Selection
707 RFC 2355, TN3270 Enhancements
708
710 Copyright 1993-2020, Paul Mattes.
711 Copyright 2004-2005, Don Russell.
712 Copyright 2004, Dick Altenbern.
713 Copyright 1990, Jeff Sparkes.
714 Copyright 1989, Georgia Tech Research Corporation (GTRC), Atlanta, GA
715 30332.
716 All rights reserved.
717
718 Redistribution and use in source and binary forms, with or without
719 modification, are permitted provided that the following conditions are
720 met:
721
722
723 * Redistributions of source code must retain the above copyright
724 notice, this list of conditions and the following disclaimer.
725
726 * Redistributions in binary form must reproduce the above
727 copyright notice, this list of conditions and the following
728 disclaimer in the documentation and/or other materials provided
729 with the distribution.
730
731 * Neither the names of Paul Mattes, Don Russell, Dick Altenbern,
732 Jeff Sparkes, GTRC nor the names of their contributors may be
733 used to endorse or promote products derived from this software
734 without specific prior written permission.
735
736
737 THIS SOFTWARE IS PROVIDED BY PAUL MATTES, DON RUSSELL, DICK ALTENBERN,
738 JEFF SPARKES AND GTRC "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
739 INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
740 MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
741 NO EVENT SHALL PAUL MATTES, DON RUSSELL, DICK ALTENBERN, JEFF SPARKES
742 OR GTRC BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL
743 EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
744 PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
745 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
746 LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
747 NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
748 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
749
751 s3270 3.6ga10
752
753
754
755 23 February 2020 s3270(1)