The state of an exit routine is active or inactive. An active exit
routine is associated with an exit and will be called if the exit
is called. An inactive exit routine is associated with an exit, but
will not be called if the exit is called. The CSVDYNEX MODIFY request
changes the state of an exit routine and, additionally, asks the system
to check one of two conditions before it calls an exit routine. On
the CSVDYNEX MODIFY request, you: - Identify the exit (EXITNAME parameter) and the exit routine (MODNAME
parameter)
- Specify the state you want to change to (STATE parameter)
- Specify the condition under which the exit routine is to get control
(JOBNAME or STOKEN parameters).
Environment
The requirements for the caller are:
Environmental factor |
Requirement |
---|
Minimum authorization: |
One of the following: - Supervisor state
- PSW key 0-7
- PKM allowing key 0-7
- APF-authorized
- SAF UPDATE authority to FACILITY class entity CSVDYNEX.exitname.modname.
|
Dispatchable unit mode: |
Task |
Cross memory mode: |
PASN=HASN=SASN |
AMODE: |
24- or 31-bit |
ASC mode: |
Primary or access register (AR) |
Interrupt status: |
Enabled for I/O and external interrupts |
Locks: |
No locks may be held. |
Control parameters: |
Control parameters must be in the primary address
space or, for AR-mode callers, must be in an address space or data
space that is addressable through a public entry on the caller's dispatchable
unit access list (DU-AL). |
Programming requirements
Include the CSVEXRET mapping macro to define symbolic names and
values for return and reason codes returned by CSVDYNEX. (See z/OS
MVS Data Areas in z/OS Internet Library at http://www.ibm.com/systems/z/os/zos/bkserv/.)
Restrictions
The caller must not have functional recovery routines (FRRs) established.
Syntax
The standard form of the MODIFY request on the CSVDYNEX macro is
written as follows:
Syntax |
Description |
---|
|
|
name |
name: symbol. Begin name in
column 1. |
|
|
␢ |
One or more blanks must precede CSVDYNEX. |
|
|
CSVDYNEX |
|
|
|
␢ |
One or more blanks must follow CSVDYNEX. |
|
|
REQUEST=MODIFY |
|
|
|
,EXITNAME=exitname |
exitname: RS-type address or
address in register (2) - (12). |
|
|
,MODNAME=modname |
modname: RS-type address or
address in register (2) - (12). |
|
|
,STATE=UNCHANGED |
|
,STATE=ACTIVE |
|
,STATE=INACTIVE |
|
|
|
,JOBNAME=jobname |
jobname: RS-type address or
address in register (2) - (12). |
,STOKEN=stoken |
stoken: RS-type address or
address in register (2) - (12). |
|
|
,RETCODE=retcode |
retcode: RS-type address or
register (2) - (12). |
|
|
,RSNCODE=rsncode |
rsncode: RS-type address or
register (2) - (12). |
|
|
,MF=S |
|
|
|
Parameters
The parameters are explained as follows:
- REQUEST=MODIFY
- Changes the state of an exit routine.
- ,EXITNAME=exitname
- Specifies a 16-byte field (or a register containing the address
of a 16-byte field) containing the 16-character name of an exit that
has been defined to the dynamic exits facility. If the name contains
fewer than 16 characters, left-justify the name and pad the field
with blanks.
- ,MODNAME=modname
- Specifies an 8-byte field (or a register containing the address
of an 8-byte field) that contains the 8-character name of the exit
routine whose state you want to change. The first character must
not be X'00' or blank. modname designates
a load module or alias, whose entry point is the starting address
of the exit routine.
- ,STATE=UNCHANGED
- ,STATE=ACTIVE
- ,STATE=INACTIVE
- Specifies that you want the state of the exit routine to be unchanged
or that you want to change the state to active or inactive.
- An active exit routine is associated with an exit and will be
called when the exit is called.
- An inactive exit routine is associated with an exit, but will
not be called when the exit is called.
- ,JOBNAME=jobname
- ,STOKEN=stoken
- Specifies a condition under which the exit routine is to get control.
You can require that the exit routine take control:
- During the execution of a specific job, or jobs
- While a specific address space is the primary address space.
JOBNAME specifies an area (or a register containing the address
of an area) that contains the 8-character name of the job that must
be running at the time the exit routine is to get control. To indicate
the name of more than one job, use an asterisk for the last non-blank
character. A matching jobname is one that matches all the characters
preceding the asterisk.
To indicate that the exit routine is
not to be restricted to a particular job, specify a jobname of C'* '.
To leave the jobname unchanged, specify a jobname with the first character X'00' or
blank. If STOKEN was specified when the module was added or modified,
and the jobname does not indicate “unchanged,” this jobname will be
used instead.
Note: JOBNAME=ANY, which is value for REQUEST=ADD,
is not valid for REQUEST=MODIFY.
STOKEN specifies an area
(or a register containing the address of an area) that contains the
8-character STOKEN of the address space that must be the primary address
space at the time the exit routine receives control. If JOBNAME was
specified when the module was added, this STOKEN will be used instead.
- ,RETCODE=retcode
- Specifies a fullword (or a register) where the system is to store
the CSVDYNEX return code. The return code is also in GPR 15.
- ,RSNCODE=rsncode
- Specifies a fullword (or a register) where the system is to store
the CSVDYNEX reason code. The reason code is also in GPR 0.
- ,MF=S
- Specifies the standard form of the CSVDYNEX macro.
Return and reason codes
See Return and reason codes for the return and reason
codes for the CSVDYNEX MODIFY request.
Example
For an example of how to change the state of an exit routine, see Example 2.
|