ICSF provides the CSVDYNEX service exit to generate statistics for all services. The exit is called at the completion of each service.
This exit point occurs after the service has finished processing, but before the service returns control to the application program. The intent of this exit is for statistics generation.
If the callable service was invoked in AMODE(64) and the exit needs to access the caller's parameters, then it will need to switch to AMODE(64).
The exit can change the characteristics during their processing. However, the exits must return to their caller with the same characteristics as on entry. You must write the exits in the assembler programming language because you are in AR mode and cross memory mode and the addresses of some of the parameters you may access are ALET-qualified. In particular, parameters passed into a service are in the user's address space which you can access with an ALET of 1.
You install the ICSF service exit by placing the module in LPA or by loading it into ICSF private from one of the ICSF initialization exits. If the exit module is available via the LINKLIST, CSVDYNEX will load it into common storage.
CSVDYNEX
Request=Add
State=Active
ExitName('CSF_SERVICE_EXIT ')
ModName('exitname')
AddAbendNum(3)
AbendConsec(Yes) Pos(First)
Message(Error)
RetCode(CsvRetCode)
RsnCode(CsvRsnCode)
Offset (Dec) | Number of bytes | Description |
---|---|---|
0 | 4 | Parmlist with a single entry pointing to the IXIB. |
4 | 4 | EBCDIC ID. |
8 | 2 | Version number of this IXIB. |
10 | 1 | Flags
|
11 | 1 | Key is in the first 4 bits. |
12 | 4 | Address of 2048 byte work area. |
16 | 2 | IBM assigned service number. |
18 | 2 | Installation service number. |
20 | 4 | Reserved. |
24 | 8 | Service name. |
32 | 8 | Original caller's R1. |
40 | 4 | Return code from service. |
44 | 4 | Reason code from service. |
48 | 16 | STCKE value before service called. |
64 | 16 | STCKE value after service called. |
80 | 32 | Reserved. |
Each service has a unique parameter list. Parameters 1 through 4 are always the return code, reason code, exit data length, and exit data. For a description of each service's parameter list, see z/OS Cryptographic Services ICSF Application Programmer's Guide.
ICSF issues message CSFM657I for any non-zero return codes from the invocation of CSVDYNEX CALL and disables the exit.