A fix is available
APAR status
Closed as program error.
Error description
abend 0C4 in __iew_openW when STGPROT=ON ADDITIONAL KEY WORDS: COB0501T/K
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: Users of IEWBNDD, IEWBNDDX - the Binder * * C/C++ API DLL functions, in a subsystem * * environment where storage-protection- * * override control is being utilized. For * * example, an application running in user-key * * under CICS with storage protection enabled. * **************************************************************** * PROBLEM DESCRIPTION: When the first Binder C/C++ API DLL * * function is called, it in turn calls * * IEWBIND for the corresponding Binder * * regular API function, which may result * * in an ABEND. Specifically when * * __iew_openW() is called, an ABENDS0C4 * * was reported. * * * * An LE CEEDUMP shows the following * * traceback to the exception in * * __iew_openW (the display has been * * formatted to fit and some columns * * omitted). Note that the Eoffset for * * __iew_openW here is very large; it * * could also possibly show up as a * * negative offset: * * * * Entry E Offset Program Status * * CEEHDSP +00004220 CEEHDSP Call * * CEECGEX +000001F0 CEECGEX Call * * __iew_openW +00EECC22 Excepti * * includeMod +000009B6 Call * * * * The actual S0C4 ( CICS AKEA ) ABEND * * will be in IEWBSTAK within IEWBIND. * * The abend occurs when the binder * * attempts to create a stack frame in * * storage with a key which does not match * * its execution key. * **************************************************************** * RECOMMENDATION: * **************************************************************** IEWBIND allocates storage in the initial job step TCB key. However subsystems which use storage-protection-override control may pass control to the binder in another key (for instance with CICS user-key programs, in key 9). This results in a protection exception when IEWBIND tries to use this storage. This happens first in IEWBSTAK when the binder allocates and attempts to use storage for a stack frame. Users who code to the IEWBIND - Binder regular API functions interface are required to invoke IEWBIND in an environment which requires, among other things, the PSW key to match the job step TCB key. However users of IEWBNDD, IEWBNDDX - Binder C/C++ API DLL functions have no way to adhere to this requirement.
Problem conclusion
The Binder C/C++ API DLL is changed as described in the following documentation update: Title: z/OS MVS Program Management: Advanced Facilities Document Number: SA22-7644 Chapter: IEWBNDD, IEWBNDDX - Binder C/C++ API DLL functions Section: __iew_openW() - Open workmod <immediately preceding the Subtopics, add> NOTE: In order to meet the PSW key requirement for the invocation environment, __iew_openW() may save the current PSW and the job step TCB keys. (Refer to Chapter 5, Section "Environment", and Chapter 3 Section "Setting the invocation environment") This will be enabled by default if the program calling the Binder C/C++ API DLL functions is running under CICS. It can be explicitly disabled by setting the environment variable IEWBNDD_JSTCBKEY to the value "NO", or explicitly enabled by setting IEWBNDD_JSTCBKEY to "YES", prior to calling __iew_openW(). If enabled, for this and all other Binder C/C++ API function calls using the API context returned by this __iew_openW() call, the PSW key will be set to the job step TCB key and then reset back to the current PSW key, around every Binder regular API function call.
Temporary fix
Comments
ADDITIONAL KEY WORDS: COB0501T/K
APAR Information
APAR number
OA40593
Reported component name
PROGRAM MANAGEM
Reported component ID
5695PMB01
Reported release
780
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2012-10-11
Closed date
2013-02-15
Last modified date
2013-06-04
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UA68051
Modules/Macros
IEWBNDD IEWBNDDX IEWBUCXD IEWBUC3D
| SA22764414 |
Fix information
Fixed component name
PROGRAM MANAGEM
Fixed component ID
5695PMB01
Applicable component levels
R780 PSY UA68051
UP13/02/27 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":null,"label":null},"Product":{"code":"SG19O","label":"APARs - MVS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"780","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19N","label":"APARs - OS\/390 environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"780","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"780","Edition":"","Line of Business":{"code":"","label":""}}]
Document Information
Modified date:
04 June 2013