IBM Support

PH48860: INVOKE SERVICE SENDS CORRUPTED PAYLOAD AFTER A DPL PASSING A CHANNEL

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • A CICS transaction performs a LINK from one region to another
    passing a channel.  The task subsequently makes an INVOKE
    SERVICE call but this fails as the remote service rejects the
    SOAP payload as containing unexpected non-XML data.
    
    The reason for this failure is that when the DFHREQUEST
    container is created for the INVOKE SERVICE the code page of the
    imported channel (the LOCALCCSID of the original region) is
    incorrectly used despite the data in the container being in
    UTF-8.
    
    This causes a LOCALCCSID to UTF-8 conversion to be performed by
    CICS on the SOAP payload that is already in UTF-8.  This
    corruption of the payload causes the remote service to reject
    the request.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All CICS users.                              *
    ****************************************************************
    * PROBLEM DESCRIPTION: A program is linked via IPIC with a     *
    *                      channel and the transaction fails with  *
    *                      an XML parsing error and an AEIP        *
    *                      abend.                                  *
    ****************************************************************
    Two CICS regions are connected via an IPIC connection.
    A transaction in region SYSA issues an EXEC CICS LINK with a
    CHANNEL to a program in region SYSB.  This runs a CSMI
    transaction on SYSB and the program makes an INVOKE SERVICE
    call.  A DFHREQUEST container with CCSID 1208 is reserved to
    hold the constructed SOAP message.
    
    The source XML data is already UTF-8 encoded with CCSID 1208 but
    it is incorrectly treated as the LOCALCCSID from SYSA.  Instead
    of simply copying the data, it is also translated from EBCDIC to
    UTF-8 which makes the data unreadable.  This leads to an AEIP
    abend.
    

Problem conclusion

  • DFHPGCR is changed to always use the caller's CCSID value when
    the function is RESERVE_CONTAINER.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PH48860

  • Reported component name

    CICS TS Z/OS V5

  • Reported component ID

    5655Y0400

  • Reported release

    100

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2022-08-23

  • Closed date

    2023-02-22

  • Last modified date

    2023-03-01

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

    PH52190 UI90649 UI90650 UI90653 UI90654

Modules/Macros

  • DFHPGCR  DFHPGCRT DFHPISN  DFHXCCR  DFJ@H360
    

Fix information

  • Fixed component name

    CICS TS Z/OS V5

  • Fixed component ID

    5655Y0400

Applicable component levels

  • R100 PSY UI90649

       UP23/02/24 P F302

  • R200 PSY UI90653

       UP23/02/23 P F302

  • R300 PSY UI90654

       UP23/02/23 P F302

Fix is available

  • Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSGMGV","label":"CICS Transaction Server"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"5.4","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]

Document Information

Modified date:
01 March 2023