The CEEPFWSA provides the ability to locate the writable static
area (WSA) associated with a load module or a program object containing
a specified entry point within the current enclave.
Syntax
void CEEPFWSA (
entry_point,
wsa_address,
[
fc])
POINTER *entry_point;
POINTER *wsa_address;
FEED_BACK *fc;
- CEEPFWSA
- Call this CWI interface as follows:
L R15,CEECAACELV-CEECAA(,R12)
L R15,2832(,R15)
BALR R14,R15
- entry_point (input)
- The entry point of a function whose WSA address is to be located.
The entry point can be the address of the function or the CEESTART
of the load module if the load module contains a main or a fetchable
subroutine.
- wsa_address (output)
- The address of the caller provided area in which the WSA address
will be returned if the call is successful.
- fc (output/optional)
- An optional 12-byte feedback code that indicates the results of
this service. The following symbolic conditions may result from this
service:
Condition |
|
CEE000 |
Severity |
0 |
Msg_No |
N/A |
Message |
The service completed successfully. |
CEE3EL |
Severity |
3 |
Msg_No |
3541 |
Message |
A writable static area (WSA) associated
with the entry point was not found. |
Usage Notes: - The CEEPFWSA service will verify that the entry point is a valid C/370™ or Language Environment style
entry point. It will then examine all loaded modules to find one that
contains that entry point. Modules can be the main load module or
any load modules loaded by fetch(), COBOL dynamic call, PIPI, CEEFETCH,
or DLL load. When the load module is found and the load module has
a WSA, the wsa_address associated with the module will be returned.
- If the load module is not recognized as a Language Environment-conforming
load module, then the feedback code will be CEE3EL and the wsa_address
is undefined.
- If the load module is recognized as a Language Environment-conforming
load module, and the load module does not have a WSA, then the feedback
code will be CEE000 and the wsa_address will be zero.
- If the load module containing the entry point has been fetched
more than once, the service will return the WSA of the last fetch.
- If the load module containing the entry point has been fetched
at least once and has been loaded as a DLL, this service will return
the WSA associated with the DLL invocation.