|
Hex Dec Type/Val Lng Label (dup) Comments
---- ---- --------- ---- -------------- --------
0000 0 Structure MBHBK ISFC Message Buffer Header Block
MBHBK starts with local processing fields.
This part of the MBHBK is not transmitted to the
destination node.
The MBHFPNT/MBHBPNT ptrs are used in a variety of ways.
The key is that these ptrs are not used for two purposes
at once.
Known uses:
- MBRREQ_REPLY is double-linked, but not circular.
- (Used by HCPKCDCH, HCPKCDTO, HCPKCD's TRANSMIT)
- SCKRCVR is single-linked, not circular.
(Used by HCPKCDMR,HCPKCDRM)
- SCKCNRQU is double-linked, circular list.
(Used by HCPKCDAC.)
- SCKRXQUE is double-linked, circular list.
(Used by HCPKCDRX, HCPKCDTO, HCPKCD's INSERT_QUEUE, REMOVE_QUEUE)
- LNKTQ_NEXT/FIRST/LAST is single-linked, not circular
(Used by HCPKCWTX, HCPKCWTP, HCPKWTO, HCPKCW's PROC_OUTBOUND.)
- HCPKCCQ1 is single-linked, not circular
(Used by HCPKCC's DISCARD_MSG)
- Send Reply chain (MBRREQ_REPLY) is double-linked, not circular
(Used by HCPKCDRQ, HCPNET)
- SCKQUEBK managed by HCPQMX routines.
0000 0 Address 4 MBHFPNT Pointer to next MBHDR
0004 4 Address 4 MBHBPNT Pointer to previous MBHDR
0008 8 Bitstring 1 MBHMGT Message Management flags
1... .... MBHSTGMT X'80' MBHSTGMT - This MBHBK owns
the buffers
.1.. .... MBHCLONE X'40' MBHCLONE - This is a clone
MBHBK
..1. .... MBHPASST X'20' MBHPASST - This is a
passthru MBHBK
...1 .... MBHMBX X'10' MBHMBX - Use ISFC Mailbox
storage
0009 9 Bitstring 1 MBHMP Message Processing flags
1... .... MBHMP_INBOUND X'80' MBHMP_INBOUND - Inbound
message
.1.. .... MBHMP_OUTBOUND X'40' MBHMP_OUTBOUND - Outbound
message
..1. .... MBHMP_ERROR X'20' MBHMP_ERROR - Error
detected
...1 .... MBHMP_COMPLETE X'10' MBHMP_COMPLETE - Transmit
(TX) complete
.... 1... MBHMP_INCCW X'08' MBHMP_INCCW - Built in CCW;
can't remove
.... .1.. MBHMP_KCWTO X'04' MBHMP_KCWTO - Being timed
out
.... ..1. MBHMP_RETURNOK X'02' MBHMP_RETURNOK - The link
layer has returned ownership of
the MBHBK to the socket layer.
Only when the MBHMP_RETURNOK flag
is ON may the MBHBK be returned
to the HCPSOCK caller. The
SCKLKWRD for the owning socket
must be held EXCLUSIVE to change
or reference the MBHMP_RETURNOK
flag.
000A 10 Signed 2 MBHBUFMX MBHBUFCT maximum (this MBHBK)
000C 12 Signed 4 MBHERRNO Error number
00000001 MBH_INVCLASS 1 MBH_INVCLASS Invalid MBHCLASS
00000002 MBH_NOLINK 2 MBH_NOLINK No link found
00000003 MBH_NOSOCK 3 MBH_NOSOCK No socket found
00000006 MBH_UNEXPECTED 6 MBH_UNEXPECTED Unexpected error
00000007 MBH_TIMEDOUT 7 MBH_TIMEDOUT Timed out by CP -
REPLY did not arrive promptly -
Connection lost to target
00000008 MBH_BREAK4KB 8 MBH_BREAK4KB A frame crosses
the 4KB boundary
0010 16 Dbl-Word 8 MBHTOD0 TOD when msg was sent/recvd
0018 24 Address 4 MBHPRMBK Pointer to MBHBK(prime)
001C 28 Signed 4 MBHCLCNT Number of Clones
0020 32 Signed 4 MBHSNTCT Count messages sent
0024 36 Signed 4 MBHREFCT Reference count for MBHBK
0028 40 Address 4 MBHSCKBK Link to local socket
002C 44 Address 4 MBHMDEBK Pointer to MDEBK (for passthru)
0030 48 Address 4 MBHCRTAD Creation address for debug
0034 52 Address 4 MBHFREAD Free address for debug
0038 56 Signed 2 MBHTOCTR Time out counter
003A 58 Signed 2 * Reserved
003C 60 Address 4 MBHMBBK Pointer to the MBBK
0040 64 Dbl-Word 8 * Reserved
MBHDR defines the message header (for transmission).
These fields are transmitted with the message.
0048 72 Bitstring 1 MBHDR (0)
0048 72 Bitstring 1 MBHHDRLN Header length (MBHDRLN)
0049 73 Bitstring 1 MBHFMT Message Format
00000001 MBHFMT01 1 MBHFMT01 ISFC MBHDR Format 1
004A 74 Signed 2 MBHBUFCT Buffer count
004C 76 Signed 4 MBHMSGLN Total message length
0050 80 Bitstring 1 MBHCLASS Message Class
00000000 MBHUNI 0 MBHUNI - Unicast to MBHNODE
00000001 MBHBRD 1 MBHBRD - Broadcast to ISFC
Collection
00000002 MBHPLX 2 MBHPLX - Broadcast to VMPLEX
0051 81 Bitstring 1 MBHOPTNS Options
1... .... MBHIMMED X'80' MBHIMMED - Immediate mode
(nonblocking)
..1. .... MBHWTREP X'20' MBHWTREP - Wait for Reply
(blocking)
...1 .... MBHREPLY X'10' MBHREPLY - This is a Reply
(use MBHMSGID)
0052 82 Signed 2 MBHSEQNO Link Layer sequence number
0054 84 Signed 4 MBHMSGID Source message ID
0058 88 Character 16 MBHDINFO (0) General Destination Info
0058 88 Character 8 MBHDNODE Destination NodeID
0060 96 Character 8 MBHDPORT Destination ServiceID
0068 104 Character 16 MBHSINFO (0) General Source Info
0068 104 Character 8 MBHSNODE Source NodeID
0070 112 Character 8 MBHSPORT Source ServiceID
0078 120 Signed 4 MBHDMASK Destination MASK
007C 124 Signed 4 MBHSMASK Source MASK
Overlay Protocol||Function (MBHPROT||MBHFUNC).
0080 128 Bitstring 4 MBHPCFN (0) Protocol||Function combined
Every message has a protocol (MBHPROT).
ISFC claims protocols 0-255.
Other services may use 256 (x'100') or higher.
0080 128 Signed 2 MBHPROT Message Protocol
00000000 MBH_NOPROT X'0000' MBH_NOPROT No protocol
00000002 MBH_CMP X'0002' MBH_CMP Collection
Management protocol
00000004 MBH_SOCK X'0004' MBH_SOCK Socket protocol
Function code is set by the message creator.
If MBHMSGLN==0 (which implies MBHBUFCT==0) the
message is contained entirely within function
code (MBHFUNC) and the optional MBHPARM field.
0082 130 Signed 2 MBHFUNC Message Function (in MBHPROT)
00000001 MBHCMP_SEND 1 MBHCMP_SEND CMP Send
00000002 MBHCMP_MAILBOX 2 MBHCMP_MAILBOX CMP Send for
mailbox
00000001 MBHSOCK_CNREQ 1 MBHSOCK_CNREQ Socket connection
request
00000002 MBHSOCK_CNACPT 2 MBHSOCK_CNACPT Socket
connection accepted
00000003 MBHSOCK_CLOSE 3 MBHSOCK_CLOSE Socket closed
00000004 MBHSOCK_YES 4 MBHSOCK_YES A YES vote on
HCPSOCK SEND_REPLY
00000005 MBHSOCK_NO 5 MBHSOCK_NO A NO vote on HCPSOCK
SEND_REPLY
00000006 MBHSOCK_NODESY 6 MBHSOCK_NODESY ISFC Node Sync
Services
00000007 MBHSOCK_TIMESY 7 MBHSOCK_TIMESY ISFC Time Sync
Services
00000009 MBHSOCK_LINK 9 MBHSOCK_LINK Link Heartbeat
message
0000000A MBHSOCK_LATE 10 MBHSOCK_LATE Late Node Sync
Response
MBHPARM is set by the message creator.
0084 132 Signed 4 MBHPARM Message Parameter (optional)
0088 136 Signed 4 * (3) Reserved for future use
0094 148 Bitstring 1 MBHPRIOR Message priority
00000000 MBHPRILO X'00' MBHPRILO Priority 0 - Low
00000001 MBHPRIML X'01' MBHPRIML Priority 1 -
MediumLow
00000007 MBHPRIMD X'07' MBHPRIMD Medium = High (for
future use)
00000007 MBHPRIHI X'07' MBHPRIHI Priority 7 -
Highest
0095 149 Bitstring 1 * Reserved
0096 150 Signed 2 * Reserved
00000098 MBHDR$ * = End of MBHDR
00000050 MBHDRLN *-MBHDR Length of MBHDR area
MBHBF array.
When MBHBUFCT>0 the MBHBF array begins here.
0098 152 Bitstring 1 MBHLIST (0) Buffer Fragment list
End of MBHBK
00000098 MBHBK$ * = End of MBHBK
00000098 MBHBKLN *-MBHBK Length of typical MBHBK
00000013 MBHBKSZ (MBHBKLN+7)/8 Size of typical
MBHBK (dblwords)
MBHPARM definition for Passthru data (MBHCMP_MAILBOX)
0084 132 Signed 2 MBHSEGNO MDEBK segment (1-MBHSEGCT)
0086 134 Signed 2 MBHSEGCT MDEBK segment count (total)
Constants associated with MBHBK.
00000080 MBH_BFMAX 128 Max MBHBF entries with one
MBHBK
00000898 MBH_BKMAX MBHBKLN+(MBHBFLN*MBH_BFMAX) Max
MBHBK len
MBHBF - Buffer Fragment entry.
When MBHBUFCT>0 the MBHBF array follows immediately
after MBHDR (starting at MBHLIST).
Hex Dec Type/Val Lng Label (dup) Comments
---- ---- --------- ---- -------------- --------
0000 0 Structure MBHBF ISFC Message Buffer Header Block
0000 0 Bitstring 1 MBHBFFLG Buffer Flag
1... .... MBHBFBAD X'80' MBHBFBAD - This buffer
fragment is bad
.1.. .... MBHBFDNR X'40' MBHBFDNR - Don't release
this fragment
..1. .... MBHBFUSR X'20' MBHBFUSR - User Frame
...1 .... MBHBFPAG X'10' MBHBFPAG - Full page
obtained
0001 1 Bitstring 1 MBHBFSTG Buffer Storage Type (HL/HA)
00000001 MBHBFHLS 1 MBHBFHLS Host Logical Space
00000002 MBHBFHAS 2 MBHBFHAS Host Absolute Space
00000003 MBHBFCFS 3 MBHBFCFS ISFC Address Space
0002 2 Bitstring 4 * Reserved for IBM Use
0006 6 Signed 2 MBHBFLEN Buffer Fragment Length
0008 8 Dbl-Word 8 MBHBFPTR (0) Buffer Fragment Address
0008 8 Address 4 MBHBFPTH Buffer Fragment - High half
000C 12 Address 4 MBHBFPTL Buffer Fragment - Low half
00000010 MBHBF$ * = End of MBHBF
00000010 MBHBFLN *-MBHBF Length of MBHBF entry
(bytes)
00000002 MBHBFSZ (MBHBFLN+7)/8 Size of typical
MBHBF (dblwords)
| |