Changes to CICS XPI

This section summarizes the changes to the exit programming interface across supported CICS® releases. Use this information to plan the impact of upgrading from one release to another.

If you are upgrading from an end-of-service release, you can find information about the changes that are relevant to those releases in Summary of changes from end-of-service releases.

Reassembling global user exit programs

The CICS global user exit programming interface is sensitive to both the release of CICS and settings in CICS. Even if there are no changes to the externals of the programming interface, changes to the internal workings of CICS can affect structures that are used by the CICS global user exit programming interface. As a consequence, you should reassemble global user exit programs for each CICS release.

Effect of multiple releases on user exits

A global user exit or task-related user exit might be assembled by using CICS libraries from one CICS release and make an XPI call on a system that runs a different CICS release. In this situation, successful transfer of control from the exit to the correct CICS module to handle that XPI call depends on the combination of CICS releases that are used to assemble the call and to make the call, and on whether the XPI call itself is release-sensitive. Release-sensitive XPI calls are available only from Version 4.1.

Table 1 shows the effect of different combinations of CICS release and the release-sensitivity of the call.

Table 1. User exits with different CICS releases
CICS release of the libraries that are used to assemble the XPI call Release-sensitive XPI call? (from V4.1 only) CICS system that the XPI call is made on Result
5.2, 5.1, 4.2, or 4.1 Yes Any supported CICS release Control transfers to the correct CICS module for the XPI call
5.2, 5.1, 4.2 No 5.2, 5.1, 4.2 Control transfers to the correct CICS module for the XPI call
5.2, 5.1, 4.2 No 4.1, 3.2, 3.1 Unpredictable result
4.1 No 5.2, 5.1, 4.2, or 4.1 Control transfers to the correct CICS module for the XPI call
4.1 No 3.2 or 3.1 Unpredictable result
3.2 or 3.1 No 5.2, 5.1, 4.2, or 4.1 Back-level XPI call detected, and user exit fails
3.2 No 3.2 Control transfers to the correct CICS module for the XPI call
3.2 No 3.1 Unpredictable result
3.1 No 3.2 or 3.1 Control transfers to the correct CICS module for the XPI call

Changes to the XPI functions

Table 2. Changes to CICS XPI by release of CICS TS
Functional area 5.4 5.5 5.6 6.1
Parameter domain   NEW: DFHPAIQX call INQUIRE_FEATUREKEY for feature toggles   CHANGED: New option FILEPATH added to DFHPAIQX call INQUIRE_FEATUREKEY
Storage control       NEW:

EXECUTABLE option on GETMAIN call

INQUIRE_TASK_STORAGE64 call

ADDRESS64, ELEMENT_ADDRESS64, and ELEMENT_LENGTH64 options on INQUIRE_ELEMENT_LENGTH call

CHANGED:

DFHPGISY LOCATION equates that can be used on INQUIRE_PROGRAM or GET_NEXT_PROGRAM calls: PGIS_CDSA, PGIS_SDSA, PGIS_ECDSA and PGIS_ESDSA are replaced by PGIS_PCDSA, PGIS_PUDSA, PGIS_EPCDSA and PGIS_EPUDSA.