SI57613 - OSP-OTHER New API to register activation group exit procedur
PTF ( Program Temporary Fixes ) Cover letter
OSP-OTHER New API to register activation group exit procedur
Pre/Co-Requisite PTF / Fix List
REQ LICENSED PTF/FIX LEVEL
TYPE PROGRAM RELEASE NUMBER MIN/MAX OPTION
---- -------- --------- ------- ------- ------
Application of this PTF may disable or render ineffective programs that
use system memory addresses not generated by the IBM translator,
including programs that circumvent control technology designed to limit
interactive capacity to purchased levels. This PTF may be a prerequisite
for future PTFs. By applying this PTF you authorize and agree to the
This PTF is subject to the terms of the license agreement which
accompanied, or was contained in, the Program for which you are obtaining
the PTF. You are not authorized to install or use the PTF except as part
of a Program for which you have a valid Proof of Entitlement.
SUBJECT TO ANY WARRANTIES WHICH CAN NOT BE EXCLUDED OR EXCEPT AS EXPLICITLY
AGREED TO IN THE APPLICABLE LICENSE AGREEMENT OR AN APPLICABLE SUPPORT
AGREEMENT, IBM MAKES NO WARRANTIES OR CONDITIONS EITHER EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OR CONDITIONS OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON INFRINGEMENT,
REGARDING THE PTF.
The applicable license agreement may have been provided to you in printed
form and/or may be viewed using the Work with Software Agreements (WRKSFWAGR)
APAR Error Description / Circumvention
Currently, the register activation group (AG) exit APIs
(CEE4RAGE and CEE4RAGE2) work by calling the exit procedures in
last in first out (LIFO) order when the AG ends. If exit
procedures are registered in the order 1, 2, 3, when the AG ends
they will be called in the order 3, 2, 1. A new API is needed
to force an exit procedure to be called last, no matter the
order in which it was registered.
CORRECTION FOR APAR 'SE62566' :
A new register activation group exit API will be introduced to
perform the requested function. A description of the new API
Register Activation Group Exit Procedure Last API
| No | Name | In/Out | Type | Required |
| 1 | procedure | Input | RAGE_ENTRY2 | Yes |
| 2 | fc | Output | FEEDBACK | No |
Service Program Name: QLEAWI
Default Public Authority: *USE
The Register Activation Group Exit Procedure Last (CEE4RAGEL)
API is used to register procedures that are called when an
activation group ends. Activation group exit procedures,
registered by CEE4RAGEL, are called after HLL user exit
procedures, but before any system level activation group
resource clean up takes place. Other APIs that can register
activation group exit procedures are CEE4RAGE and CEE4RAGE2.
When those APIs are called, the exit procedures are called in
the reverse order of their registration. CEE4RAGEL, however,
will register the exit procedure so that it is called last, no
matter which order the registration took place. The exit
procedure that previously would have been called last will now
be called just before the exit procedure registered with this
API (second to last).
For example, if E1, E2, E3, E4, and E5 are exit procedures
registered as follows:
When the activation group ends, they will be called in the
following order: E4, E2, E1, E3. and E5.
If an exit procedure fails, subsequent exit procedures will not
be called. There is no practical limit to the number of exit
procedures that can be registered. If the same exit procedure is
registered multiple times, it is called multiple times.
Authorities and Locks
procedure (input) - An entry variable or constant for the
procedure that is to be called at activation group termination.
fc (output) - A 12-byte feedback code.
Feedback Codes and Conditions
CEE0000 - The API completed successfully
CEE0257 - The procedure provided for &1 is not valid
CEE3103 - Cannot allocate storage in &1
CEE3111 - &1 cannot be called at this time
CEE9902 - Unexpected user error occurred in &1
1. The message CEE0257 occurs if 'procedure' is not a procedure
pointer, or if the procedure identified by 'procedure' is not in
either the current activation group or the default activation
2. Once the activation group exit procedures start to run, the
register activation group exit APIs (CEE4RAGE, CEE4RAGE2, and
CEE4RAGEL) cannot be called.
CIRCUMVENTION FOR APAR 'SE62566' :
This PTF can, under rare circumstances, cause other PTFs installed at
the same time to be marked as damaged. It is also possible for this
PTF to cause CEE9902 messages to be issued in other jobs that are
running at the time that this PTF is installed. To avoid the first
problem it is recommended that this PTF be installed in a separate job.
Sign off the system and then sign back on before applying additional
PTFs. To minimize the chances of the CEE9902 messages in other jobs
make sure that there are a minimal number of jobs running on the system
at the time that the PTF is applied. Another option would be to apply
the PTF immediately prior to a scheduled IPL of the system.
If a PTF is marked as damaged as the result of being applied in the
same job as this PTF you can use RMVPTF with the RMV(*PERM) option to
remove the damaged PTF, then use LODPTF and APYPTF in a new job to
apply the PTF that was marked as damaged. The APYPTF in the new job
should be successful. If it is not then the PTF that was marked as
damaged was damaged for some reason unrelated to this PTF.
If you see CEE9902 exception messages in other jobs after installing
this PTF then ending the affected jobs and starting them again will
avoid the CEE9902 exception messages. If the CEE9902 exception
messages persist after restarting the job then the messages are
unrelated to this PTF.
THIS PTF CAN BE APPLIED IMMEDIATE OR DELAYED.
PTF/FIX NO(S). APAR TITLE LINE
SI52757 OSP-OTHER-F/QLEAWI-T/QLEAWI-MSGMCH4422 MCH4422 when running
SI52318 OSP-OTHER-F/QLECWI-T/QLEDAGE-MSGCEE9902 During PTF install
|APAR Fixed..........................||View details for APAR SE62566|
|Superseded by:......................||View fix details for PTF SI70699|
|MRI Feature ........................||NONE|
More support for:
Software version: V7R2M0
Operating system(s): OS/400
Reference #: SI57613
Modified date: 21 January 2016