and are protected by intellectual property laws. Except as expressly permitted in your license agreement or allowed by law, you
may not use, copy, reproduce, translate, broadcast, modify, license, transmit, distribute, exhibit, perform, publish, or display any
part, in any form, or by any means. Reverse engineering, disassembly, or decompilation of this software, unless required by law
for interoperability, is prohibited.
The information contained herein is subject to change without notice and is not warranted to be error-free. If you find any errors,
please report them to us in writing.
If this software or related documentation is delivered to the U.S. Government or anyone licensing it on behalf of the U.S.
Government, the following notice is applicable:
U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S.
Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal
Acquisition Regulation and agency-specific supplemental regulations. As such, the use, duplication, disclosure, modification,
and adaptation shall be subject to the restrictions and license terms set forth in the applicable Government contract, and, to the
extent applicable by the terms of the Government contract, the additional rights set forth in FAR 52.227-19, Commercial
Computer Software License (December 2007). Oracle USA, Inc., 500 Oracle Parkway, Redwood City, CA 94065.
This software is developed for general use in a variety of information management applications. It is not developed or intended
for use in any inherently dangerous applications, including applications which may create a risk of personal injury. If you use
this software in dangerous applications, then you shall be responsible to take all appropriate fail-safe, backup, redundancy, and
other measures to ensure the safe use of this software. Oracle Corporation and its affiliates disclaim any liability for any damages
caused by use of this software in dangerous applications.
Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective
owners.
This software and documentation may provide access to or information on content, products and services from third parties.
Oracle Corporation and its affiliates are not responsible for and expressly disclaim all warranties of any kind with respect to
third-party content, products, and services. Oracle Corporation and its affiliates will not be responsible for any loss, costs, or
damages incurred due to your access to or use of third-party content, products, or services.
Contents
Introducing Tuxedo Mainframe Adapter for TCP (CICS)
viiiOracleTuxedo Mainframe Adapter for TCP CICS User Guide
CHAPTER
1
Introducing Tuxedo Mainframe Adapter
for TCP (CICS)
Oracle Tuxedo Mainframe Adapter for TCP (CICS) (hereafter referenced as TMA TCP for
CICS) is a gateway connectivity feature that makes it possible for non-transactional tasks within
Oracle Tuxedo regions to access services provided by CICS application programs and vice-versa.
An Oracle Tuxedo region, or administrative domain, is a single computer or network of
computers that shares a single Oracle Tuxedo configuration.
The TMA TCP for CICS software is designed to provide transparent CICS program access from
within an Oracle Tuxedo domain and Oracle Tuxedo access from within a CICS region.
The following information introduces the TMA TCP for CICS product:
z What You Need to Know
z Oracle TMA TCP for CICS Architecture
z Oracle TMA TCP Functionality
z Oracle TMA TCP for CICS Components
z Processing Scenarios
z Getting Started with TMA TCP for CICS
What You Need to Know
This document is primarily for CICS system administrators who configure and administer TMA
TCP. In addition, programmers can find useful pointers for developing client programs and
service routines that send data through to the remote TMA TCP gateway.
Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide1-1
Programmers who work with TMA TCP should be familiar with CICS applications development.
System administrators who work with TMA TCP should be familiar with the following concepts,
tools, and procedures:
z TCP/IP networking
z IBM CICS Sockets Interface
z Defining new resources to CICS
z Standard CICS monitoring tools
Oracle TMA TCP for CICS Architecture
Oracle TMA TCP for CICS is composed of four CICS programs running within a CICS region:
z Handler
z Application Handler
z Pre-requester
z Requester
It uses the Sockets Interface and Sockets for CICS Listener that is shipped with the IBM TCP/IP
for CICS TS Sockets Interface. There are two different processing scenarios to consider:
z Requests that originate in a remote Oracle Tuxedo domain and request services offered by
CICS
z Requests that originate in a CICS region and request services offered by a remote Oracle
Tuxedo domain
Oracle TMA TCP Functionality
The following functionality is available in the TMA TCP product.
Domains-based Gateway Connectivity
The TMA TCP product has a domains-based architecture supporting bidirectional
communications, request/response support, and concurrent support for the CICS interface.
1-2Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide
Oracle TMA TCP for CICS Components
Security
The TMA TCP product grants access to Tuxedo services based on a user name supplied by CICS.
The TMA TCP for CICS product can start CICS transactions or link to programs. Oracle Tuxedo
provides the user ID to the TMA TCP product to check for appropriate security prior to initiating
the transactions.
Domain Name Server Support
The TMA TCP product supports domain name server (DNS) resolution of IP addresses. This
support allows you to change the IP address at the Domain Name Server to implement address
changes without reconfiguring the TMA TCP gateway.
Dynamic Configuration
The TMA TCP product supports dynamic configuration updates for some of the TMA TCP
configuration parameters. You can modify the configuration without shutting do wn and
restarting the TMA TCP product. For more information about dynamic configuration, refer to the
“Dynamically Configuring TMA TCP for CICS” section.
Load Balancing of a Requester
The TMA TCP for CICS supports Requester load balancing. TMA TCP for CICS provides
configuration for multiple services with the same name and the ability to associate them with
different unique LMIDs. This configuration enables load balancing of the Requesters.
Automatic Enabling of LMID
The TMA TCP for CICS supports automatic enabling of a given Requester which is already
disabled. The
option is set to E (Enable), the Pre-Requester automatically enables the LMID and starts the
Requester and processes the request.
AUTO ENABLE LMID option is provided in the Requester configuration. When the
Oracle TMA TCP for CICS Components
There are four programs used in processing remotely and locally initiated requests.
z Handler
z Application Handler
Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide1-3
z Pre-requester
z Requester
Two administrative tools are also available:
z An online CICS administrative tool for configuring and maintaining the TMA TCP for
CICS gateway
z An administrative tool (BDWN) for terminating the four programs listed above
The TMA TCP for CICS Handler
A TMA TCP Handler is a CICS program that communicates with the TMA TCP gateway over
TCP/IP. Specifically, the Handler communicates Oracle Tuxedo requests to a CICS region. A
Handler is started automatically within a CICS region when Oracle Tuxedo issues the first service
request destined for that CICS region.
The Handler is responsible for accepting a connection request, taking control of the socket
connection, and continuing communication with the Requester in the Oracle Tuxedo domain for
the life of the socket connection. The Handler interfaces as necessary with the Application
Handler to process service requests originating from the TMA TCP gatew ay Requester. If
multiplexing or security is enabled, the Handler starts the Application Handler and waits for the
next service request. The Handler periodically checks for completed requests. When a request has
been completed, the Handler retrieves the response data from the Application Handler and
transmits that data back to the Requester. The Handler also periodically checks to ensure that no
active service requests have timed out.
If the multiplex count is 1 and security is disabled, or if the service request originated from a
version of TMA TCP gateway prior to Version 3.0, the Handler executes the target user
application, waits for the application to return data, transmits that data back to the TMA TCP
gateway, then waits for the TMA TCP gateway to send another service request.
The TMA TCP for CICS Application Handler
The Application Handler is started by and receives request information from the Handler. The
Application Handler executes the target user application, waits for the application to return data,
and returns the data to the Handler.
1-4Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide
Oracle TMA TCP for CICS Components
The TMA TCP for CICS Pre-requester
The Pre-Requestor program is used as an interface between your CICS client program and the
TMA TCP for CICS Requester. The CICS Requester, which is described in the next section, is
the program that talks with the remote Oracle Tuxedo domain. From your CICS client program
you call the Pre-requester by issuing an
EXEC CICS LINK.
The TMA TCP for CICS Requester
The Requester program is responsible for making and maintaining the sockets connection with
the remote Oracle Tuxedo region. After receiving request information from the Pre-requester, the
Requester sends that information to Oracle Tuxedo. The Requester then receives any response
data returned by Oracle Tuxedo and sends it back to the Pre-requester, which in turn gives the
information back to the client program that had called it.
IBM TCP/IP Sockets Interface
The sockets interface must be enabled before TMA TCP for CICS can communicate over
TCP/IP. This procedure is true for any CICS program which uses the sockets API. The IBM
TCP/IP Sockets Interface is not supplied by Oracle Systems, Inc. You can purchase it directly
from IBM. The supplied transaction that accompanies the IBM TCP/IP Sockets for CICS product
is used to enable the sockets interface under CICS. Complete documentation is provided with the
IBM product.
Using Other Supported TCP/IP Sockets Products
This document refers to the IBM TCP/IP sockets interface product. If you are using another
supported TCP/IP product consult that product’s documentation for equivalent components.
IBM TCP/IP Sockets for CICS Supplied Listener
The IBM TCP/IP Sockets for CICS Supplied Listener is responsible for capturing the initial
connection request and passing that request along to the TMA TCP for CICS Handler. It is a piece
of the IBM TCP/IP Sockets for CICS product which you must purchase directly from IBM. The
listener should be installed and configured as outlined in the manual shipped with the product.
IBM User Maintained Tables (UMT)
The Connection file, BEAVCON, defaults to a user maintained table (UMT). If you choose to
change this file to a
VSAM file you must add the transaction BDWN to PLTSI for CICS. This
Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide1-5
transaction’s primary function is to shut down all the active Requesters, but one of its secondary
functions is to remove all the entries from the Connection file. The Connection file must be empty
before initializing activity.
Processing Scenarios
This section describes the TMA TCP for CICS processing scenarios.
Requests from within an Oracle Tuxedo Domain
Because of the way Oracle Tuxedo maps services to servers, service requests from remote Oracle
Tuxedo regions to TMA TCP are transparent to the user, the Oracle Tuxedo developer, and the
CICS programmer.
As Figure 1-1 shows, TMA TCP for CICS extends this transparent access by routing Oracle
Tuxedo’s requests for CICS program services through TCP/IP network software.
1-6Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide
Figure 1-1 Oracle Tuxedo to TMA TCP for CICS Routing
Tuxedo
TMA TCP Gateway
TCP/IP
Network
TCP/IP for MVS
CICS TCP/IP Listener
Processing Scenarios
TMA TCP for CICS
TCP/CICS
Handler
TCP/CICS
Application
Handler
User
App1
User
App2
TCP/CICS
Application
Handler
User
App3
As Figure 1-1 shows, TMA TCP for CICS fits between the CICS user application and TCP/IP.
When Oracle Tuxedo client programs send requests to remote systems (in this case, CICS) TMA
TCP gateway transforms those requests into messages formatted appropriately for transmission
Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide1-7
to the remote system. Also, when remote systems respond, TMA TCP gateway transforms these
responses into replies that local client programs can process.
The TMA TCP for CICS software is implemented as an ordinary CICS program which
communicates with the Sockets Interface. It accepts connection requests from the TMA TCP
gateway and returns standard replies.
Simultaneous socket connections can exist between one TMA TCP for CICS gateway (a set of
TMA Handlers within a single CICS region) and all remote TMA TCP gateway Requesters. Each
socket connection is established automatically when a new TMA TCP gateway Requester in the
Oracle Tuxedo domain establishes communication with the TMA TCP for CICS gateway.
Requests from within CICS
The mechanism used to send requests initiated from a CICS program to a remote Oracle Tuxedo
domain is invisible to the user and significantly abstracted from the CICS programmer. Your
company’s CICS program issues an
the data passed with the
service and the data to be used as input to that service. When the
returns, the reply to the request is placed in that same data area. If there was a problem satisfying
the service request, meaningful return codes are sent back.
EXEC CICS LINK command, the programmer supplies the name of the
EXEC CICS LINK command to the Oracle TMA gateway. In
EXEC CICS LINK command
1-8Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide
Figure 1-2 shows the configuration of the Oracle TMA client gateway. A client program (your
CICS program) issues an
EXEC CICS LINK command to the Pre-requester. The Pre-requester
verifies that the service name is valid and identifies the Requester to which it should it should
pass the request. The Pre-requester starts a different Requester for each configured remote
endpoint. The Requester then sends the request to the remote Oracle Tuxedo domain and waits
for a response. Once the response is returned, the Requester notifies the Pre-requester and hands
the response to the Pre-requester, which then returns the response to the client program.
Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide1-9
Getting Started with TMA TCP for CICS
The following list describes all the tasks you must perform before you can begin using TMA TCP
for CICS.
z Ensure that MVS TCP/IP is installed and configured.
z Ensure that the Sockets for CICS interface and supplied listener are installed and
configured. The listener product comes with the Sockets for CICS interface.
z From the MVS TCP/IP administrator, find out at which port and address your supplied
listener should listen. Give this information to the Oracle Tuxedo administrator so that the
remote TMA TCP gateway component knows where to find the CICS TCP/IP listener.
z Find out on which ports TMA TCP gateway is listening. This information is necessary
when you begin setting up services.
z Follow the installation instructions for TMA TCP given in the Oracle TMA TCP
Installation Guide.
z Using the administration tool (described in “Configuring and Administering Oracle TMA
TCP for CICS”) define the services and remote endpoints for use by TMA TCP. The best
way to approach this is to talk to the Oracle Tuxedo administrator and choose one service
only. Attempting to set up all the services at once would be a complex task, but after you
learn how to set up one service, you should have no difficulty setting up the others.
z Add an EXEC LINK statement to one of your CICS programs and set up the data area as
described in “Understanding How Oracle TMA TCP for CICS Works”.
z Consult your Oracle Tuxedo administrator about service names (what to call a service and
what Oracle Tuxedo names it) and the layout of data each service expects to ensure there
are no consistency problems.
1-10Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide
CHAPTER
2
Understanding How Oracle TMA TCP for
CICS Works
To understand how the Oracle Tuxedo Mainframe Adapter for TCP (CICS) (hereafter referenced
as TMA TCP for CICS) product works, you should know how the product performs the following
functions:
z Starting the Listener Program
z Running Oracle TMA TCP for CICS
– Initializing the Handler
– Processing Remote Service Requests
– Shutting Down the Handler
– Starting the Requester Program
– Processing TMA TCP for CICS Originated Service Requests
– Shutting Down the Requester
z Translating Data with TMA TCP gateway
Each of these operations is described in the following sections. Additionally, this document
describes some programming considerations that may be useful when you develop or change
programs that interoperate with TMA TCP for CICS.
Starting the Listener Program
The Listener program is supplied by IBM and is part of the Sockets for CICS software product
which must be purchased from IBM.
Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide2-1
Note: Before you can use TMA TCP for CICS, you must install and configure both IBM
TCP/IP and the Sockets for CICS product as outlined in the documentation that
accompanies those products.
The Listener’s job is to wait for connection requests at a particular network address and port of
your choosing. When the Listener receives a connection request it invokes the appropriate CICS
program automatically, based on the name supplied as part of the Listener’s connection protocol
buffer. For example, if the Listener receives a connection request from TMA TCP gateway
running on a remote Oracle Tuxedo node, it processes the connection and invokes the TMA TCP
Handler.
Running Oracle TMA TCP for CICS
The TMA TCP Handler is invoked automatically by the Listener process. Once invoked, the
Handler takes control of the socket connection and retains control until either the Handler is shut
down or until there is a network problem that affects the socket connection. The Handler
processes service requests up to the configured multiplex count. To process more service requests
than the configured multiplex count, TMA TCP gateway starts more than one Handler. For
limitations of the IBM Sockets for CICS Listener, refer to the appropriate IBM product
documentation.
Initializing the Handler
The very first service request that is sent from the TMA TCP gateway gateway running on a
remote Oracle Tuxedo node causes the following to occur.
1. CICS Sockets Listener starts the TMA TCP for CICS Handler
2. Listener issues a
3. Handler issues a
4. Listener resumes listening for new connection requests
5. Handler communicates directly with the remote TMA TCP gateway gateway using TCP/IP
givesocket() function call
takesocket() function call
Processing Remote Service Requests
1. The TMA TCP Handler receives the request from the remote TMA TCP gateway gateway (in
the Oracle Tuxedo region) over TCP/IP. If necessary, the data is translated and/or converted
into the proper data format or layout.
2-2Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide
Running Oracle TMA TCP for CICS
2. If the multiplex count is 1 and security is disabled, or if the service request came from a
version of TMA TCP gateway prior to Version 3.0, then the following tasks occur.
a. The Handler issues a CICS
TCP protocol header. With th e
LINK command to execute the program specified in the TMA
LINK command it also passes along any request data
provided by the client application that made the original Oracle Tuxedo service request.
b. The Handler waits for the CICS program to finish and receives any returned data from the
CICS program.
c. The Handler transmits the response to the remote TMA TCP gateway gateway.
d. The Handler stays connected to the remote gateway awaiting another service request.
3. If the multiplex count is greater than 1 or security is enabled, then the following tasks occur.
a. The Handler issues an
EXEC CICS START TRANS call with the transaction specified in the
Inbound Service File for the service specified in the TMA TCP protocol header. The
transaction should be the same as the Application Handler program.
Note: If security is enabled, the
EXEC CICS START TRANSID call uses the user IDspecified
in the TMA TCP protocol header.
b. For any completed service requests, the Handler retrieves the response data from the
Application Handler.
c. The Handler transmits the response to the remote TMA TCP gateway gateway.
d. The connection between the Handler and the gateway remains and the Handler waits for
another service request.
For
tpacall/TPNOREPLY requests, the remote program is invoked by a CICS START TRANSID
command and no data is returned to the original caller. In this case, a unique transaction must be
defined for the service. Use the Inbound Service Information screen to enter this unique
transaction name rather than using the transaction name that starts the Application Handler.
Shutting Down the Handler
When the network connection is lost, the Handler process automatically shuts down. The next
service request sent causes the Listener to automatically start a new Handler, if necessary.
Use the supplied shutdown transaction
Depending on the options specified, this causes all Handlers to shut down gracefully. The name
of the
BDWN transaction may have been changed at your site during installation, so verify the
name.
BDWN to terminate active TMA TCP for CICS programs.
Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide2-3
Using BDWN to Shut Down the Handler
You can use the BDWN transaction in a CICS region with the following parameters to shut down
Handlers in various ways. The command line syntax for
listing.
Listing 2-1 BDWN Command Line Syntax for Handlers
BDWN [ALL | CLEANUP | HANDLER I | HANDLER]
BDWN
Shuts down all Handlers or all Requesters or both. It also frees shared memory that was
allocated by a Handler that has abended without freeing the shared memory that it
allocated. You can specify optional parameters with the
Handlers immediately or after the processing of all requests has completed. The default is
ALL.
ALL
Shuts down all Handlers and Requesters gracefully allowing them to complete all
processing of all requests that were received before the execution of the
transaction. Specifying
ALL also frees any shared memory.
BDWN is illustrated in the following
BDWN transaction to shut down
BDWN
This is the default for
CLEANUP
BDWN.
Frees any shared memory of Handlers that have abended. CLEANUP does not shut
down any Handlers or Requesters.
HANDLER I
Shuts down all Handlers immediately and frees any shared memory of Handlers
that have abended. This parameter does not shut down any Requesters.
HANDLER
Shuts down all Handlers gracefully allowing them to complete all processing off
all requests that were received before the execution of the
parameter also frees any shared memory of Handlers that have abended. It does not
shut down any Requesters.
2-4Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide
BDWN transaction. This
Running Oracle TMA TCP for CICS
Starting the Requester Program
The Requester is started automatically when the first service request for it is made by a CICS
client program. At that point, the Requester establishes a connection with its remote endpoint and
updates its control tables with run-time information for use by subsequent requests. If the
connection with the remote endpoint is lost for any reason, the Requester attempts to re-establish
the connection automatically. After a configured number of unsuccessful connection attempts,
the Requester marks itself disabled.
If the gateway receives additional service requests, they are accommodated as long as the
maximum multiplex count for the existing connection is not exceeded. Also, additional
connections are opened, as necessary, until the configured maximum connection count is reached
or all requests are accommodated.
Processing TMA TCP for CICS Originated Service Requests
1. The CICS client program (your program) issues an EXEC CICS LINK command to the TMA
TCP for CICS Pre-requester.
2. The Pre-requester verifies that the request is valid, and then determines whether a Requester
has been started for the specific endpoint for which this request is destined. If a Requester is
not already running, the Pre-requester starts one.
3. The request is then handed over to the Requester.
4. The Requester transmits the request information to the remote Oracle Tuxedo domain.
5. If the request is a type that needs a response, the Requester receives that response back from
Oracle Tuxedo, and hands the data over to the Pre-requester.
6. The Pre-requester issues an
program). The client receives its response in the
EXEC CICS RETURN command to the client program (your
COMMAREA.
Shutting Down the Requester
There are two ways to shut down the Requester:
z Use the administrative tool (described in “Configuring and Administering Oracle TMA
TCP for CICS”) to disable the Requester. This method causes the selected Requester to
clean up its tables and shut down gracefully. It also prohibits any service requests invoking
it. When you are ready, use the administrative tool to enable the Requester.
Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide2-5
z Use the supplied shutdown transaction BDWN. This method causes ALL Requesters to shut
down gracefully. The name of the
BDWN transaction may have been changed at your site
during installation. Check with the person who installed TMA TCP for CICS at your site.
Using BDWN to Shut Down the Requester
You can use the BDWN transaction in a CICS region with the following parameters to shut down
Requesters in various ways. The command line syntax for
listing.
Listing 2-2 BDWN Command Line Syntax for Requesters
BDWN [ALL | REQUESTER I | REQUESTER]
BDWN
Shuts down all Handlers or all Requesters or both. It also frees shared memory used by
the Requesters associated with each logical machine ID (
parameters with the
BDWN transaction to shut down Handlers or Requesters immediately
or after processing of all requests has completed. The default is
ALL
Shuts down all Handlers and Requesters gracefully allowing them to complete all
processing of all requests that were received before the execution of the
transaction. Specifying
ALL also frees any shared memory.
BDWN is illustrated in the following
LMID). You can specify optional
ALL.
BDWN
This is the default for
REQUESTER I
BDWN.
Shuts down all Requesters immediately and frees memory associated with each
LMID. This parameter does not shut down any Handlers.
REQUESTER
Shuts down all Requesters gracefully allowing them to complete all processing off
all requests that were received before the execution of the
frees memory associated with each
Handlers.
2-6Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide
BDWN transaction. It also
LMID. This parameter does not shut down any
Translating Data with TMA TCP gateway
Translating Data with TMA TCP gateway
Due to the way TMA TCP gateway translates and converts data on the remote Oracle Tuxedo
system, the CICS programmer does not need to do anything to prepare data that is destined for
the remote Oracle Tuxedo system.
The key to this high degree of transparency is the TMA TCP gateway configuration. It is through
this mechanism that environmental differences, such as naming conventions and data formats, are
concealed from programmers and programs.
Although all data is converted and translated automatically by the remote TMA TCP gateway
gateway, the rules implemented are outlined in the following subsections to assist the CICS
programmer in understanding how the data is manipulated. It is important for the CIC S
programmer to remember that this information is written from the point of view of the Oracle
Tuxedo environment.
When a client program on the remote Oracle Tuxedo system sends data to (or receives data from)
a service routine on a different model of computer, TMA TCP gateway automatically translates
data as required. Translation involves changing the representation of intrinsic data types by
changing attributes such as word length and byte order.
The following subsections describe the basic rules that TMA TCP gateway follows when it
translates data and provide detailed information about how TMA TCP gateway handles string and
numeric data.
Oracle Tuxedo Terminology
The following terms are some commonly used Oracle Tuxedo terms for buffer types.
Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide2-7
Table 2-1 Oracle Tuxedo Terminology
TermDefinition
STRING
CARRAY
VIEW
FML
A buffer of character data that is
terminated by the first null character in the
buffer. Typically, character string buffers
undergo translation when sent to a system
that is different from the sending system.
A CARRAY is a buffer of raw data that
contains no terminating character and that
undergoes no conversion or translation;
the data is sent from one system to another
without modification. A
exemplary buffer type for a graphics file.
A VIEW buffer is a collection of field
definitions that can be treated as a single
entity. It is comparable to a record layout
in COBOL or a structure in C.
(Fielded Manipulation Language)
FML
buffers are variable length, dynamic,
self-describing buffers. Each field in the
buffer has its own descriptive header. In
Oracle Tuxedo,
closely to
from one to the other is direct.
FML buffers can be tied
VIEW buffers so that conversion
CARRAY is an
Data Translation Rules
The following table lists the data translation rules that TMA TCP gateway follows.
Table 2-2 Data Translation Rules
Field TypeTranslation Rules
CARRAY
STRING and CHARTranslated from ASCII to EBCDIC (if needed)
SHORT
2-8Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide
Passed untranslated as sequences of bytes
Translated to S9(4) COMP
Table 2-2 Data Translation Rules
Field TypeTranslation Rules
Translating Data with TMA TCP gateway
LONG
FLOAT
DOUBLE
Translated to S9(9) COMP
Translated to COMP-1
Translated to COMP-2
Note: Oracle Tuxedo provides a field type named dec_t that supports decimal values within
VIEWs. The TMA TCP gateway product translates these fields into machine independent
representations of packed decimals. For example,
S9(2*m-(n+1))V9(n) COMP-3. Therefore, a decimal field with a size of 8,5
corresponds to
S9(10)V9(5) COMP-3.
dec_t(m,n) becomes
The following table summarizes the translation rules between C and IBM/370 data types.
Table 2-3 Translation Rules Between C and IBM/370 Data Types
Remote Data TypeDescriptionView Field Type/Length
PIC X(n)
PIC X
PIC X(n)
PIC X
PIC S9(4) COMP
Alpha-numeric Charactersstring / n
Single Alpha-numeric Character char
Raw Bytescarray / n
Single Numeric Bytecarray / 1
16-bit Integershort
Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide2-9
Strings and Numeric Data: A Closer Look
This subsection provides suggestions that help you develop VIEW definitions for input and output
buffers and records. It also explains how string data and numeric data are treated in the TMA TCP
gateway environment.
Including NULL Characters in String Length Calculations
When you create VIEW definitions for input and output records that are used by CICS
applications, do not specify an extra position for the terminating NULL characters that are used
in string fields.
For example, when a CICS application program expects 10 characters in an input record, specify
10 for that field, not 10 plus 1.
Note: Although TMA TCP gateway does not require strings to be NULL-terminated, it respects
NULL termination. Therefore, when TMA TCP gateway detects a NULL (zero)
character within a string, it does not process any subsequent characters. To pass full 8-bit
data that contains embedded NULL values, use a
The character set translations performed by TMA TCP gateway can be fully localized, in
accordance with the X/Open XPG Portability Guides. ASCII and EBCDIC translations are
loadable from message files. The TMA TCP gateway software contains default behaviors which
should meet the requirements of most English-language applications. However, you may find it
necessary to customize tables. See the Oracle TMA TCP gateway User Guide for complete
instructions.
CARRAY type field or buffer.
Converting Numeric Data
You can convert numeric data into different data types easily, provided that you have enough
range in the intermediate and destination types to handle the maximum value you need to
represent.
For example, you can convert an FML field of double into a packed decimal field on the remote
target system by specifying an appropriate
In addition, you can convert numeric values into strings (and the reverse). For example, while
FML buffers do not directly support the
fields and map these to
2-10Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide
dec_t fields within VIEW definitions.
dec_t type VIEW element.
dec_t type, you can place decimal values in string
CHAPTER
Configuring the TMA TCP Security
The TMA TCP product supports a security feature that allows a requester from Oracle Tuxedo
services to pass a user ID through the CICS server interfaces for verification through a third-party
security package. The following topics explain the how to set up security:
z Service Request Processing with Security
3
– Security Checking from UNIX to Mainframe
– Security Checking from Mainframe to UNIX
z Setting Up Security for TMA TCP for CICS
– Securing User Connections
– Securing Inbound Services
– Securing Outbound Connections from CICS to UNIX
– Securing Outbound Connections from CICS to CICS
– Securing Outbound Connections from CICS to IMS
– Securing Outbound Services
Service Request Processing with Security
The following sections describe the process flow for security verification of a service request.
Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide3-1
Security Checking from UNIX to Mainframe
Figure 3-1 depicts the process flow for security verifications from TMA TCP for CICS on UNIX
to a mainframe.
Figure 3-1 Security Checking for UNIX to Mainframe Transactions
UNIX
2
BEA TMA TCP
Gateway
Tuxedo
Client
1
1. When the TMA TCP gateway client program performs a
identity is validated against the
2. When the client program issues a
tpacl file) the user is authorized to invoke the gateway service.
tpusr file.
tpcall() or tpacall(), Tuxedo verifies (against the
Handler
Mainframe
3
4
Application
Handler
tpinit(), the user’s Tuxedo
5
Remote
Server
3. When the gateway establishes the initial connection, connection security information
(specified as
gateway to the remote gateway. If the
RMTNAME and PASSWORD in the GWICONFIG file) is passed from the TMA TCP
RMTNAME and PASSWORD values match the values
configured on the remote gateway, the connection is established.
With each request, the TMA TCP gateway passes the user’s Tuxedo identity to the remote
TMA TCP for CICS gateway (to the Handler).
Note: To pass authority checking, the user’s Tuxedo identity must match the mainframe
user ID exactly.
4. The remote TMA TCP for CICS gateway Handler initiates an Application Handler to act on
behalf of the specified user ID.
3-2Oracle Tuxedo Mainframe Adapter for TCP CICS User Guide
Loading...
+ 82 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.