gtpi1m55 | System Installation Support Reference |
The tape library validation user exit, CORU, can be activated by any
function to validate a tape volume or change the category of a tape
volume.
There are 2 branch vectors for CORU (CT7UOUT and CT7UCHNG). The
branch vectors are defined in the TAPEQ macro. The branch vectors must
be loaded into R1 before entering CORU. If the value passed in R1 is
not valid, an OPR-771 system dump is issued and the ECB is exited.
CORU and its branch vectors do the following user-defined functions:
- Perform volume serial number validation
- Branch vector CT7UOUT checks a tape volume to make sure it can be used as
an output tape. CORU is shipped with code that issues a message if the
internal volume serial number and the external volume serial number do not
match. If the volsers do not match for a ZTINT request, the operation
is ended. If the internal volume serial number is not present, it
becomes the same as the external volume serial number. You can add your
own code to accept or reject certain categories.
- Change tape category
- Branch vector CT7UCHNG returns a new library category for a tape
volume. CORU is shipped with code that changes the category of a tape
to a TPF predefined category default from the TSTB2 field, CPMTDCAT.
You can change the predefined defaults or add your own.
Input
- R1 - Branch vector.
- EBTSSW - A value, as defined in TAPEQ, that indicates the calling
function.
- EBTCAT - The volume's category value.
- EBTVSN - The volume's internal volume serial number.
- EBTVSNE - The volume's external volume serial number.
Programming Considerations
- CT7UOUT is coded to return a condition of 0, 4, or C. If you want
to return a condition of 8, you must write the code.
- CT7UCHNG is coded to return a hexadecimal category value from
CPMTDCAT.
- All registers, except R1, must be returned to the caller unchanged.
R1 must return a value from the branch vector.
Return Values
From branch vector CT7UOUT, R1 should contain one of the following:
- 0
- Volume valid for output.
- 4
- Volume mismatch; user defined as not allowed for output.
- 8
- Volume not valid for output.
- C
- Volume mismatch; user defined as allowed for output.
From branch vector CT7UCHNG, R1 should contain a hexadecimal category value
of 0000-FFFF.