User guide
7: Host/ICP Interface
DC 900-1338I 129
The header buffer has the following structure:
struct SREQ_HDR_TYPE
{
struct SBH_TYPE sbh;
struct sreq_type req;
};
The two structures that make it up are as follows:
struct SBH_TYPE
{
struct SBH_TYPE *sb_nxte; /* next element */
struct SBH_TYPE *sb_pree; /* previous element */
struct SBH_TYPE *sb_thse; /* this element */
struct SBH_TYPE *sb_nxtb; /* next buffer */
unsigned short sb_pid; /* partition ID */
unsigned short sb_dlen; /* data length */
unsigned short sb_disp; /* disposition flag */
unsigned short sb_dmod; /* disposition modifier */
};
struct sreq_type
{
unsigned char funct; /* function code (read or write) */
unsigned char subfunct; /* subfunction code */
unsigned char snode; /* host node number */
unsigned char inode; /* ICP node number */
unsigned short line; /* line number */
unsigned short circuit; /* circuit number */
unsigned short dlen; /* data length, in bytes */
unsigned short status; /* completion code */
unsigned char s_node; /* actual host node number
(on completion) */
unsigned char i_node; /* actual ICP node number
(on completion) */
unsigned short s_dlen; /* actual number of bytes
transferred */
};