The inspection function is controlled by the VERIFY statement.
VERIFY allows you to check the contents of a specific location in a load
module member of a PDS, a program object member of a PDSE or a z/OS® UNIX file,
a specific physical record of a direct access data set, or a record
of a member of a data PDSE before you replace the contents. If the
contents at the specified location do not agree with the contents
as specified in the VERIFY statement, subsequent REP operations are
not performed.
Note: A PDSE containing data other than a program object will be referred
to as a PDSE data library.
The SPZAP modification function is controlled by the REP (replace)
control statement. The REP control statement allows you to replace
instructions or data at a specific location in a load module member
of a PDS, a program object in a PDSE or a z/OS UNIX file,
a physical record in a direct access data set or a record of a member
of a PDSE data library.
To avoid possible errors in replacing data, you should always precede
any REP operation with a VERIFY operation.
SPZAP is often used to inspect and modify the contents of executable
programs to correct errors. Executable programs can be in one of two
forms:
- A load module, which is created by the linkage editor and is stored
in a PDS.
- A program object, which is created by the program management binder
and is stored in a PDSE or a z/OS UNIX System Services file.
Note: - All subsequent references in this topic to a program object in
a PDSE also apply to a program object in a z/OS UNIX file.
- For program objects located in a PDSE, SPZAP only supports CSECTs
assembled with the GOFF or SECTALGN(>8) options.
In addition, SPZAP can be used to inspect and modify data other
than executable programs. Examples of such types of data are:
- A sequential (QSAM/BSAM and EXCP) data set.
- A direct organization (BDAM) data set.
- A VSAM data set in a conventional DASD volume.
- A partitioned data set extended (PDSE) program library (see preceding
note).
There are several types of data sets that are not supported by
SPZAP:
- An extended sequential data set.
- A VSAM data set in an extended address volume.
- A partitioned data set extended (PDSE) data library (see preceding
note).
- A load module that includes a CSECT assembled with quadword alignment.
See the following topics for more information: