IBM SC34-6814-04 Server User Manual


 
Table 44. MVS router exit return codes
Code Meaning
0 The exit has completed successfully. Control proceeds to the RACF front-end
routine for further security processing and an invocation of RACF.
C8 The exit has completed successfully. The MVS router translates this return
code to a router return code of ‘0’ and returns control to the issuer of the
RACROUTE macro (CICS), bypassing RACF processing. (See the next
section.)
CC The exit has completed successfully. The MVS router translates this return
code to a router return code of ‘4’ and returns control to CICS, bypassing
RACF processing. (See the next section.)
D0 The exit has completed successfully. The MVS router translates this return
code to a router return code of ‘8’ and returns control to CICS, bypassing
RACF processing. (See the next section.)
Other If the exit routine sets any return code other than those described above, the
MVS router returns control directly to CICS and passes the untranslated code
as the router return code. Further RACF processing is bypassed.
Passing control to a user-supplied ESM
Normally, a caller (such as CICS) invokes the MVS router and passes it request
type, requester, and subsystem parameters via the RACROUTE exit parameter list.
Using these parameters, the MVS router calls the router exit which, on completing
its processing, passes a return code to the router. If the return code is ‘0’, as
defined above, the router invokes RACF. RACF reports the result of that invocation
to the router by entering return and reason codes in register 15 and register 0
respectively. The router converts the RACF return and reason codes to router return
and reason codes and passes them to the caller. The router provides additional
information to the caller by placing the unconverted RACF return and reason codes
in the first and second words of the router input parameter list.
If your installation does not use RACF, you can make the MVS router exit pass
control to an alternative ESM. However, if you do so you must still provide CICS
with the RACF return and reason codes that it expects to receive. You set the
router exit return code, as defined in Table 44, so that RACF is not invoked; and
you simulate the results of a RACF invocation by coding the exit so that it places
the RACF return and reason codes in the first and second fullwords of the router
input parameter list. RACF return and reason codes are documented in the MVS
Authorized Assembler Programming Reference manual.
Note: Remember that it is possible for a subsystem other than CICS to call the
MVS router by issuing a RACROUTE macro. (Application programs too, may
issue RACROUTE macros directly.) Your router exit program can establish
whether the caller is CICS by checking the “eyecatcher” fields (UXPARROW,
UXPDFHXS, and UXPBLKID) in the installation data parameter list—see
“The installation data parameter list” on page 793.
Using ESM exit programs to access CICS-related information
When CICS invokes the ESM, it passes information about the current CICS
environment, for use by an ESM exit program, in an installation data parameter
list. How your exit programs access the installation data parameter list depends on
whether or not your ESM is RACF.
Chapter 31. Invoking an external security manager 791