APAR status
Closed as program error.
Error description
A native client application using MQCONNX to establish an SSL connection to the queue manager fails with a memory fault and writes an FDC like this: Probe Id :- XC130031 [or XC130003] Component :- xehExceptionHandler Major Errorcode :- xecF_E_UNEXPECTED_SYSTEM_RC Comment1 :- Access Violation at address 0000000000000010 when writing Stack Backtrace: MSVCR110!memset+0xa0<NLN:487> mqe!rriCopyMQSCO+0x1d2<NLN:487> mqe!rriInitSess+0x1ac4<NLN:487> mqe!reqConnectChl+0x595<NLN:487> mqe!reqDoConnect+0xcb7<NLN:487> mqe!rreqMQCONNX+0x14f<NLN:487> mqe!tmzstMQCONNX+0x4d8<NLN:487> mqe!reqMQCONNX+0x55<NLN:487> mqe!MQCONNX_Client_Call+0xc1<NLN:487> mqe!zswMQCONNX_Client_Call+0x20d<NLN:487> MQM Function Stack MQQueueManager.Connect() UnmanagedNmqiMQ.MQCONNX(String,MQConnectOptions,Phconn,out in... UnmanagedNmqiMQ.MQCONNX(String,ref MQCNO,Hconn,Phconn,out int... MQCONNX MQCONNX trmzstMQCONNX reqDoConnect reqConnectChl rriInitSess rriCopyMQSCO xcsFFST
Local fix
Disabling SSL or serializing MQCONNX/MQDISC between theads of the client application avoids the memory fault.
Problem summary
**************************************************************** USERS AFFECTED: Users with multi-threaded IBM MQ MQI client applications which use the MQSCO structure to control SSL parameters when connecting to an MQ queue manager. Platforms affected: MultiPlatform **************************************************************** PROBLEM DESCRIPTION: IBM MQ MQI client applications may use the MQSCO structure to control SSL configuration settings when establishing a secure connection to an MQ queue manager. These SSL configuration settings can be altered by the client application only when there are no other SSL-secured connections. If an application tries to change the SSL settings when another SSL-secured connection is active, MQCONNX will return completion code MQCC_WARNING and reason code MQRC_SSL_ALREADY_INITIALIZED. The MQI client code contained a timing window when one thread called MQDISC on the last active SSL-secured connection,, while at the same time another thread called MQCONNX to create a new SSL-secured connection. An application with multiple threads independently creating and disconnecting SSL-secured connections to MQ could crash as a result of this timing window.
Problem conclusion
The MQ code has been corrected to remove a timing window which could cause a crash when the last SSL-secured client connection is disconnecting in one thread while a new SSL-secured client connection is being established by a different thread. Multiple client threads may safely call MQCONNX passing MQCNO, MQSCO and MQAIR structures to configure the SSL connection while other client threads are calling MQDISC on existing SSL connections. --------------------------------------------------------------- The fix is targeted for delivery in the following PTFs: Version Maintenance Level v8.0 8.0.0.16 v9.0 LTS 9.0.0.11 v9.1 LTS 9.1.0.7 v9.2 LTS 9.2.0.2 The latest available maintenance can be obtained from 'WebSphere MQ Recommended Fixes' http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006037 If the maintenance level is not yet available information on its planned availability can be found in 'WebSphere MQ Planned Maintenance Release Dates' http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006309 ---------------------------------------------------------------
Temporary fix
Comments
APAR Information
APAR number
IT29565
Reported component name
IBM MQ BASE MP
Reported component ID
5724H7251
Reported release
800
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2019-06-27
Closed date
2020-10-15
Last modified date
2020-10-15
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
IBM MQ BASE MP
Fixed component ID
5724H7251
Applicable component levels
[{"Line of Business":{"code":"LOB45","label":"Automation"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSYHRD","label":"IBM MQ"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8.0.0.0"}]
Document Information
Modified date:
16 October 2020