REQUEST=LIST option of IEFPRMLB

 

Syntax

The IEFPRMLB macro is written as follows:

Syntax Description
   
   name name: Symbol. Begin name in column 1.
   
One or more blanks must precede IEFPRMLB.
   
IEFPRMLB  
   
One or more blanks must follow IEFPRMLB.
   
REQUEST=LIST  
   
  ,BUFFER=buffer buffer: RS-type address or register (2) - (12).
   
,CALLERNAME=callername callername: RS-type address or register (2) - (12).
   
  ,RETCODE=retcode retcode: RS-type address or register (2) - (12).
   
  ,RSNCODE=rsncode rsncode: RS-type address or register (2) - (12).
   
  ,PLISTVER=IMPLIED_VERSION  
  Default: PLISTVER=IMPLIED_VERSION
  ,PLISTVER=MAX  
  ,PLISTVER=plistver  
   
  ,MF=S Default: MF=S
  ,MF=(L,list addr) list addr: RS-type address or register (1) - (12),
  ,MF=(L,list addr,attr)  
  ,MF=(L,list addr,0D)  
  ,MF=(E,list addr)  
  ,MF=(E,list addr,COMPLETE)  
   

Parameters

The parameters are explained as follows:

REQUEST=LIST
A required parameter. REQUEST=LIST requests information about the logical parmlib data set concatenation. For each data set included in the logical parmlib, for which there is room in the provided buffer, the following information is returned:
  • Data set name (either specified on a PARMLIB statement in LOADxx or SYS1.PARMLIB (if no PARMLIB statements are provided in LOADxx)).
  • Volume serial number where the data set resides (if a volume serial number is provided on the PARMLIB statement).

The number of data sets which make up the logical parmlib data set concatenation is also returned. If this number is larger than the number of 60-byte entries for which room was provided, then the system did not return all of the available information. In that case, you should allocate a larger buffer based on the returned number and call the service again, in order to retrieve all of the information.

NOTE: The LIST function only returns information on those data sets which are currently being used by the system. If a data set was found unusable during LOADxx processing, that data set is not being used as part of the logical parmlib concatenation and its information will not be returned by the LIST function. Exclusion of unusable data sets is only possible when no SETLOAD command was issued after IPL since an unusable data set encountered during SETLOAD processing causes SETLOAD to fail.

,BUFFER=buffer
A required input parameter, that is the area where the information about the logical parmlib data set concatenation is to be placed. The buffer is mapped by IEFZPMAP. The caller must fill in the following fields in the list buffer (DSECT PRM_List_Buffer):
  • PRM_List_Version
    • Set this using either equate symbol PRM_List_VER1 or PRM_List_Current_Version.
  • PRM_List_Buff_Size
    • Set this to the size of the provided area. It must be at least the size of PRM_List_Header. It should contain room for at least 11 60-byte entries as well.
  • All other fields set to zero

To code: Specify the RS-type address, or address in register (2)-(12), of a character field.

,CALLERNAME=callername
A required input parameter, that is the EBCDIC caller's name which is to be used in messages, symptom records and other diagnostic areas as necessary during IEFPRMLB processing. Initial characters A-I and SYS are reserved for IBM® use.

The suggested callername definition is 'ProgramName || ServiceLevel'

Example:
IEF761I jjobname [procstep] stepname ddname callername
        DD IS ALREADY ALLOCATED AND WILL BE USED BY
        THIS TASK

To code: Specify the RS-type address, or address in register (2)-(12), of a 16-character field.

,RETCODE=retcode
An optional output parameter into which the return code is to be copied from GPR 15.

To code: Specify the RS-type address of a fullword field, or register (2)-(12).

,RSNCODE=rsncode
An optional output parameter into which the reason code is to be copied from GPR 0.

To code: Specify the RS-type address of a fullword field, or register (2)-(12).

,PLISTVER=IMPLIED_VERSION
,PLISTVER=MAX
,PLISTVER=plistver
An optional input parameter that specifies the version of the macro. PLISTVER determines which parameter list the system generates. PLISTVER is an optional input parameter on all forms of the macro, including the list form. When using PLISTVER, specify it on all macro forms used for a request and with the same value on all of the macro forms. The values are:
  • IMPLIED_VERSION, which is the lowest version that allows all parameters specified on the request to be processed. If you omit the PLISTVER parameter, IMPLIED_VERSION is the default.
  • MAX, if you want the parameter list to be the largest size currently possible. This size might grow from release to release and affect the amount of storage that your program needs.

    If you can tolerate the size change, IBM recommends that you always specify PLISTVER=MAX on the list form of the macro. Specifying MAX ensures that the list-form parameter list is always long enough to hold all the parameters you might specify on the execute form; in this way, MAX ensures that the parameter list does not overwrite nearby storage.

  • 0, if you use the currently available parameters.
To code: Specify one of the following:
  • IMPLIED_VERSION
  • MAX
  • A decimal value of 0
,MF=S
,MF=(L,list addr)
,MF=(L,list addr,attr)
,MF=(L,list addr,0D)
,MF=(E,list addr)
,MF=(E,list addr,COMPLETE)
An optional input parameter that specifies the macro form.

Use MF=S to specify the standard form of the macro, which builds an inline parameter list and generates the macro invocation to transfer control to the service. MF=S is the default.

Use MF=L to specify the list form of the macro. Use the list form together with the execute form of the macro for applications that require reentrant code. The list form defines an area of storage that the execute form uses to store the parameters. Only the PLISTVER parameter may be coded with the list form of the macro.

Use MF=E to specify the execute form of the macro. Use the execute form together with the list form of the macro for applications that require reentrant code. The execute form of the macro stores the parameters into the storage area defined by the list form, and generates the macro invocation to transfer control to the service.

,list addr
The name of a storage area to contain the parameters. For MF=S, MF=E, and MF=M, this can be an RS-type address or an address in register (1)-(12).
,attr
An optional 1- to 60-character input string, which can contain any value that is valid on an assembler DS pseudo-op. You can use this parameter to force boundary alignment of the parameter list. If you do not code attr, the system provides a value of 0D, which forces the parameter list to a doubleword boundary.
,COMPLETE
Specifies that the system is to check for required parameters and supply defaults for omitted optional parameters.

ABEND codes

None.

Return and reason codes

When the IEFPRMLB macro returns control to your program:
  • GPR 15 (and retcode, if you coded RETCODE) contains a return code.
  • When the value in GPR 15 is not zero, GPR 0 (and rsncode, if you coded RSNCODE) contains reason code.

See return codes under REQUEST=ALLOCATE option of IEFPRMLB.

Examples

None.