Data is passed as parameter entries in a key, length, and data
format. Figure 1 shows that Register 1 points to a list
of addresses. Each address in the list points to a parameter entry.
The three parameter entry fields (key, length, and data) are described
below:
- Key
- The key field is one fullword that contains a hexadecimal value. Table 1 shows the keys that have been defined for communication
between the exit and the invoking program. Any other values are reserved
and must not be used.
Table 1. Definition of keys for standard exit parameter listKEY |
Description |
---|
X'00' |
No data is passed in this parameter entry. |
X'01' |
The data field contains the actual data for the
parameter entry. |
X'02' |
The data field contains the address of the actual
data for the parameter entry. |
X'03' |
This is a special key that only certain standard-format
exits support. The exit requests that the function or command processor that invoked
the exit routine use the exit reason code as the function's or command processor's
return code. A key of X'03' is valid only for the exit reason
code parameter entry (parameter entry 7). For more information, see Exit reason code. |
X'04' |
This is a special key that only certain standard-format
exits support. The field is validated. This key indicates that the
field contains valid data. When this key is set, the field is locked
and cannot be altered. |
- Length
- The length field is one fullword that contains the length of
the data, in hexadecimal. For a key of X'01', the length
is the length of the data in the data field. For a key of X'02',
the length is the length of the data that the address in the data
field points to.
The length field cannot be X'00'. If
no data is passed in a parameter entry (key of X'00'), the
length field must contain X'04'. If you use a key of X'03',
the length field must also contain X'04'.
- Data
- The data field contains either the address of the data, the
actual data, or a value of X'00'.
The value in the data
field depends on the value in the key field. The following shows the
relationship between the key and the value in the data field:
Key Data Field
X'00' X'00'
X'01' Actual data
X'02' Address of the data
X'03' Exit reason code
X'04' Field is validated
Figure 1 shows the values of the parameter entries
that the first exit for a function or command processor receives. The first exit
is usually the "initialization" exit for the function or command.
The individual descriptions of each exit in this document describe
any exceptions to the standard exit parameter list.
If information about a particular parameter is unavailable to a
function or
command processor, the function or
command processor passes the following for the
parameter entry:
- Key
- X'00'
- Length
- X'04'
- Data
- X'00'
An exit can change only the following parameter entries in the
standard exit parameter list:
- New command buffer.
- Exit-to-exit communication word.
Depending on the individual exit, the exit may be able to change
exit-dependent data that it receives. The individual descriptions
of the exits in this document describe any exit-dependent data and
whether the exit can change the parameter entries for this data. If
the exit changes any of the other parameter entries, unpredictable
results can occur.
If an exit changes the new command buffer, the exit-to-exit communication
word, or any exit-dependent data, the function or command processor passes the
changes to the next exit it invokes.
The following topics describe each of the standard parameter entries
and the exit-dependent data.