All PPI calls require an RPB. An RPB is a block of storage and must be exactly 56 bytes long. An RPB describes the request you want to make of the PPI. The fields specified in the RPB depend on the type of request you are making. PPI uses other fields in the RPB to return data to your program.
The following table shows the request parameter block (RPB) format and describes the fields that can be used to construct the RPB:
Note: Some fields overlap.
|
Bytes |
Name |
Description |
|---|---|---|
|
00–03 |
RPBLEN |
A binary fullword that must contain the length of the RPB. This field must be set to 56 (decimal or 38 hexadecimal). For compatibility with earlier releases of PPI, a length of 40 (28 hexadecimal), 46 (2E hexadecimal), or 52 (34 hexadecimal) is permitted. |
|
04–05 |
REQUEST |
A binary halfword that must be set to the request code for the PPI call. Valid request codes are described later. |
|
06–07 |
RECOPT |
A binary halfword that must be set to one of the following values:
|
|
08–11 |
RETCODE |
A binary fullword that PPI sets with the return code from the requested function. For more information about possible return codes, see the function descriptions. |
|
12–15 |
WORKADR |
A binary fullword that must be set to the address of a 128-byte work area. This area must be provided on all calls to the PPI. It need not be preserved across calls. |
|
16–19 |
ASCBADDR |
A binary fullword, that is used to contain or return the ASCB address of the current address space. This field is used in various PPI calls. |
|
16–23 |
SENDERID |
For those calls that require it, the one- through eight-character sender ID. If the supplied ID is less than eight characters, it must be left-justified and blank-padded. |
|
20–23 |
ECBADDR |
A binary fullword, returned when a receiver is defined, containing the address of an ECB that PPI posts when data arrives. |
|
20–23 |
BUFFQL |
A binary fullword, supplied when defining or inactivating a receiver, that contains the receiver buffer queue limit. The supplied value is used to limit the number of buffers that can be queued to the receiver. |
|
24–31 |
RECVERID |
For those calls that require it, the one- through eight-character receiver ID. If the supplied ID is less than eight characters, it must be left-justified and blank-padded. |
|
32–35 |
BUFFLEN |
A binary fullword, supplied on some PPI calls, and returned on others, that contains the length of a supplied buffer or data, or the returned actual data length. |
|
32–33 |
AUTHIND |
A binary halfword, used when defining a receiver to indicate whether senders must be APF authorized or not. The following values are allowed:
|
|
34 |
FLAG1 |
Bit 0 (X'80') is set or reset by a request code 2 (query receiver) to indicate whether the receiver queue is full. The bit is set if the queue is not full or reset if full. |
|
36–39 |
BUFFADDR |
A binary fullword that must be set to the address of a sending or receiving buffer on some calls. The length of this buffer must be set in the BUFFLEN field. |
|
36–39 |
TCBADDR |
A binary fullword that must be set to the address of the current TCB when defining a receiver, or is returned on the 'get TCB/ASCB addrs' call. |
|
40–45 |
RESERVED |
These fields are not used in z/OS. |
|
46 |
REQIND1 |
Request indicator 1. If you do not want to change an existing receiver definition (even when the TCB/ASCB addresses match), set bit 0 (X'80') before issuing a DEFINE RECEIVER (request code 4). A return code of 16 is returned instead. If you want to determine the version of PPI in use, set bit 1 (X'40') before issuing a QUERY PPI STATUS (request code 1). |
|
47 |
REQIND2 |
Request indicator 2 (presently unused). |
|
48–51 |
VERSION |
Request code 1 returns the PPI version here if requested to (by setting REQUIND1 to X'40' before the call). The version returned is a fullword 1 indicating Tivoli NetView 2.4. |
|
52–55 |
RESERVED |
Presently unused. |
| Copyright © 2011 CA. All rights reserved. | Tell Technical Publications how we can improve this information |