Table Of Contents
Telnet and TN3270 Configuration
Protocol Service Segment (SERVICE)
Usage Notes for Telnet SERVICE Statement
Configuring the API Network Interfaces
Using the OPTIONS(SNA) Parameter
Server TELNET Application Segment (APPL)
Usage Notes for TELNET APPL Statement
TELNET APPL Statements of Note
Configuring Services and VTAM Applications
LU Pool Facility—APPLUPxx Member
Refreshing the LUPOOL Facility
Usage Notes for TERMPROF Statement
Parameters of Note for the TERMPROF Statement
Using the OPTIONS(SNA) Parameter
Supporting LOGMODE Substitution for USS Tables
Using the TELNET Terminal Negotiation Process
Modifying VTAMLST Application Definitions
Cisco IOS for S/390 Application Definitions
Customizing the Application Definition ACBNAME
Customizing the Application Definition LU Name
Customizing the Terminal Definition LU Name
Customizing the Terminal Definition ACBNAME
Adding or Deleting Terminal Definitions
Configuring Automatic Logon to VTAM Applications
USS Table Support for Server Telnet
USS Table Customization Requirements
Telnet and TN3270 Configuration
The TELNET statement defines default characteristics for the APPL statements, and can also act as a generic APPL statement. A Telnet statement must precede all APPL statements.
This chapter provides guidelines for using Cisco IOS for S/390 to configure TELNET and TN3270 for your site. The topics covered in this chapter include:
Describes basic parameters and service statement information for TELNET.
•Protocol Service Segment (SERVICE)
Describes how to set up your TELNET services and protocols.
Describes how to specify parameters propagated for APPL statements.
•Server TELNET Application Segment (APPL)
Describes how to use the APPL statement to define internal services within Cisco IOS for S/390.
•LU Pool Facility—APPLUPxx Member
Describes how to assign Logical Unit (LU) names and rules.
Describes how to define site-configurable terminal environments to be used during the terminal-type negotiation process.
•Modifying VTAMLST Application Definitions
Describes how to change the APPL statements in the Cisco IOS for S/390 application major node in SYS1.VTAMLST.
•USS Table Support for Server Telnet
Describes how to customize screen access information for VTAM applications
Configuring Telnet
The SERVICE statements define the user-level services provided by Cisco IOS for S/390 and the well-known port numbers. The most common ones are TELNET, VTAMAPPL, FTP, LPR, and USMTP/SSMTP.
Parameters specified here are propagated for all APPL statements unless redefined on the APPL statement.
SERVICE NAME ( TELNET ) MODULE( STELNET ) PORT( 23 ) IDLE( 480 )SERVICE NAME ( VTAMAPPL ) MODULE( VTAMAPPL ) PORT( 23 ) NOCPASSWORDSERVICE NAME ( TELNET ) MODULE( STELNET ) PORT( 1023 ) AUTO( TSO ) IDLE( 480 )SERVICE NAME ( FTP ) MODULE( FTPS ) PORT( 21 ) IDLE( 300 )SERVICE NAME ( LPR ) MODULE( USPOOL ) PORT( 515 )SERVICE NAME ( LPR ) MODULE( USPOOL ) PORT( 516 )SERVICE NAME ( UDPE ) MODULE( UDPSERV ) PORT( 7 ) UDPSERVICE NAME ( UDPC ) MODULE( UDPSERV ) PORT( 9 ) UDP* SERVICE NAME ( USMTP ) MODULE( USMTP ) PORT( 25 )* SERVICE NAME ( SSMTP ) MODULE( SSMTP ) PORT( 25 )* SERVICE NAME ( SPOOL#4 ) MODULE( SPOOL#4 ) PORT( 25 )Protocol Service Segment (SERVICE)
Use the SERVICE statement to define user-level services and protocols that are accessible by connecting to well-known ports. Each SERVICE statement defines a well-known TCP or UDP port. A well-known port is a TCP or UDP port number that has a value less than 4096 and represents the Higher Level Protocol (HLP) address of an associated service that is generally standardized for the entire network.
SERVICE Syntax
SERVICE NAME ( service )
MODULE ( STELNET | FTPS | SSMTP | USPOOL | STECHO |
SCHARGEN | UDPSERV | SPOOL#4 | VTAMAPPL | USMTP )
PORT ( number )
[AUTOLOGON ( appl ) ]
[CPASSWORD | NOCPASSWORD]
[IDLE ( time ) ]
[POLL ( time )]
[ PRELU]
[QLISTEN ( number )]
[ START3270]
[TCP | UDP]
[TOS ( number )]
[USSTAB (uss_tablename)]
Syntax Description
NAME (service)
Specifies the user-level service or protocol (1 to 8 characters); used for display and account only.
Default: None
MODULE (STELNET | FTPS | SSMTP | USPOOL | STECHO | SCHARGEN | UDPSERV | SPOOL#4 | VTAMAPPL | USMTP)
Specifies the name of the primary load module (1-8 characters) to be started as the user-level protocol process (ULPP).
STELNET—Provides the TELNET server.
FTPS—Provides the FTP server.
SSMTP—Provides the SMTP mail server.
USPOOL—Provides the LPR spooler server.
STECHO—Provides the TCP ECHO and DISCARD server.
SCHARGEN—Provides the TCP character generator server.
UDPSERV—Provides the UDP ECHO, DISCARD, TIME, and character generator server.
SPOOL#4—Provides the SMTP mail spooler.
VTAMAPPL—Provides the VTAM interface.
USMTP—Provides the SMTP mail sender.
Default: None
Both FTPS and STELNET are controlled by Component Key Authorization.
PORT ( number )
Specifies the well-known port number for the ULPP (1:4095).
Default: None
AUTOLOGON ( appl )
Specifies an APPL NAME (see APPL statement) to automatically connect to.
AUTOLOGON is incompatible with START3270.
Default: None
CPASSWORD | NOCPASSWORD
Specifies whether to prompt for a user ID and password. This keyword is only used for client services.
Default: CPASSWORD
IDLE (number)
Specifies the maximum time, in minutes, an idle connection is left open. After that amount of time the connection is closed. Specify zero to not close idle connections. The maximum time is 1439 minutes.
There is a TELNET connection made for each FTP session. While the data transfer is actually taking place, this connection is idle. This value represents the idle time on the TELNET connection. Once a transfer completes it sends status information on this connection and the timer resets itself.
Default: 120
POLL (time)
Specifies the interval for sending a TELNET NO-OP command on an idle TELNET connection. This is another mechanism for detecting broken connections.This is useful for Server TELNET users with PCs, as no indication is sent by the PC if it is recycled. Specifying zero indicates NO-OPs are not sent. The maximum time is 255 minutes.
Default: 6
PRELU
Specifies a pre-allocated LU name for use by VTAM applications being accessed through USS tables.
Coding the PRELU option prevents you from using the APPLID selection criteria on the LURULE statement. The APPLID selection criteria would have to be (*) generic for the desired LU pool. For details about the LURULE statement, see LU Pool Facility—APPLUPxx Member.
QLISTEN (number)
Specifies the number of entries to be allocated in the Queued Listen Table. This value indicates the number of unspecified (wild) listens to be queued for determination as to whether the connection should be accepted or rejected.
Default: 5
START3270
Specifies that Server telnet will negotiate full-screen mode with the client TN3270 before displaying the greeting message or USS table message 10.
It is recommended that a TELNET statement be defined for the port to provide options, such as TERMPROF, for full-screen negotiation. If no TELNET statement is defined, server telnet will attempt to negotiate full-screen mode using the default options.
START3270 is incompatible with AUTOLOGON.
Default: None
TCP | UDP
Specifies the higher-level protocol module that provides the transport service for the ULPP. The only valid UDP service is UDPSERV.
Default: TCP
TOS (number)
Specifies the Internet protocol (IP) type of service (TOS) used in packets sent by the high level protocols. number specifies the IP TypeOfService field, in decimal. If no TOS keyword is specified on the SERVICE statement, the TypeOfService field will be filled in according to the IP statement TOS keyword. Alias: TYPEOFSERVICE
Range: 0 to 255
Default: TOS valued defined in IP statement. See IP Statement.
USSTAB ( uss_tablename )
Specifies a particular port for Server TELNET applications to be accessed through USS tables. The variable uss_tablename represents the name of the table to load.
You can specify a unique USS table for each port defined. If your site requires more than one USS table as a front-end to VTAM applications from TELNET, you may define access to multiple tables as Server TELNET ports, each using a different USS table. This could, for example, facilitate multi-language environments, device-dependent transactions, and could also be used to enhance security.
If the uss_tablename value is blank, the system loads the IBM default USS table (ISTINCDT) to define commands and messages.
Usage Notes for Telnet SERVICE Statement
Parameters of Note
You may want to change the following parameters on the SERVICE statement for Telnet.
IDLE
The maximum time an idle TELNET session is left open, in minutes. The maximum value is 1439.
POLL
Provides a polling capability to help detect broken connections. This is useful for Server TELNET users with PCs, as no indication is sent by the PC if it is recycled.
AUTOLOGON
Used to automatically connect the Server TELNET user to a VTAM application. This is good for users with Session Managers. Read Configuring Automatic Logon to VTAM Applications for more information.
USSTAB
Specifies a USS table to be used for server TELNET connections on the port. This feature is described in more detail in USS Table Support for Server Telnet.
Using Logger Functions
These entries are interpreted by the incoming and outgoing logger functions to determine which ULPP modules should be started. The incoming logger function is performed when a packet arrives from a remote host for a local well-known port for which no previous association has been made. The outgoing logger function is initiated when an internal (in other words, local) connection is made to Cisco IOS for S/390 through the VTAM application ID. Other client services also are started with the SERVICE statement.
USS Tables
Server TELNET supports session level USS tables. For more information about USSTAB, read Preparing USS Tables.
START3270 Restrictions
The following restrictions apply when using START3270:
•The server Telnet GREETING is not supported. For more information on customizing the
Cisco IOS for S/390 greeting in the default USS tables T01USS01 and T01USS02, read USS Table Customization Requirements.•Support is available for the "intrinsic" services such as HELP and NEWS, with the exception of QUIT/BYE/END, as well as NETSTAT, SYSSTAT, and ACTEST. Read Using NETSTAT, SYSSTAT, and ACTEST with a Full-screen USS Table for more information on how to use these services from a full-screen USS table display.
Configuring the API Network Interfaces
The TELNET statements provide information to the Application Program Interface (API) about the Transport Control Program (TCP), User Data Protocol (UDP) transport services, and direct IP Interface (RAW) mode.
CautionMake changes to these values only with the help of Customer Support.
If you are using Cisco IOS for S/390 OpenEdition (UNIX System Services) converged socket support, read Cisco IOS for S/390 C/Socket Programmer's Reference for more information.
SERVICE Examples
These examples show the use of the SERVICE statement for Telnet:
Standard Server TELNET (Port 23)
SERVICE NAME ( TELNET )MODULE ( STELNET )PORT ( 23 )QLISTEN ( 100 )Server TELNET for VM/370 Full-Screen Logon (Port 1023)
SERVICE NAME ( TELNET )MODULE ( STELNET )AUTO ( TSO )PORT ( 1023 )QLISTEN ( 50 )User TELNET for VTAM Application (Remote Port 23)
SERVICE NAME ( CTELNET )MODULE ( VTAMAPPL )PORT ( 23 )TCPQLISTEN ( 125 )Standard Server FTP (Port 21)
SERVICE NAME ( FTP )MODULE ( FTPS )PORT ( 21 )TCPServer SMTP (Port 25)
SERVICE NAME(SMTP)MODULE(SSMTP)PORT(25)TCPLine Printer Service (Port 515)
SERVICE NAME(LPR)MODULE(USPOOL)PORT(515)TCP
Note Remove or comment out the SERVICE statement for LPR if EPS is being used to process print requests.
USS Table Port for Server TELNET
SERVICE NAME(TELNET)ODULE(STELNET)PORT(1123)USSTAB(SNATABLE)PRELUTCP Echo Service (Port 7)
SERVICE NAME (TCPECHO)MODULE ( STECHO )PORT ( 7 )TCPTCP Discard Service (Port 9)
SERVICE NAME ( TCPDISC )MODULE ( STECHO )PORT ( 9 )TCPTCP Character Generator (Port 19)
SERVICE NAME ( TCPCGEN )MODULE ( SCHARGEN )PORT ( 19 )TCPUDP Echo Service (Port 7)
SERVICE NAME ( UDPECHO )MODULE ( UPDSERV )PORT ( 7 )UDPUDP Discard Service (Port 9)
SERVICE NAME (UDPDISC)MODULE (UDPSERV)PORT ( 9 )UDPUDP Date and Time Service (Port 13)
SERVICE NAME ( UDPTIME )MODULE ( UDPSERV )PORT ( 13 )UDPUDP Character Generator (Port 19)
SERVICE NAME ( UDPCGEN )MODULE ( UDPSERV )PORT ( 19 )UDPTo automatically log on to an application (SIMWARE) you can use this combination of SERVICE and APPL statements:
SERVICE NAME ( SIM )MODULE ( STELNET )AUTOLOGON ( SIMWARE )PORT ( 1025 )IDLE ( 0 )"APPL NAME (SIMWARE)"APPLID ( SIM3278 )PORT ( 1025 )TELNET Statement
The TELNET statement defines default characteristics for the APPL statements and can also act as a generic APPL statement. Parameters specified here, except for PORT, are propagated for all APPL statements unless redefined on the APPL statement.
TELNET Statement Syntax
TELNET [DEFAULT]
[OPTIONS ( CNTL | 3278 | SNA | CRNL | 3767 )]
[PASS ( APPL | DATA | KEYB | NONE | NTRA )]
[PORT ( number )]
[TERMPROF ( terminal_group )]
[TRANTBL ( tranname )]
Syntax Description
DEFAULT
Indicates this statement is to be treated as a generic APPL statement. With this in effect, if the service name entered by the user does not match any of the APPL NAMEs it is used as a VTAM APPLID and a connection is attempted to that APPLID. If DEFAULT is not used, the response is "Unknown Command".
If you want to use this "default APPL" capability but do not want to use the characteristics specified in the TELNET statement, you can associate the DEFAULT parameter with an APPL statement that contains the desired characteristics. Make sure you specify it only once, either on the TELNET statement or an APPL statement.
OPTIONS ( CNTL | 3278 | SNA |
CRNL | 3767 )]Specifies a combination of service options:
CNTL—Pass through ASCII control characters
3278—Attempt to negotiate full-screen mode
SNA—Use SNA 3270 command codes
CRNL—Pass CR as new line character to local application
3767—Attempt to negotiate line modeDefault: 3278
PASS (APPL | DATA | KEYB | NONE | NTRA)
Specifies how data is passed to the application:
APPL—Pass the APPL from the command line
DATA—Pass the DATA from the command line
KEYB —Prevents keyboard lockup due to Handle End Bracket (HEB) sent by Telnet LUs using SNA sessions. Specifying this parameter ensures that the reset keyboard bit is on in the datastream.
NONE—Pass no data to the application
NTRA—Convert SNA command codes to either SNA or NON-SNA. This parameter is used with the SNA option of the OPTIONS parameter. Read the description of the OPTIONS parameter for more information. Default: no translation
Default: DATA
PORT ( number )
Specifies the well-known port number (1:4095) to be passed to the application. If more than one TELNET statement is configured, each one must have a different value for the PORT parameter.
Default: 23
TERMPROF ( terminal_group )
Specifies the terminal group name that must be defined on a TERMPROF statement.
Default: None; this must be specified.
TRANTBL ( tranname )
Specifies the translate table load module to be used by TELNET applications unless overridden by specifications on an APPL statement. The tranname can be one of the following:
•ENGLISH
•DANISH
•FCANADA
•FRENCH
•GERMAN
•GSWISS
•ITALIAN
•SPANISH
•SWEDISH
For more information on special translate tables, read Chapter 19, .
Default: Translate table specified by TRANTBL parameter on GLOBAL statement in APPCFGxx configuration member.
Usage Notes
Parameters of Note
You may need to change the following parameters for the TELNET statement:
DEFAULT
Indicates this statement is to be treated as a generic APPL statement. This allows a user to enter any VTAM applied in response to the Server Telnet prompt.
USSTAB
Specifies a USS table to be used for server TELNET connections on the port. Read USS Table Support for Server Telnet for more information.
TELNET Statement Usage
The TELNET entry, if specified, must precede all other APPL statements. Any APPL parameter, with the exception of APPLID and NAME, can be specified on the TELNET statement. In addition, the TELNET statement also can contain the net DEFAULT parameter to identify it as the default service described in the table.
Using the PORT Parameter
The PORT parameter can match the TELNET statement to any APPL statement or statements to which defaults are applied. If a port other than 23 is defined, you must configure a PORT parameter with the same value for any APPL statement or statements to which this TELNET statement applies. If more than one TELNET statement is configured, each one must have a different value for the PORT parameter. In addition, the TELNET PORT value must always match the SERVICE PORT value.
Using the OPTIONS(SNA) Parameter
The OPTIONS(SNA) parameter on the APPL or TELNET statement has nothing to do with whether or not LU2 support is invoked. This parameter causes the command code (first byte in any 3270 outbound datastream) to be translated to an SNA command code, because some applications may not be cognizant of the fact that they're communicating with an SNA partner. It's a good idea, however, to specify this parameter for SNA-designated applications just to make sure the client software doesn't get confused.
Using USS Table Support
If your site uses the USS Table support in Cisco IOS for S/390, note that more than one TELNET statement can be specified for usage with USS Tables, for these reasons:
•To allocate more than one port for USS Tables usage
•To allocate other TELNET ports for non-USS Tables applications.
Also, if you have used the API for Cisco IOS for S/390 to create custom applications, make sure not to assign a port number for a USS Tables facility that conflicts with a port number assigned to API programs.
TELNET Examples
These are examples for TELNET statements for use with USS Tables:
TELNET PORT ( 23 )PASS ( DATA )DEFAULTTELNET PORT ( 1123 )OPTIONS ( SNA )PASS ( DATA )TELNET PORT ( 1124 )OPTIONS ( 3278 )PASS ( DATA )For more information, read Client/Server TELNET chapter of the Cisco IOS for S/390 User's Guide.
Server TELNET Application Segment (APPL)
Use the APPL statement to define internal services within Cisco IOS for S/390. While it is not required to code APPL statements for the USS table facility, you must code APPL configuration statements for all non-USS table access to applications.
Server TELNET APPL Syntax
APPL NAME (service)
[APPLID (application_ID)]
[CHARS(number)]
[DEFAULT]
[LOGDATA (LOCADDR, REMADDR)]
[OPTIONS (CNTL | 3278 | SNA | CRNL | 3767)]
[PASS (APPL | DATA | KEYB | NONE | NTRA)]
[PORT (number)]
[SECURITY (NO | YES | name)]
[TERMPROF (terminal_group)]
[TRANTBL (tranname)]
Syntax Description
Usage Notes for TELNET APPL Statement
TELNET APPL Statements of Note
Create additional APPL statements to account for all the applications you will have access to, or use the DEFAULT option. DEFAULT requires that you know the VTAM APPLID of the application to which you want to connect.
You may need to change these parameters on the APPL Statement:
Setting Service Defaults
Defaults for non-USS table applications can be specified with a TELNET statement. Defaults for the services defined within the USS tables can be specified on corresponding TELNET (per port) statements. If multiple TELNET statements are specified and APPL statements are used, the APPL statements must use the PORT keyword in order to identify the TELNET statement to use for default options.
Using OPTIONS(SNA) Parameter
The OPTIONS(SNA) parameter on the APPL or TELNET statement has nothing to do with whether or not LU2 support is invoked. This parameter causes the command code (first byte in any 3270 outbound datastream) to be translated to an SNA command code, because some applications may not be cognizant of the fact that they're communicating with an SNA partner. Consider specifying this parameter for SNA-designated applications to make sure the client software does not get confused.
Configuring Services and VTAM Applications
The APPL statements define the Cisco IOS for S/390 services and VTAM applications that can be accessed on the MVS system. If an application is not defined with an APPL statement or if DEFAULT is not used, the application cannot be accessed.
Review the use of TERMPROF with APPL statements. APPL and TERMPROF statements do not depend on each other for specific placement in the configuration stream. A TELNET statement, if specified, must precede all APPL statements.
APPL Statements Description
APPL NAME ( NETSTA ) CHARS ( 3 )APPL NAME ( SYSSTAT ) CHARS ( 3 ) TRANTBL ( ENGLISH )APPL NAME ( ACTEST )APPL NAME ( ACCES ) APPLID ( A03ACCA PASS ( DATA ) TRANTBL ( ENGLISH )APPL NAME (LOGON) APPLID ( TSO ) PASS ( DATA )APPL NAME ( TSO ) APPLID ( TSO ) PASS ( DATA) PORT ( 1023 )APPL NAME ( SIM ) APPLID ( SIM3278 ) PASS ( DATA )APPL NAME ( SIM3278 ) APPLID ( SIM3278 ) PASS ( APPL DATA )APPL NAME ( TSO ) APPLID ( A02TSO ) PORT ( 23 )OPTIONS ( 3278 SNA ) TERMPROF ( T3278GRP )APPL NAME ( CICS ) APPLID ( A02CICSP ) PORT ( 27 )OPTIONS ( 3278 SNA ) TERMPROF ( T3279GRP )APPL Examples
These examples show the usage of the APPL statement.
Application subsystems accessible through VTAM:
APPLNAME ( LOGON )APPLID ( A06TSO )PASS ( DATA )APPLNAME ( TSO )APPLID ( A06TSO )PASS ( DATA )APPLNAME ( TSO )APPLID ( A06TSO )PORT ( 1023 )APPLNAME ( CICS )APPLID ( A06CICS )PASS ( DATA )APPLNAME ( IMS )APPLID ( A06IMS )PASS ( DATA )APPLNAME ( SIM3767 )APPLID ( SIM3278 )OPTIONS ( 3278 CNTL )APPLNAME ( SIM3278 )APPLID ( SIM3278 )OPTIONS ( 3278 CNTL )APPLNAME ( APL )APPLID ( A06TSO )APPLNAME ( WYLBUR )APPLID ( WYL )Test and Miscellaneous Services
APPLNAME ( ACCES )APPLID ( ACCES )PASS (DATA)TERMPROF Usage
APPLNAME ( TSO )APPLID ( A02TSO )PORT ( 23 )OPTIONS ( 3278 )TERMPROF ( T3279GRP )Support for ASCII terminals and other clients without TN3270:
APPLNAME ( TSOSIM )SIMPCS ( TNSIMPHI )APPLID ( A06TSO )PASS ( DATA )
Note Using Cisco IOS for S/390 with ASCII terminals requires the separate installation of the Sim3278 TCP/IP software.
Access to applications on systems not using USS tables:
APPL NAME ( NETSTAT )CHARS ( 3 )PORT ( 23 )APPL NAME ( SYSSTAT )CHARS ( 3 )PORT ( 23 )APPL NAME ( ACTEST )PORT ( 23 )LU Pool Facility—APPLUPxx Member
The APPLUPxx member in the PARM data set implements the Logical Unit (LU) pool facility. It is referenced by the HOST statement LUPARM keyword in APPCFGxx.
This facility assigns LU names to Server TELNET users requesting access to local VTAM applications based on a set of installation defined rules. The LU pools and rules are defined by member APPLUPxx. The LUPOOL statement defines the LU pools; the LURULE statement defines the LUPOOL rules. The LUPOOL and LURULE statements can appear anywhere within the member. Multiple copies of Cisco IOS for S/390 can use the same LUPARM files. For more information on the LUPOOL statement, see LUPOOL Statement. For more information on the LURULE statement, see LURULE Statement.
The same LUs can be used in both LUPOOL and ACCPOOL. For more information on ACCPOOL, see Modifying VTAMLST Application Definitions.
Virtual Terminal Setup
As distributed, the APPLUP00 member contains 99 Virtual Logical Terminals (VLTs or LUs) and ACCPOOL contains 30 of those 99 VLTs. This means that the VLTs assigned to ACCPOOL can also be used by Server TELNET users. While this should not be a problem for initial installation and testing, make an evaluation prior to production to ensure there are sufficient VLTs available for both types of usage. You may need to eliminate the overlap or define additional VLTs in both members.
The minimum changes to be made for installation and testing purposes are described here. Read LU Name Pools (LUPOOL), and LU Pool Facility—APPLUPxx Member for more detailed information on setting up additional LU rules and LU pools to create a more restrictive environment.
The APPLUP00 member distributed with Cisco IOS for S/390 is shown below:
LUPOOL NAME ( VLTPOOL )LU ( ACCVLT01,ACCVLT02,ACCVLT03,ACCVLT04,ACCVLT05,ACCVLT06,ACCVLT07,ACCVLT08,ACCVLT09,ACCVLT10,ACCVLT11,ACCVLT12,ACCVLT13,ACCVLT14,ACCVLT15,ACCVLT16,ACCVLT17,ACCVLT18,ACCVLT19,ACCVLT20,ACCVLT21,ACCVLT22,ACCVLT23,ACCVLT24,ACCVLT25,ACCVLT26,ACCVLT27,ACCVLT28,ACCVLT29,ACCVLT30,ACCVLT31,ACCVLT32,ACCVLT33,ACCVLT34,ACCVLT35,ACCVLT36,ACCVLT37,ACCVLT38,ACCVLT39,ACCVLT40,ACCVLT41,ACCVLT42,ACCVLT43,ACCVLT44,ACCVLT45,ACCVLT46,ACCVLT47,ACCVLT48,ACCVLT49,ACCVLT50,ACCVLT51,ACCVLT52,ACCVLT53,ACCVLT54,ACCVLT55,ACCVLT56,ACCVLT57,ACCVLT58,ACCVLT59,ACCVLT60,ACCVLT61,ACCVLT62,ACCVLT63,ACCVLT64,ACCVLT65,ACCVLT66,ACCVLT67,ACCVLT68,ACCVLT69,ACCVLT70,ACCVLT71,ACCVLT72,ACCVLT73,ACCVLT74,ACCVLT75,ACCVLT76,ACCVLT77,ACCVLT78,ACCVLT79,ACCVLT80,ACCVLT81,ACCVLT82,ACCVLT83,ACCVLT84,ACCVLT85,ACCVLT86,ACCVLT87,ACCVLT88,ACCVLT89,ACCVLT90,ACCVLT91,ACCVLT92,ACCVLT93,ACCVLT94,ACCVLT95,ACCVLT96,ACCVLT97,ACCVLT98,ACCVLT99 )LURULE IPADDR ( 0.0.0.0,255.255.255.255 )PORT ( * )USER ( * )APPLID ( * )POOL ( VLTPOOL )LU Name Pools (LUPOOL)
The LUPOOL statement groups one or more LU names, into pools. The pool usage is controlled by LURULE statements.
The LUPOOL NAME ( xx ) contains a pool of LU names and gives the pool a unique name. The LU names in the pool are actually the ACBNAMEs for the associated LUs. Normally LU name and ACBNAME are the same, but it is not a VTAM requirement. Any number of pools may be defined. There is no limit on the number of LU names you can define in a pool. LUPOOL statements are not required if the LU keyword is used instead of the POOL keyword on the LURULE statement.
Read LU Pool Facility—APPLUPxx Member for additional information and examples about APPLUPxx.
If VTAM LU definition is:
VLT02 APPL ACBNAME=ACCVLT02, ...the LU keyword is ACCVLT02, where LU and ACBNAME are not equivalent.
This example shows how to create an LUPOOL/LURULE combination named CICSPOOL:
To use only LUs ACCVLT02 through ACCVLT06 for use with CICS, you can either create an LUPOOL/LURULE combination named CICSPOOL, or use the LU keyword of the LURULE statement.
The LUPOOL contains five LUs:
LUPOOL NAME ( CICSPOOL ) LU ( ACCVLT02,ACCVLT03,ACCVLT04,ACCVLT05,ACCVLT06 )LURULE IPADDR ( 0.0.0.0,255.255.255.255 )PORT ( 1023 )USER ( * )APPLID ( CICS )POOL ( CICSPOOL )The LURULE states a PORT or APPLID that relates to a SERVICE/APPL combination for access to CICS ( defined in APPCFGxx ) and uses the POOL keyword to reflect ( CICSPOOL ).
The associated SERVICE and APPL statements are:
APPCFGxx statements
SERVICE NAME ( CICS ) MODULE ( STELNET ) PORT ( 1023 )APPL NAME ( CICS ) APPLID ( CICS )OPTIONS ( 3278 ) PORT ( 1023 )This example shows how to create the LURULE without an LUPOOL statement:
LURULE IPADDR ( 0.0.0.0,255.255.255.255 )PORT ( 1023 )USER ( * )APPLID ( CICS )LU ( ACCVLT02,ACCVLT03,ACCVLT04,ACCVLT05,ACCVLT06 )LU Name Rules (LURULE)
The LURULE statement identifies the criteria used to determine how an LU name is assigned to a remote Server TELNET user. There is no limit on the number of LU rules you can define.
Two types of LU pools are used by LU rules. The first type is defined explicitly by the LUPOOL statement and can be shared by multiple LURULEs. The second is defined implicitly by the LU keyword on the LURULE statement and these pools are exclusive to the LURULE. Each rule must use either the POOL or LU keyword to identify LU names associated with this rule. LU name selection is determined by testing each rule in the order in which it appears in the APPLUPxx member using this criteria (in order of significance):
•Remote IP address
•Local port address
•VTAM APPLID
•Local user identification
Since rules are exercised in the order in which they appear in the APPLUPxx member, enter the rules in the order of most specific to least specific.
The last rule is considered to be the default and identifies the default pool of LU names. Remote users not meeting the criteria for any rule are not assigned an LU name necessary to reach local host VTAM applications. Additionally, all LU names that are to be used must be defined in one or more LUPOOL statements and/or on the LU keyword of the LURULE statements.
In summary, all LU names to be used must be defined and all users must match at least one rule. The same PARM members can be shared between multiple Cisco IOS for S/390 address spaces, but sharing these LUs can cause a problem if a REFRESH is attempted or if matching LU rules are not defined in the shared address spaces.
Refreshing the LUPOOL Facility
You can refresh the LUPOOL facility while Cisco IOS for S/390 is actively running. Issue the APP REFRESH LUPARM(APPLUPxx) command with the subsystem recognition character from the operator console. If there is a problem with the new LU pool configuration member, informative messages describing the problem display at the operator console and the old configuration remains active.
LUPOOL Statement
The LUPOOL statement has the following syntax:
LUPOOL NAME (poolname)
ALLOCATE (FIRST | NEXT)
LU (acbname_1,...,... acbname_n)
Syntax Definition
LURULE Statement
The LURULE statement has the following syntax:
LURULE [IPADDR (ip_source_min_addr, ip_source_max_addr)]
[PORT (port_dest_num)]
[APPLID (VTAM_appl_applid)]
[USER (host_userid)]
[POOL ( poolname )]
[TRACE]
[LU (acbname_1,...abcname_n)]
Syntax Description
Changes to APPLUPxx
These are changes you may need to make for the initial installation:
If you want to establish more pools and rules now, read the following two sections. You can make changes later and implement them with the REFRESH operator command. If you are not going to establish more pools or rules, you can skip to the next section, Modifying VTAMLST Application Definitions.
APPLUPxx Usage Notes
ACBNAME and LU Names
The names specified in the LU keyword are ACBNAMES and not LU names. Frequently, the ACBNAME and the LU name are the same, but it is possible for them to be different. When they are different, the names in the keyword must be the ACBNAMEs.
APPLUPxx Not Provided
If this member is missing, then the ACCPOOL load module is used to provide ACBNAMEs for the LUs to use for Server TELNET.
APPLUPxx Examples
This is an example of an installation that has 30 LU names defined. They must be able to:
•Trace on a single LU name in case of VTAM problems
•Define a limited number of LU names to the Payroll application and limit their use to authorized users of the application
•Make the remaining LU names available to all users
To satisfy the first case, a test user ID was defined and a rule created to assign a specific LU name based on the user ID. To satisfy the second case, a pool was defined containing the LU names that are defined to the Payroll application. The associated rule uses the application's APPLID and the user's user ID to determine if the LU name should be assigned. Lastly, a pool is defined for the remaining LU names. The associated rule has no restrictions and lets all users be assigned an LU name from this pool.
This is an example of the required APPLUPxx member.
*-----------------------------------------------------------** RULE TO BE USED FOR TESTING TO ALLOW TRACING ON ONLY* ONE LUNAME. MATCH FOR THIS RULE IS BASED ON USERID AND* POOL IS DEFINED IMPLICITLY VIA THE LU PARAMETER*-----------------------------------------------------------*LURULE IPADDR(0.0.0.0,255.255.255.255)PORT(*)USER(TST*)APPLID(*)LU(ACCVLT30)*------------------------------------------------------------** POOL DEFINED FOR CICS PAYROLL APPLICATION. ONLY THE* LUNAMES CONTAINED IN THIS POOL ARE DEFINED TO THE* APPLICATION.*------------------------------------------------------------*LUPOOL NAME(ACCTPOOL)LU(ACCVLT02,ACCVLT03,ACCVLT04)*------------------------------------------------------------** RULE FOR CICS PAYROLL APPLICATION - MATCH BASED ON* USERID AND APPLID.*------------------------------------------------------------*LURULE IPADDR(0.0.0.0,255.255.255.255)PORT(*)USER(AC4*)APPLID(ACCICS4)POOL(ACCTPOOL)*---------------------------------------------------------** GENERAL POOL FOR ALL USERS.*---------------------------------------------------------*LUPOOL NAME(GENERAL)LU(ACCVLT05,ACCVLT06,ACCVLT07,ACCVLT08,ACCVLT09,ACCVLT10,ACCVLT11,ACCVLT12,ACCVLT13,ACCVLT14,ACCVLT15,ACCVLT16,ACCVLT17,ACCVLT18,ACCVLT19,ACCVLT20,ACCVLT21,ACCVLT22,ACCVLT23,ACCVLT24,ACCVLT25,ACCVLT26,ACCVLT27,ACCVLT28,ACCVLT29)*----------------------------------------------------------** GENERAL RULE - NO RESTRICTIONS*-----------------------------------------------------------*LURULE IPADDR(0.0.0.0,255.255.255.255)PORT(*)USER(*)APPLID(*)POOL(GENERAL)Terminal Profile (TERMPROF)
The TERMPROF statement and the TERMPROF parameter in APPL definitions together define site-configurable terminal environmentals (terminal type, logmode name, maximum buffer size) to be used during the terminal-type negotiation process. The TERMPROF facility removes constraints in the Server TELNET environment by giving users the ability to customize their own TELNET terminal profiles.
TERMPROF usage is optional. If it is not specified for an application, the hard-coded methods are used, which means anyone connecting to the application generally cannot run as an SNA session. However, the application has the final say over which parameters are used for a session. The logmode entry name in the TERMPROF statement is only a suggested name. Usually, the host application accepts this, but some applications, such as CICS, build their own session parameters based on entries in the application's Terminal Control Table (TCT) and ignore the suggested logmode table name.
TERMPROF Statement Syntax
TERMPROF GROUP ( terminal_profile_group_name )
LOGMODENAME ( ACF/VTAM_logmode_name )
TERMTYPE (terminal_type)
BUFFERSIZE ( buffersize )
Syntax Description
Usage Notes for TERMPROF Statement
Parameters of Note for the TERMPROF Statement
You may need to change these parameters on the TERMPROF statement:
GROUP
The terminal group name. This must be specified.
LOGMODENAME
The logmode name.
TERMTYPE
The type of terminal. For example, IBM-3278-2.
BUFFERSIZE
The maximum buffer size.
Invoking TERMPROF
To invoke TERMPROF, specify it on either the APPL statement (explicit) or the TELNET statement (implicit) for promotion to all succeeding APPL and TELNET statements. To invoke LU2 support for a given session or sessions, have your Cisco IOS for S/390 administrator designate which applications have SNA capability in the APPCFGxx member by associating these applications with a set of ACF/VTAM SNA/LU2 logmode tables.
The TERMPROF facility is normally invoked for 3278 (fullscreen) sessions only. Fullscreen sessions are identified by the OPTIONS(3278) parameter in the APPCFGxx APPL statement (3278 is the default). Fullscreen sessions undergo terminal negotiation at session initialization. If terminal negotiation fails, or if Cisco IOS for S/390 and the client are unable to agree on a suitable terminal type, the TERMPROF facility is discarded and the session proceeds in 3767 (line) mode using INTERACT as the mode table name. INTERACT is a standard mode table name in the default mode table (ISTINCLM) distributed with ACF/VTAM.
TERMPROF can also be invoked for line mode (non-3278) sessions to provide flexibility in choosing the mode table name to be used for these sessions. Prior to TERMPROF, line mode sessions were forced to use INTERACT as the mode table name. Since line mode sessions do not undergo terminal negotiation, you would just specify the name of a single entry in the associated TERMPROF group to be used for the session. When TERMPROF is used for line mode sessions, the TERMTYPE parameter is ignored and BUFFERSIZE is preset to 256. If TERMPROF is omitted for line mode sessions, INTERACT is used for the logmode entry name. To identify line mode sessions, specify OPTIONS(3767/LINEMODE).
Using Logmode Tables
Logmode tables contain the session parameters used by ACF/VTAM session initiation routines to determine rules that will be observed between session partners, such as the host application and the TELNET user. These logmode tables can be the standard set supplied with ACF/VTAM, or a set customized by the user. Entries in the logmode tables also determine if the session will support LU2. The TERMPROF configuration statement lets the Cisco IOS for S/390 administrator declare which set of logmode tables will be used for which Cisco IOS for S/390 sessions or applications.
Using the OPTIONS(SNA) Parameter
The OPTIONS(SNA) parameter on the APPL or TELNET statement has nothing to do with whether or not LU2 support is invoked. This parameter causes the command code (first byte in any 3270 outbound datastream) to be translated to an SNA command code. This occurs because some applications may not be cognizant of the fact that they're communicating with an SNA partner. It's a good idea, however, to specify this parameter for SNA-designated applications just to make sure the client software doesn't get confused.
Changing Buffer Size
For LU2 sessions, the buffer size can be any value, but is generally greater than or equal to 256. This is because LU2 sessions support SNA chaining. For LU0 sessions (non-SNA), this value must be at least the maximum screen size supported by the device type negotiated at session initialization. For example, if emulating a non-SNA IBM-3278-2, this value should be at least 1920 (24 x 80). Similarly, if emulating an IBM-3278-3 session, this value should be at least 2560 (32 x 80). Failure to observe LU0 restrictions may result in serious side-effects.
There is a difference in the BUFFERSIZE parameter between SNA and non-SNA TERMPROF definitions. For SNA terminal profiles, BUFFERSIZE can be set to a small value as SNA supports RU chaining. The smaller buffer sizes let users conserve virtual storage to improve performance when network volume is high. For non-SNA terminal profiles, the BUFFERSIZE parameter must be set to at least the maximum screen size for the device, as non-SNA (LU0) does not support RU chaining. If data is received in excess of the BUFFERSIZE for an LU0 device, message T01ST026I will be issued and the session terminated.
Large buffer sizes reduce chaining and thus yield better response time, but possibly at a cost of reduced number of concurrent sessions or general sluggishness across the network. You must decide what is the best choice for your configuration.
For SNA sessions, the default buffer size of 976 is probably larger than you need. For non-SNA sessions, this value is too small for the majority of terminals (3278-2 and up) that would be accessing Cisco IOS for S/390. To avoid screen problems for LU0 sessions, always specify a buffer size value using the above guidelines for LU0 sessions, or you may use the buffer size values in the APPCFG00 example.
Supporting LOGMODE Substitution for USS Tables
For special instructions on using TERMPROF to support LOGMODE substitution for USS tables, read USS Table Support for Server Telnet.
Using the TELNET Terminal Negotiation Process
The TELNET terminal negotiation process compares the TERMTYPE value given in the TERMPROF statement to the terminal type received from the client. If they match, the logmode name and buffer size from the matching TERMPROF entry are used for the session. Sample TERMPROF statements in APPCFG00 on any V2.0+ Cisco IOS for S/390 distribution tape contain fairly up-to-date paradigms of the TELNET terminal types currently supported. If you are using client software capable of supporting EDS (3270 extended data streams), the terminal type should have the string -E appended to it (for example, IBM-3279-3-E).
TERMPROF usage applies to the Server TELNET environment only. It does not apply to the Cisco IOS for S/390 User TELNET (VTELNET) environment.
TERMPROF Example
This is an example of a partial APPCFGxx configuration illustrating both LU0 and LU2 definitions:
...APPL NAME ( TSOS ) APPLID ( TSOAPPL ) OPTIONS ( 3278 SNA )TERMPROF ( SNAGROUP ) PASS ( NTRA )APPL NAME ( TSON ) APPLID ( TSOAPPL ) OPTIONS ( 3278 )TERMPROF ( NOSNAGRP )...** SNA TERMPROF Group ( LU2 )*TERMPROF ( SNAGROUP ) TERMTYPE ( IBM-3278-1 )BUFFERSIZE ( 256 ) LOGMODENAME ( D4A32781 )TERMPROF ( SNAGROUP ) TERMTYPE ( IBM-3278-2 )BUFFERSIZE ( 256 ) LOGMODENAME ( D4A32782 )TERMPROF ( SNAGROUP ) TERMTYPE ( IBM-3278-3 )BUFFERSIZE ( 256 ) LOGMODENAME ( D4A32783 )TERMPROF ( SNAGROUP ) TERMTYPE ( IBM-3278-4 )BUFFERSIZE ( 256 ) LOGMODENAME ( D4A32784 )TERMPROF ( SNAGROUP ) TERMTYPE ( IBM-3278-5 )BUFFERSIZE ( 256 ) LOGMODENAME ( D4A32785 )** Non-SNA TERMPROF Group ( LU0 )*TERMPROF ( NOSNRGRP ) TERMTYPE ( IBM-3278-1 )BUFFERSIZE ( 960 ) LOGMODENAME ( D4B32781 )TERMPROF ( NOSNRGRP ) TERMTYPE ( IBM-3278-2 )BUFFERSIZE ( 1920 ) LOGMODENAME ( D4B32782 )TERMPROF ( NOSNRGRP ) TERMTYPE ( IBM-3278-3 )BUFFERSIZE ( 2560 ) LOGMODENAME ( D4B32783 )TERMPROF ( NOSNRGRP ) TERMTYPE ( IBM-3278-4 )BUFFERSIZE ( 3440 ) LOGMODENAME ( D4B32784 )TERMPROF ( NOSNRGRP ) TERMTYPE ( IBM-3278-5 )BUFFERSIZE ( 3564 ) LOGMODENAME ( D4B32785 )...The logmode names used in this example are the names of standard SNA (D4Axxxxx) and non-SNA (D4Bxxxxx) logmode entries supplied with the ACF/VTAM product. They could also be the names of a set of custom logmode tables. User-defined logmode tables, like all other logmode tables, must reside in the ACF/VTAM load library (normally SYS1.VTAMLIB).
As shown in the example above, start a TELNET session by entering TSOS at the TELNET command prompt; TELNET will run as an SNA session. Entering TSON invokes the same host TSO application in non-SNA mode. For example, if you enter TSOS, and during terminal negotiation you send a terminal type of IBM-3278-3, server TELNET uses logmode entry D4A32783 to establish the connection with the host. D4A32783 is the standard IBM ACF/VTAM logmode table used to establish an SNA session with a 3278-3 device.
Modifying VTAMLST Application Definitions
This section provides information to help you change the APPL statements in the Cisco IOS for S/390 application major node in SYS1.VTAMLST.
If you made any changes to the VTAM definitions supplied in the A03ACCES member when you installed them in your own system, or if you want to make changes now, corresponding changes may be required in the Cisco IOS for S/390 software.
If you used the default definitions you can skip to configuring your DNR interface to continue the customization but keep in mind that these sections must be reviewed if you make any changes, including the addition of VLTs, in the future.
These are the categories of changes:
•Changing the application definition ACBNAME
•Changing the application definition LU name
•Changing the terminal definition LU name
•Changing the terminal definition ACBNAME
•Adding or deleting terminal definitions
Setting Up Pools
This information describes how to set up pools of APPL statements for different uses:
•A pool of APPL statements for Cisco IOS for S/390 to use as a Primary Logical Unit (PLU).
•One APPL statement must be defined for each copy of Cisco IOS for S/390 running on your system.
•A pool of APPL statements for use as Virtual Logical Terminals (VLTs).
•VLTs are used by the TSO client programs (TCPEEP, TELNET, FTP, and FTP2) to connect to Cisco IOS for S/390 and are also used by the TELNET Server to act as virtual terminals to let TELNET users access SNA application programs such as TSO, CICS, and IMS).
Cisco IOS for S/390 Application Definitions
*================================================** TCP VTAM DEFINITIONS*================================================** THIS MEMBER DEFINES THE APPL STATEMENTS AND MAJOR NODES* NEEDED BY TCP TO PROPERLY UTILIZE VTAM. COPY IT TO* SYS1.VTAMLST (OR YOUR SITE'S EQUIVALENT DATA SET.* MAKE SURE IT IS ADDED TO ATCCON00 (OR YOUR SITES MEMBER) SO* IT WILL AUTOMATICALLY BE STARTED DURING VTAM INITIALIZATION*================================================*A03ACCES VBUILD TYPE=APPL APPLICATION MAJOR NODE*================================================** TCP PRIMARY LOGICAL UNIT (PLU) POOL*================================================**================================================** ONE APPL STATEMENT IS NEEDED FOR EACH COPY OF TCP THAT* WILL BE ACTIVE ON YOUR SYSTEM*================================================**A03ACCA APPL ACBNAME=ACCES, TCP APPLICATION DEFINITION +VPACING=1,AUTH=(VPACE),EAS=10 PRODUCTION VERSION*A03ACCAE APPL ACBNAME=ACCESE, TCP APPLICATION DEFINITION +VPACING=1,AUTH=(VPACE),EAS=10 TEST VERSION**================================================**TCP VIRTUAL LOGICAL TERMINAL (VLT) POOL*================================================**ONE APPL STATEMENT IS NEEDED FOR EACH APPL THAT IS DEFINED*IN ACCPOOL 1 (VLT POOL) OF THE ACCPOOL MEMBER WHICH IS LOCATED*IN THE SAMP DATA SET OR EACH APPL THAT IS DEFINED IN ANY LU*KEYWORD IN APPLUPXX*================================================**A03VLT01 APPL ACBNAME=ACCVLT01, TCP VIRTUAL TERMINAL DEFINITION +VPACING=1,AUTH=(VPACE),EAS=10*..*A03VLT99 APPL ACBNAME=ACCVLT99, TCP VIRTUAL TERMINAL DEFINITION +VPACING=1,AUTH=(VPACE),EAS=10Customizing the Application Definition ACBNAME
This section describes how to change the ACBNAMEs for the Cisco IOS for S/390 applications. In the sample major node definition, change the ACBNAMEs (ACCES and ACCESE) in these APPL statements. Note that if a line of code must wrap, a continuation character (+) must be in column 72:
Cisco IOS for S/390 Application Definitions
A03ACCA APPL ACBNAME=ACCES, TCP APPLICATION DEFINITION +VPACING=1,AUTH=(VPACE),EAS=10 PRODUCTION VERSION*A03ACCAE APPL ACBNAME=ACCESE, TCP APPLICATION DEFINITION +VPACING=1,AUTH=(VPACE),EAS=10 ETHERNET VERSIONFollow these steps to change the ACBNAME:
To change the Cisco IOS for S/390 application ACBNAME, you need to change the value of the ACBNAME parameter in APPCFGxx.
Step 1 Change the ACBNAME parameter in the application definitions in SYS1.VTAMLST.
You can activate or deactivate APPL definitions to VTAM. To inactivate an APPL to VTAM, execute this command:
V NET,INACT,ID=A03ACCESTo activate an APPL to VTAM, execute this command:
V NET,ACT,ID=A03ACCESStep 2 Change the value of the ACBNAME parameter on the GLOBAL statement in PARM member APPCFGxx to the new ACBNAME.
Step 3 Specify the proper suffix for APPCFGxx in the START APP CNFG(xx) command in the STARTxx PARM member.
Customizing the Application Definition LU Name
This section describes how to change the LU name in the PLU pool for the Cisco IOS for S/390 applications.
When you change the Cisco IOS for S/390 application LU name you may also need to make changes to these statements:
•TSO client programs, because they need to know the LU name to connect to the Cisco IOS for S/390 application
•APPL statements that reference that application LU name in APPCFGxx
•VTAM interpret and USS tables that reference that application LU name
•Netview CLISTs or other network management facilities that reference that application LU name
•Network or session manager products that reference that application LU name
•Other VTAM applications that reference that application LU name
Cisco IOS for S/390 Application Definitions
A03ACCA APPL ACBNAME=ACCES, +VPACING=1,AUTH=(VPACE),EAS=10*A03ACCAE APPL ACBNAME=ACCESE, +VPACING=1,AUTH=(VPACE),EAS=10Follow these steps to change the LU name:
Step 1 Change the LU name (label) on the Cisco IOS for S/390 application definition.
Step 2 Change the application LU name in SAMP member APPLNAME.
This is the code for module APPLNAME:
APPLNAME CSECTDC CL7'A03ACCA'ENDThe specified application LU name can be a maximum of seven characters. This allows the Cisco IOS for S/390 TSO programs to specify a suffix character (using the SYS= parameter) letting the TSO programs connect to production and test versions of
Cisco IOS for S/390. The APP= parameter can also be used to connect to other versions of Cisco IOS for S/390. The APP= parameter accepts a full LU name instead of only a suffix character.Step 3 CNTL data set member UMODAPPL contains an SMP/E usermod that instructs SMP/E to reassemble and link-edit the APPLNAME module using the APPLNAME member from the SAMP data set. This updates the client commands located in the LINK library.
Change the xxx to the correct FMID suffix for the TCP base product.
This SMP/E JCL receives and applies the USERMOD:
//SMPE EXEC PGM=GIMSMP,REGION=4096K,// PARM='CSI=TRGINDX.CSI,PROCESS=WAIT'//SMPHOLD DD DUMMY//SMPLOG DD DSN=TRGINDX.SMPLOG,DISP=MOD//SMPOUT DD SYSOUT=HOLDCL//SMPPTFIN DD *++ USERMOD (MU0APPL) .++ VER (Z038)FMID (T00xxx) /* CHANGE TO CORRECT TCP/IP FMID */ .++SRC (APPLNAME)TXLIB(TCPSAMP)DISTMOD(ATCPLOAD)DISTLIB(ATCPSAMP) ./*//SMPCNTL DD *SET BDY(GLOBAL) .RECEIVE S(MU0APPL) .SET BDY(TCPTZN) .APPLY S(MU0APPL) ./*Step 4 Change any APPL statements in APPCFGxx that reference the original application LU name to reference the new LU name. These definitions are provided in the sample APPCFG00 primarily for testing purposes.
Step 5 Change any VTAM interpret and USS tables that reference the original application LU name to reference the new LU name.
Step 6 Change Netview, network and session managers, and other VTAM applications that reference the original application LU name in accordance with IBM or other vendor documentation.
Step 7 If necessary, execute LLA,REFRESH to update LINK library.
Customizing the Terminal Definition LU Name
To change the Cisco IOS for S/390 virtual terminal LU names modify the LU names in the virtual terminal APPL definitions in the Cisco IOS for S/390 major node definition in SYS1.VTAMLST. No other changes are required.
Customizing the Terminal Definition ACBNAME
This section describes how to change the ACBNAMEs of the APPL statements for the
Cisco IOS for S/390 VLTs. In the sample major node definition, the ACBNAMEs (ACCVLTxx) are in these APPL statements:Cisco IOS for S/390 Virtual Terminal Definitions
A03VLT01 APPL ACBNAME=ACCVLT01, TCP VIRTUAL TERMINAL DEFINITION +VPACING=1, AUTH=(VPACE),EAS=10*A03VLT02 APPL ACBNAME=ACCVLT02, TCP VIRTUAL TERMINAL DEFINITION +VPACING=1,AUTH=(VPACE),EAS=10*A03VLT03 APPL ACBNAME=ACCVLT03, TCP VIRTUAL TERMINAL DEFINITION +VPACING=1,AUTH=(VPACE),EAS=10*A03VLT04 APPL ACBNAME=ACCVLT04, TCP VIRTUAL TERMINAL DEFINITION +VPACING=1,AUTH=(VPACE),EAS=10*A03VLT05 APPL ACBNAME=ACCVLT05, TCP VIRTUAL TERMINAL DEFINITION +VPACING=1,AUTH=(VPACE),EAS=10..*A03VLT99 APPL ACBNAME=ACCVLT99, TCP VIRTUAL TERMINAL DEFINITION +VPACING=1,AUTH=(VPACE),EAS=10*The ACCPOOL statement specifies the ACBNAME entries for a pool of virtual terminals. Because the Cisco IOS for S/390 TSO commands use the module, the module is installed into a system link list library. Note that, because Cisco IOS for S/390 ACBNAME entries are case sensitive, all ACBNAME entries must be all uppercase.
Follow these steps to change the terminal definition ACBNAME:
Step 1 Change the ACBNAME parameter in the Cisco IOS for S/390 application definitions in SYS1.VTAMLST.
You can activate or deactivate APPL definitions to VTAM. To inactivate an APPL to VTAM, execute this command:
V NET,INACT,ID=A03ACCESTo activate an APPL to VTAM, execute this command:
V NET,ACT,ID=A03ACCESStep 2 Change the ACBNAME parameter for the virtual terminal APPL definitions in the Cisco IOS for S/390 major node definition in SYS1.VTAMLST.
Step 3 Change the ACBNAMEs specified in ACCPOOL on the APPOOL macro to match the new ACBNAMEs specified in the VTAMLST major node definition.
Step 4 Have SMP/E assemble and link-edit module ACCPOOL using the usermod UMODPOOL in the CNTL data set.
Step 5 Update PARM member APPLUPxx to change ACBNAMEs in the LU keyword(s) found in that member.
Adding or Deleting Terminal Definitions
This section provides instruction to help you add or delete Cisco IOS for S/390 VLT definitions.
Basically, addition or deletion of terminal definitions requires changing the VTAMLST APPL definitions and editing, compiling, and linking SAMP member ACCPOOL, and updating PARM member APPLUPxx. Note that because Cisco IOS for S/390 ACBNAME entries are case sensitive, all ACBNAME entries must be all uppercase.
•If you are using only client commands you must update the SAMP member ACCPOOL, and execute CNTL member UMODPOOL.
•If you are using Server TELNET, use ACCPOOL LUs if APPLUPxx is not implemented, and/or update APPLUPxx and perform this operator command
APP REFRESH LUPARM ( APPLUPxx )Follow these steps to add or delete terminal definitions:
Step 1 Change the ACBNAME parameter in the Cisco IOS for S/390 application definitions in SYS1.VTAMLST.
You can activate or deactivate APPL definitions to VTAM. To inactivate an APPL to VTAM, execute this command:
V NET,INACT,ID=A03ACCESTo activate an APPL to VTAM, execute this command:
V NET,ACT,ID=A03ACCESStep 2 Add or delete APPL statements in the major node definition for Cisco IOS for S/390. Remember that the ACBNAME and LU (label) name for each APPL must be unique.
Step 3 Add or delete the specified ACBNAMEs in the appropriate APPOOL macro in SAMP member ACCPOOL. You can specify additional APPL statements in VTAMLST that are not represented by APPOOL macros, but all ACBNAMEs on APPOOL macros must be defined with APPL statements in VTAMLST.
Step 4 Have SMP/E assemble and link-edit module ACCPOOL using the usermod UMODPOOL in the CNTL data set.
Step 5 If necessary, perform an LLA, REFRESH operation to make the new pool definition active. No IPL or restart of Cisco IOS for S/390 is necessary to get the new definitions to take effect.
Step 6 Update PARM member APPLUPxx to add or delete ACBNAMEs in the LU keyword(s) found in that member for Server TELNET users.
Configuring Automatic Logon to VTAM Applications
You can configure Cisco IOS for S/390 to have Server TELNET users automatically connected to a VTAM application.
With automatic logon in place, the VTAM application menu displays in response to the TN3270 command. This feature is useful for those sites where normal access to mainframe applications is through a session manager. By having network users access the system the same way, it provides a common point of reference for all users.
There are two ways to implement this feature. The first is to associate it with the TELNET well known port, Port 23. The second is to use a different port number. If a different port number is used, you must verify that your Client TELNET package allows a port number to be included in addition to the host name, and then specify the port number when you issue the TELNET command.
To specify Port 2023, use this command:
TN3270 mvs-host 2023
In the following examples, Simware's SIM3278/VTAM session manager is used as the application.
Automatic logon from Port 23 and the standard connection assigned to Port 2023.
SERVICE NAME ( TELNET ) MODULE ( STELNET ) PORT ( 23 )IDLE ( 480 ) AUTOLOGON ( SIMWARE )SERVICE NAME ( TELNET ) MODULE ( STELNET ) PORT ( 2023 )IDLE ( 480 )APPL NAME ( SIMWARE ) APPLID ( SIM3278 )OPTIONS ( 3278 ) PASS ( APPL DATA ) PORT ( 23 )Automatic logon from Port 2023.
SERVICE NAME ( TELNET ) MODULE ( STELNET ) PORT ( 2023 )IDLE ( 480 ) AUTOLOGON ( SIM3278 )APPL NAME ( SIMWARE ) APPLID ( SIM3278 )OPTIONS ( 3278 ) PASS ( APPL DATA ) PORT ( 2023 )As you can see from the examples, the basics are:
•Include the AUTOLOGON parameter on the SERVICE statement, pointing it to the NAME parameter of the APPL statement to connect to.
•Include a PORT parameter on the APPL statement to match the PORT parameter on the SERVICE statement.
In the first example, no additional APPL statement is required for Port 2023 because autologon was not requested for it. Users coming in through this port receive the standard prompt.
USS Table Support for Server Telnet
Server Telnet supports the use of Session Level USSTAB (Unformatted System Services Tables) and their associated msg10 screens. The feature enables you to customize screen access information for VTAM applications that are opened through Cisco IOS for S/390.
You can use USS tables to customize logon/logoff message text and commands on a service port basis, including the following types of implementation:
•You can define a particular port to be used for Server Telnet VTAM applications that will be accessed through the USS table facility.
•You can specify a unique USS table for each port defined.
•If your site requires more than one USS table as a front-end to VTAM applications from Telnet, you may define multiple ports defined as Server Telnet ports, each using a different USS table. This could, for example, facilitate multi-language environments, device-dependent transactions, and could also be used to enhance security.
Only session-level USS tables are supported. Session-level USS tables define command formats, message text, and translation tables for VTAM application end users. Operation-level USS tables are not supported. The operation level tables process commands received from the VTAM operator.
USS Table Customization Requirements
Using the USSTAB feature for Cisco IOS for S/390 requires that the data set containing the assembled and linked USS table(s) be copied into a library defined on the STEPLIB DD in the
Cisco IOS for S/390 start-up JCL, or concatenated to the library containing the load modules in the STEPLIB DD. Also, if you wish to use the IBM-delivered default Session-level USS table, ISTINCDT, as a default table, you must make the table available to the Cisco IOS for S/390 job or started task. Cisco IOS for S/390 provides two session-level default tables:•T01USS01, used in line-mode
•T01USS02, used in fullscreen mode (when the START3270 option is used)
The appropriate table is used as a default whenever ISTINCDT is unavailable, and is also used when USSTAB is not configured. Source code for these tables is available in the SAMP library and may be modified for your installation.
If you connect to a port with USSTAB and the table does not exist, you will access either the T01USS01 or T01USS02 table, depending on the presence of the START3270 parameter.
If you connect to T01USS01, the LOGON command for direct access to TSO will return UNRECOGNIZED COMMAND.Additionally, USSTAB parameter settings are required in the SERVICE and TELNET statements of the configuration. In some cases, parameter entries are also required in the APPL statement of configuration. For details, read Protocol Service Segment (SERVICE).
Using LOGMODE with USSTAB
If your USS table(s) contain LOGMODE(s) which you wish to have passed to the VTAM application(s), or if you wish to support the LOGMODE parameter on the LOGON command, you must associate the LOGMODE(s) with the appropriate terminal type(s) by means of the TERMPROF statement.
Step 1 Define a TELNET statement for the server telnet port which specifies a TERMPROF group.
Step 2 Within this TERMPROF group, define TERMPROF statements which associate the LOGMODE(s) from the USS table(s) with the appropriate terminal type(s). When a LOGMODE is supplied, either in a USS table through the USSCMD macro, or as part of a LOGON command, server telnet will scan the TERMPROF group to see if the LOGMODE and the negotiated terminal type can be matched. If a match is found, the LOGMODE will be passed to the VTAM application, otherwise it will be ignored.
SERVICE NAME ( TELNET ) MODULE ( STELNET ) PORT ( 23 ) USSTAB ( USSTABLE ) START3270*TELNET PORT ( 23 ) PASS ( DATA ) TERMPROF ( GROUP01 )*TERMPROF GROUP ( GROUP01 ) LOGMODENAME ( D4A32781 )BUFFERSIZE ( 256 ) TERMTYPE ( IBM-3278-1 )TERMPROF GROUP ( GROUP01 ) LOGMODENAME ( D4A32782 )BUFFERSIZE ( 256 ) TERMTYPE ( IBM-3278-2 )TERMPROF GROUP ( GROUP01 ) LOGMODENAME ( CICSM2 )BUFFERSIZE ( 256 ) TERMTYPE ( IBM-3278-2 )In this example, D4A32782 is the default logmode for the terminal type IBM-3278-2. The next entry defines CICSM2 as a valid logmode for the same terminal type, thus allowing server telnet to use that logmode when specified on a USS table, and terminal type IBM-3278-2 is negotiated.
Preparing USS Tables
No special preparation is required to use USS tables with Cisco IOS for S/390, with the exception that FORMAT=DYNAMIC must be specified on the USSTAB macro. Standard rules for command and parameter substitution are followed. Only the APPLID, DATA and LOGMODE parameters are passed to the VTAM logon; all other parameters are parsed and ignored.
Note that, when USSMSG BUFFER= is used, there are generally two types of buffers that may be defined: SNA, which uses the newline character (X'15') to set up the screen, and non-SNA, which uses 3270 command codes. If your USS table uses a non-SNA-format buffer, you must code START3270 on the SERVICE statement for that port. If your table uses an SNA-format buffer, it is recommended that you do not code START3270, so that the message will be displayed in linemode prior to 3270 negotiation with the client TN3270. If a USS table with an SNA-format buffer is used in full-screen mode (START3270), Cisco IOS for S/390 will attempt to convert the message to a valid 3270 datastream before sending it to the client TN3270 according to the following rules:
An erase-write command, write-control-character, and set buffer address to row 1, column 1, will precede the buffer.
Each newline character (X'15') will be replaced with a set buffer address command. The first newline will be replaced with SBA row 2, column 1; the second with SBA row 3, column 1, and so on. The substitution assumes a model 4 terminal (this works for models 2 and 3 as well, providing the number of rows in the buffer does not exceed the maximum for the terminal type).
The buffer will be followed with a write structured field command specifying unprotect and insert cursor.
Refer to the IBM VTAM: Resource Definition Reference for additional information on coding USS tables.
USSMSG Variable Data Substitution
Cisco IOS for S/390 will substitute the following variables in USS table messages according to the rules documented in the VTAM: Resource Definition Reference.
Additionally, the following substitution will be made:
Using NETSTAT, SYSSTAT, and ACTEST with a Full-screen USS Table
The NETSTAT, SYSSTAT, and ACTEST services, as well as the "intrinsic" services (such as NEWS and HELP) are not supported in full-screen (START3270) mode. To use these services with START3270, the user can logon to the Cisco IOS for S/390 VTAM primary ACBNAME (the name on the ACBNAME parameter of the HOST statement) and specify the loopback IP address and server Telnet port as data to be passed to the application.
logon applid (a03acca) data ('127.0.0.1,23')This will cause server Telnet to logon to Cisco IOS for S/390 in loopback mode. The port used must not have START3270 specified on the SERVICE statement, and must have APPL statements coded for any services to be used. At this point, you can simply enter the name of the service desired, and the service will be invoked in linemode. When you are finished, enter END to return to the linemode prompt, then END again to end the VTAM session and return to the full-screen display.
Additionally, you can enter ACTEST directly by coding:
logon applid ( a03acca ) data ( ;vtamtest )If desired, the USS table can be updated to provide access to these services. For example:
NETSTA USSCMD CMD=NETSTAT,REP=LOGON,FORMAT=PLIUSSPARM PARM=APPLID,DEFAULT=A03ACCAUSSPARM PARM=P1,REP=DATA,DEFAULT='127.0.0.1,23'*ACTEST USSCMD CMD=ACTEST,REP=LOGON,FORMAT=PLIUSSPARM PARM=APPLID,DEFAULT=A03ACCAUSSPARM PARM=P1,REP=DATA,DEFAULT=';VTAMTEST'USS Table Server Telnet Operation
Once a port specified with the USSTAB option has been selected through Server Telnet, these are the operations that will be processed:
•The msg10 screen displays for an initial logon menu and welcome messages.
•(Optionally), the date, time, ip address, and preselected LU name are applied.
•Logon/logoff commands can be interpreted for a specific port.
•VTAM application sessions are established and maintained.
•Upon termination of a VTAM application, the original msg10 logon menu/welcome messages display.
USS Table Performance and Operations Notes
Cisco IOS for S/390 attempts to minimize overhead by pre-processing the USS tables at initialization time. At Telnet connection time, Cisco IOS for S/390 loads the USS table(s), and internally builds APPL statements.
For USS table processing only, if an entered command has not been defined, there will not be an attempt to invoke it as an APPLID.
Translation Table Processing
Because the USS tables are processed at initialization time, translation tables defined within USS tables will not be used to translate terminal input data. Special processing can be handled by the defaults coded on the specific Telnet configuration statement(s).
Invoking USSTAB Server Telnet
You invoke USSTAB Server Telnet by entering TN3270 from a remote client to the port defined with the USSTAB option in Cisco IOS for S/390.
TN3270 138.42.224.13 1124Trying...Connected to 138.42.224.13Next the logon/welcome displays, as a typical VTAM application logon screen.