z/OS DFSMSdfp Utilities
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Parameter List for Calls to the Exits

z/OS DFSMSdfp Utilities
SC23-6864-00

IEBCOPY supplies a parameter list for each call to the invoking program's exits. The parameter list used when calling the exit is mapped by the IEBCPLST mapping macro.
Macro name:
IEBCPLST
Description:
Maps the IEBCOPY parameter lisdt for calls to the user exits
Function:
The IEBCPLST structure is used by IEBCOPY to pass information to the "control statement" exit and the "member-selection" exit.
Created by:
IEBCOPY
Notes:
  1. IEBCPLST is created by the IEBCOPY utility when the utility is invoked with a parameter list indicating that user exits are to be employed. You cannot use user exits when you invoke IEBCOPY with JCL or with the TSO CALL command
  2. The storage acquired for IEBCPLST will be readable in the user's storage protection key.
Offset - Decimal, Hex Name Type Description
00 00 CPLST_PARMLIST DSECT  
00 00 CPLST_PARMLIST_HEAD EQU CPLST_PARMLIST,CPLST_PARMLIST_HEAD_LENGTH
00 00 CPLST_PARMLIST_HDR DS 0CL16 Header set by IEBCOPY
00 00 CPLST_PARMLIST_ID DS CL8 "IEBCPLST" eyecatcher
08 08 CPLST_PARMLIST_LEN DS F Length of PARMLIST including the member name array
12 0C CPLST_PARMLIST_VERSION DS AL1 Version number = 1
13 0D   DS CL3 Reserved for alignment, must be zero
16 10 CPLST_PARMLIST_DSNUMBER DS F Input DS number for current IEBCOPY operation (Origin 1).
20 14 CPLST_PARMLIST_ENTRY_ADD DS F A(CPLST_CONTROL_AREA) address of the data record control area or the member entry array.
24 18 CPLST_PARMLIST_COUNT DS F Binary 1 - number of member entries, Binary 1 - for data record control set by IEBCOPY
28 1C CPLST_PARMLIST_RC DS F Return code - set by the exit.
32 20   DS XL4 Reserved, must be zero.
36 24 CPLST_PARMLIST_FLAGS DS 0XL4 Informational flags set by IEBCOPY and passed to the exit. Undefined flags must be zero.
36 24 CPLST_PARMLIST_CONTROL_FLAGS DS XL1 General exit control flags.
  CPLST_CONTROL_INIT EQU B'10000000' Open input statement file or starting a new member list.
  CPLST_CONTROL_DATA EQU B'01000000' Input statement / print record exit.
  CPLST_CONTROL_MEMBER EQU B'00100000' Member-Selection exit
  CPLST_CONTROL_MAXRC EQU B'00010000' IEBCOPY return-code and reason-code have been updated by exit
37 25 CPLST_PARMLIST_INPUTDS_FLAGS DS XL1 Input data set flags
  CPLST_INPUT_SEQ EQU B'10000000' Input data set is sequential
  CPLST_INPUT_PDSE EQU B'01000000' Input data set is a PDSE
  CPLST_INPUT_PDS EQU B'00100000' Input data set is a PDS
  CPLST_INPUT_SMDE EQU B'00010000' 1 = input directory is an SMDE, 0 = input directory is a PDS
38 26 CPLST_PARMLIST_OUTPUTDS_FLAGS DS XL1 Output data set flags
  CPLST_OUTPUT_SEQ EQU B'10000000' Output data set is sequential
  CPLST_OUTPUT_PDSE EQU B'01000000' Output data set is a PDSE
  CPLST_OUTPUT_PDS EQU B'00100000' Output data set is a PDS
39 27   DS XL1 Reserved, must be zero
40 28 CPLST_PARMLIST_USR DS XL8 User data - initially copied from invocation parameter CPARM_EXIT_USR
48 30 CPLST_PARMLIST_MAXRETC DS F IEBCOPY return code - set by IEBCOPY and may be updated by the exit. Valid codes are: 0, 4, 8.
52 34 CPLST_PARMLIST_MAXRSNC DS XL8 Reason code associated with IEBCOPY return code - set by IEBCOPY and may be updated by the exit.
60 3C   DS XL4 Reserved
  CPLST_PARMLIST_HEAD_LENGTH EQU *-CPLST_PARMLIST
64 40 CPLST_CONTROL_AREA DSECT Exit control area
The Control Statement exit control area contains the parameters passed to the "control statement" user exit for either a SYSIN control statement or a SYSPRINT report record.
ORG CPLST_CONTROL_AREA Start of exit control area
00 00 CPLST_RECORD_CONTROL DS 0D record data control parameters
  CPLST_CONTROL_OFLAGS DS 0XL4 Flags set by input control exit. Undefined flags must be zero
00 00 CPLST_CONTROL_OFLAG1 DC XL1 Exit information flag One
  CPLST_CONTROL_IN EQU B'10000000' Input control statement record
  CPLST_CONTROL_PRINT EQU B'01000000' Output print record.
    DC XL3 Reserved. Must be zero.
04 04 CPLST_CONTROL_DATA_LEN DS F Length of data record.
The following equates define the range of valid lengths that can be specified in the CPPLST_CONTROL_DATA_LEN field for either an input statement or print record. These values will be used when the length field is validity checked by IEBCOPY.
  CPLST_INPUT_STATEMENT_MINLEN EQU 72 Statement minimum length including continuation character in column 72.
  CPLST_INPUT_STATEMENT_MAXLEN EQU 80 Statement maximum length
  CPLST_PRINT_RECORD_MINLEN EQU 60 Print record minimum length not including carriage control character.
  CPLST_PRINT_RECORD_MAXLEN EQU 120 Print record maximum length not including carriage control character.
  CPLST_CONTROL_DATA_NONE EQU 00 Omitted data record length
08 08 CPLST_CONTROL_DATA_ADDR DS AD(0) Double word that contains the 31-bit address of data record. The high order 33 bits must be zero.
12 0C CPLST_CONTROL DATA_ADD EQU CPLST_CONTROL_DATA_ADDR+4,4 (31-bit address of data record)
16 10   DS 0D End of CPLST_RECORD_CONTROL
The member entry, created by IEBCOPY, contains a member name that is passed to the "member-selection" user exit. In the current release the count of one member entry is set in the CPLST_PARMLIST_DSNUMBER field.
ORG CPLST_CONTROL_AREA Start of exit control area.
00 00 CPLST_MEMBER_ENTRY DS 0D One member entry
00 00 CPLST_MEMBER_OFLAGS DS 0XL4 Flags set by Member-Selection exit. Undefined flags must be zero
00 00 CPLST_MEMBER_OFLAG1 DS XL1 Exit information flag One
  CPLST_MEMBER_REPLACE_ANY EQU B'10000000' Replace primary or alias name
  CPLST_MEMBER_RENAME EQU B'01000000' Use the NEWNAME for output name
01 01   DS XL3 Reserved, must be zero
04 04 CPLST_MEMBER_RC DS F Return code - set by exit
08 08   DS XL4 Reserved
12 0C CPLST_MEMBER_NAME_ADDR DC AD(0) Set by IEBCOPY, double word that contains the 31-bit address of the member name area. The member name area begins with a two-byte name length field followed by the member name. Currently, the length field value is set to eight bytes.
20 14 CPLST_MEMBER_NEWNAME_ADDR DC AD(0) Set by the exit, double word that contains the 31-bit address of the member new name area. The member new name area begins with a two-byte name length field followed by the new member name. Currently, the length field value is set to eight bytes.
28 1C   DS XL4 Filler for DW alignment.
32 20 CPLST_MEMBER_DIR_ADDR DS D Double word that contains the 31-bit address of the directory entry. The high order 33 bits must be zero.
40 28 CPLST_MEMBER_DIR_ADD EQU CPLST_MEMBER_DIR_ADDR+4,4 (31-bit address)
44 2C CPLST_MEMBER_DIR_LEN DS F Length of directory entry
    DS XL4 Filler for DW alignment, must be zero.
48 30 CPLST_MEMBER_NAME_AREA DS 0H Minimum length member name area
48 30 CPLST_MEMBER_NAME_LENG DC Y(L'CPLST_MEMBER_NAME) – member name length
50 32 CPLST_MEMBER_NAME DC CL8' ' Member name
58 3A CPLST_MEMBER_NEWNAME_AREA DS 0H Minimum length new name area
58 3A CPLST_MEMBER_NEWNAME_LENG DC Y(L'CPLST_MEMBER_NEWNAME) – new name length
60 3C CPLST_MEMBER_NEWNAME DC CL8' ' New member name - set by exit.
    DS 0D End of CPLST_MEMBER_ENTRY

The user exit should check the version field and should give a return code if it exceeds the version number that the exit was designed to handle. Normally IBM expects changes to this parameter list will be upward compatible and the version field will be unchanged in future releases.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014