Move BCPii API calls into your application instead of in BCPii ENF exits

Description: As stated in various IBM publications, non-SRB ENF exits need to avoid time-consuming processing. Coding an HWIEVENT ENF exit to execute BCPii APIs may result in multiple problems, such as delays with BCPii event notification processing when BCPii services are simultaneously being invoked. In z/OS V1R12 and later, BCPii enforces this restriction, and BCPii API calls made from within a BCPii ENF exit are now rejected with return code HWI_UNSUPPORTED_ENVIRONMENT.

Steps to take: If you have coded a BCPii API call from your ENF exit, move the BCPii API call into your application and have the BCPii ENF exit post the application when the event occurs. Your application program may now issue the BCPii API call from the user's thread.

For an example of how to code a BCPii ENF exit, see the sample ENF event exit HWIXMCX1 in SYS1.SAMPLIB.

Note: The sample ENF event exit HWIXMCX1 was corrected by APAR OA43767 for z/OS V2R1 and V1R13.

Reference information: For additional information, see z/OS MVS Programming: Callable Services for High-Level Languages.