Applying FDR Fixes (FDRSPZAP)
Fixes to the FDR products are usually provided by BMC in the form of zaps. These zaps can be applied using the IBM SUPERZAP program (PGM=AMASPZAP or IMASPZAP) but BMC also provides a program for applying zaps that has several advantages.
FDRSPZAP program
The FDRSPZAP program uses JCL almost identical to the IBM SUPERZAP program and accepts all SUPERZAP control statements. However, it has two advantages over SUPERZAP:
1.The CHECKSUM statement, which BMC provides as part of all zaps, is used as a check that zaps have been entered correctly. It compares the value provides to a checksum of all hexadecimal digits on the preceding VER and REP statements; almost all typing errors result in a checksum mismatch and an error message. However, the IBM SUPERZAP program compares the checksum AFTER it has already applied the changes in the REP statements. Therefore, it tells you that you have just applied a bad zap and leaves it to you to back it off. FDRSPZAP reads all the control statements and verifies the CHECKSUM before invoking SUPERZAP to perform the actual zap.
2.FDRSPZAP can apply zaps to the in-storage copies of the FDR system exits. If test exits are installed, fixes can be applied to either the test or production exits.
FDRSPZAP JCL
The JCL for execution of FDRSPZAP looks like this (similar to SUPERZAP):
//FDRSPZAP EXEC PGM=FDRSPZAP,REGION=0M,PARM=parm //STEPLIB DD DISP=SHR,DSN=fdr.loadlib //SYSLIB DD DISP=SHR,DSN=fdr.loadlib //SYSPRINT DD SYSOUT=* //SYSIN DD * .SUPERZAP control statements supplied by BMC Corporation. /*
The STEPLIB DD statement can be omitted if the FDR program library is in the system link list (LNKLST). However, zaps to a level of FDR still being tested should be applied with the FDRSPZAP from the test library.
If the zap being applied affects one of the dynamically installed FDR exit modules, the PARM specifies whether this update is to be applied to the module on DASD, the in-storage module, or both.
FDRSPZAP parameters (PARM=)
FDRSPZAP accepts a PARM= value (“parm” in the example JCL above). Possible values are:
null or PARM= omitted
FDRSPZAP applies the zap only to the library indicated by SYSLIB.
LPA
For zaps to an FDR dynamic exit, the zap is applied to the in-memory copy only.
BOTH
Zaps are applied to the library indicated by SYSLIB; for zaps to an FDR dynamic exit, they are also applied to the in-memory copy.
PROD
If both test and production exits are installed, PROD is required to apply zaps to the in-memory copy of production exits.
TEST
If both test and production exits are installed, TEST is required to apply zaps to the in-memory copy of test exits.
IGNIDRFULL
All BMC zaps include an IDRDATA statement, which stores a string with each module indicating which zaps are applied. If the space reserved for IDR data in a load module becomes full, IGNIDRFULL allows the zap to be applied anyway (although the IDRDATA is not saved).
Multiple values can be combined, in parenthesis. For example, to apply zaps to test exits you must specify PARM=(LPA,TEST) or PARM=(BOTH,TEST)
1. On the EXEC statement, JOBNAME= specifies the jobs that are to be processed by the test version of the exits. JOBNAME= may be abbreviated as JOB=. The value specified may be:
A single job name, for example, JOBNAME=XYZ
A job name prefix followed by an asterisk, for example, JOBNAME=XYZ*
Up to five (5) job names or prefixes enclosed in parenthesis, for example,
JOB=(ABC,XYZ*,SYS*). This multiple job name format cannot be used if the
production version of the exits is less than V5.3 level 51.
TSO user ids and started task names are also checked for a match and are eligible for processing by the test version of the exits. Any job that does not match is processed by the production version of the exits. If JOBNAME=* or JOB=* is specified, then all jobs are processed by the test version of the exits; in effect, the production version of the exits is temporarily replaced.
2. The SYSLIB and STEPLIB DD statements must specify the DSNAME of the test FDR program library.
3. The FDRSTATS JCL shown in Dynamic-Exit-Installation-Procedure displays the status of both the production and test exits.