- UCB= rs-type or (2-12) standard form UCB= rx-type
or (2-12) execute form
- Specifies the address of the UCB for the VTOC to be accessed.
The UCB address can be for a captured UCB, or for an actual UCB above
or below the 16MB line. Use the address of a UCB, not a UCB copy.
An unauthorized caller must not use this parameter. If your program
is in 31-bit mode, this address must be in 31-bit address; the high
order byte is part of the address. You should not code the UCB parameter
with MF=L.
Recommendations:: - Code the address of the UCB parameter only as register (2-12).
Coding an RX-type address gives you unpredictable results.
- Do not use the UCB address passed back in the CVPL from a previous
CVAFSEQ request, particularly in AMODE=24, as it may be invalid (because
it is a captured and then uncaptured address). The recommendation
is to use IOAREA=KEEP.
- DEB=addr
- Supplies the address of a DEB opened to the VTOC you want to access.
CVAF does not allow output requests to the VTOC or VTOC index if you
specify the DEB subparameter. If you are not authorized, you cannot
perform any asynchronous activity (such as EXCP, CLOSE, EOV), against
the data set represented by the DEB because CVAF removes the DEB from
the DEB table for the duration of the CVAF call. If you are not authorized
(neither APF authorized nor in a system key), specify a DEB address,
not a UCB, to CVAFSEQ. See Identifying the Volume for
further details.
If you supply a previously obtained I/O area through the IOAREA
keyword, neither UCB nor DEB need be supplied. Otherwise, supply either
a UCB or DEB. If you supply a UCB address, it is overlaid in the CVPL
by the UCB address in the I/O area. If you supply both the UCB and
the DEB addresses in the CVPL, the DEB address is used and the UCB
address in the CVPL is overlaid by the UCB address in the DEB.