The DFH0IPCC migration utility

The DFH0IPCC utility program that is provided with CICS® converts existing APPC and MRO connections to IPIC connections (IPCONNs). DFH0IPCC is a sample program for use with the DFHCSDUP system definition utility program. The utility generates a set of statements that form the input to DFHCSDUP.

The DFH0IPCC program takes input supplied in a table that you can edit, called an APPLID table. This table is used to store the APPLIDs of all the regions in the relevant setup, with the corresponding HOST name of the region and the listening PORT of the TCPIPSERVICE definition used to deal with inbound TCP/IP connections.

The DFH0IPCC program examines lists and resource groups in the CSD for CICS regions, collecting information about the CONNECTION and SESSIONS definitions it finds. For each APPC or MRO pair of CONNECTION and SESSIONS definitions, it creates an IPCONN definition. Where appropriate, the attributes of the IPCONN definition are taken from the CONNECTION and SESSIONS definitions, with the values of the remaining attributes taken from the APPLID table or allowed to take their default values. When the utility program has completed an IPCONN definition, it writes a series of DEFINE statements, which form the SYSIN for your resulting DFHCSDUP invocation JCL.

IPCONN attribute mapping

This table summarizes how the DFH0IPCC utility program maps the CONNECTION attributes to the IPCONN definition.
Table 1. IPCONN attribute mapping
IPCONN definition attribute Migrated From or Created By Comments
APPLID CONNECTION (NETNAME) Direct migration
AUTOCONNECT CONNECTION (AUTOCONNECT) Direct migration. But, if ALL, set the new value to YES.
CERTIFICATE N/A Blank
CIPHERS N/A Blank
DESCRIPTION N/A Blank. Not migrated. You can add this in the DFH0IPCC output.
GROUP CONNECTION (GROUP) SESSIONS (GROUP) Not changed
HOST APPLID table Must be specified in the APPLID table.
INSERVICE CONNECTION (INSERVICE) Direct migration
IPCONN CONNECTION (CONNECTION) Direct migration. See IPCONN names.
MAXQTIME CONNECTION (MAXQTIME) Direct migration
NETWORKID APPLID table No equivalent. Leave blank if not specified in the APPLID table or if using the default.
PORT APPLID table Must be specified in the APPLID table.
QUEUELIMIT CONNECTION (QUEUELIMIT) Direct migration
RECEIVECOUNT Sum of SESSIONS (MAXIMUM) Direct migration from the MRO SESSIONS equivalent setting, or derived from the APPC SESSIONS MAXIMUM setting.
SECURITYNAME CONNECTION (SECURITYNAME) Direct migration from CONNECTION SECURITYNAME only.
SENDCOUNT Sum of SESSIONS (MAXIMUM) Direct migration from the MRO SESSIONS equivalent setting, or derived from the APPC SESSIONS MAXIMUM setting.
SSL N/A Left blank. You can modify this in the DFH0IPCC output.
TCPIPSERVICE APPLID table Always “DFHIPIC” or as in the APPLID table. See TCPIPSERVICE names.
USERAUTH CONNECTION (ATTACHSEC) Direct migration from CONNECTION ATTACHSEC values LOCAL, IDENTIFY or VERIFY only.
XLNACTION CONNECTION (XLNACTION) Direct migration

IPCONN names

The IPCONN names are generated to avoid duplicates. The DFH0IPCC utility program uses the name of the CONNECTION definition because there is a one-to-one relationship between a CONNECTION definition and the IPCONN definition created from it. The coexistence of same-name CONNECTION and IPCONN definitions is fully supported by CICS provided that the CONNECTION NETNAME and IPCONN APPLID are the same. In this instance, CICS selects the IPCONN definition instead of the CONNECTION definition for routing of supported function.

TCPIPSERVICE names

Because an IPCONN definition cannot determine the TCPIPSERVICE name of a partner region, the utility cannot produce TCPIPSERVICE definitions; you must define them manually. The utility works in such a way that all TCPIPSERVICE names in regions for which the utility produces IPCONN definitions must be the same.

All IPCONN definitions created by the DFH0IPCC utility program have the default attribute, TCPIPSERVICE (DFHIPIC), unless you supply a different name using the .DEFAULT row in the APPLID file. If you specify another name, use that name for all TCPIPSERVICE definitions that you create.