A fix is available
APAR status
Closed as program error.
Error description
A discrepancy is observed in the handling of null (0x00) bytes in the MQMD format field when AMS interception is enabled. If an AMS policy is not defined, and the message is not protected whilst on the queue, the null bytes in the MQMD format field are converted to blank characters (for example, 0x20 in ASCII codepages) before being returned to the application during MQGET. If an AMS policy is defined, null byes are not converted, and remain present in the MQMD format field returned by MQGET.
Local fix
C sender application needs to be modified to set the md.Format to "MQFMT_NONE".
Problem summary
**************************************************************** * USERS AFFECTED: All users of IBM MQ for z/OS Version 9 * * Release 0 Modification 0 and Release 1 * * Modification 0. * **************************************************************** * PROBLEM DESCRIPTION: MQMD.Format is not blank padded when * * messages are put/got using an AMS * * protected queue. * * * * If the message contains any unprotected * * headers (for example, RFH2 headers), * * the Format field in the last such * * header is incorrectly set to blanks * * (MQFMT_NONE). * **************************************************************** When a message is put/got using a protected queue, the Format field describing the message data is saved on MQPUT and restored on MQGET when AMS protects/unprotects the message data. At 900, the saved format is not blank padded when located in the MQMD.Format field, and is incorrectly set to MQFMT_NONE when located in a subsequent header. At 910, the saved format is not blank padded when located in the MQMD.Format field and set to nulls, and is incorrectly set to MQFMT_NONE when located in a subsequent header.
Problem conclusion
CSQ0CGET is changed to correctly blank pad the saved Format value when it is restored to MQMD.Format, and to restore the correct saved value when restoring to a subsequent header (e.g. MQRFH2.Format), matching the behaviour when the message is put/got using an unprotected queue.
Temporary fix
Comments
APAR Information
APAR number
PI85287
Reported component name
MQ Z/OS V9
Reported component ID
5655MQ900
Reported release
000
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2017-08-01
Closed date
2019-02-13
Last modified date
2019-05-02
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UI61267 UI61268
Modules/Macros
CSQ0CGET
Fix information
Fixed component name
MQ Z/OS V9
Fixed component ID
5655MQ900
Applicable component levels
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":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSYHRD","label":"IBM MQ"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"9.0","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
02 May 2019