PROG

PROG={aa         }
     {(aa,bb,...)}
This parameter specifies the PROGxx members of parmlib. The two characters (A-Z, 0-9, @, #, or $), represented by aa (or bb, and so on), are appended to PROG to form the names of the PROGxx members. The PROGxx parmlib member contains four statement types: APF, EXIT, SYSLIB, and LNKLST.
  • APF statements list the names and volume serial identifiers for APF-authorized libraries, and specify the format of the APF list, which is dynamic or static.
  • EXIT statements control the use of exits and exit routines.
  • SYSLIB statements define alternate data sets for SYS1.LINKLIB, SYS1.MIGLIB, and SYS1.CSSLIB at the beginning of the LNKLST concatenation and an alternate data set for SYS1.LPALIB at the beginning of the LPALST concatenation.
  • LNKLST statements control the definition and activation of the LNKLST set that forms the LNKLST concatenation.

Use the PROG=xx rather than the APF=xx system parameter, which indicates the current IEAAPFxx parmlib member. IEAAPFxx can also be used to define the APF list, but only in a static format. If you specify both the PROG=xx and the APF=xx parameters, then the system places into the APF list the libraries listed in IEAAPFxx, followed by the libraries listed in the PROGxx member or members. IBM® suggests that you convert IEAAPFxx to PROGxx (using a procedure described in IEAAPFxx (authorized program facility list)), remove the APF=xx system parameter from IEASYSxx, and remove APF=xx from IEASYS00.

Use PROG=xx rather than the EXIT=xx system parameter, which indicates the current EXITxx parmlib member. EXITxx can also be used to specify exits, but you can specify only one exit routine at a time for each exit. IBM suggests that you convert EXITxx to PROGxx (using the IEFEXPR REXX exec provided by IBM), remove the EXIT=xx system parameter from IEASYSxx, and remove EXIT= from IEASYS00.

Use PROG=xx rather than LNK=xx to activate the LNKLST concatenation at IPL. In the PROGxx member, you can also define alternate data sets for the system defaults to appear at the beginning of the LNKLST and LPALST concatenations. If you specify both PROG=xx for a member with a LNKLST ACTIVATE statement and LNK=xx the system uses the definitions in PROGxx and issues message CSV478I:
     LNK IPL PARAMETER HAS BEEN IGNORED.
     LNKLST SET lnklstname IS BEING USED

Value Range: Any two characters (A-Z, 0-9, @, #, or $).

Default Value: If PROG=xx and APF=xx are not specified, the system automatically places SYS1.LINKLIB and SYS1.SVCLIB in the APF list. If the default for the LNKAUTH system parameter (LNKAUTH=LNKLST) is accepted or specified, libraries in the LNKLST concatenation are also authorized (when they are accessed as part of the LNKLST concatenation). If a library is in the LNKLST concatenation but is not APF-authorized, the system will consider the library to be unauthorized for the duration of the job or step if the library is referred to through a JOBLIB or STEPLIB DD statement.
Note: In addition, any module in the link pack area (pageable LPA, modified LPA, fixed LPA, or dynamic LPA) will be treated by the system as though it came from an APF-authorized library. Ensure that you have properly protected SYS1.LPALIB and any other library that contributes modules to the link pack area to avoid system security and integrity exposures, just as you would protect any APF-authorized library.

If PROG=xx is not specified, the system uses LNK=xx for the LNKLST concatenation.

Associated Parmlib Member: PROGxx