!*** MODULE $ICCDEF IDENT X-4 *** !DEC$ OPTIONS/ALIGN=(RECORDS=PACKED,COMMONS=PACKED)/NOWARN ! ! ICC IOSB data structure for data transfer routines ! ! Past the 1st longword, the IOC_ICC fields vary depending on the type of ! request/operation. The diagram attempts to picture those relationships ! below. Longwords 2-5 are done in columns, each column representing the ! value of that longword for that type of request/operation. ! ! +4 +2 +0 ! +---------------------------------------------------------+ ! L1: | Undefined | Return status code | ! |---------------------------------------------------------| ! |---------------------------------------------------------| ! | | | | | ! | RECEIVE | REPLY | TRANSCEIVE | CONNECT | ! | | | | | ! L2: | rcv_len | replyto_handle| txrcv_len | RemStat | ! |---------------|---------------|---------------|---------| ! L3: | req_handle | Unused | | Unused | ! |---------------|---------------| reply_buffer | | ! L4: | reply_len | Unused | | | ! |---------------|---------------|---------------| | ! L5: | Unused | Unused | txreply_len | | ! |---------------+---------------+---------------+---------| ! STRUCTURE /IOS_ICC/ INTEGER*2 IOS_ICC$w_status ! return status INTEGER*2 IOS_ICC$w_reserved ! reserved UNION MAP INTEGER*4 IOS_ICC$l_remstat ! remote status (returned) INTEGER*4 %FILL(1:3) END MAP MAP INTEGER*4 IOS_ICC$l_rcv_len ! return len (returned) INTEGER*4 IOS_ICC$l_req_handle ! request handle (returned) INTEGER*4 IOS_ICC$l_reply_len ! reply len (returned) INTEGER*4 %FILL END MAP MAP INTEGER*4 IOS_ICC$l_replyto_handle ! request_handle (input) INTEGER*4 %FILL(1:3) END MAP MAP INTEGER*4 IOS_ICC$l_txrcv_len ! return length (returned) INTEGER*8 IOS_ICC$A_reply_buffer ! 64-bit bfr addr (Alpha) INTEGER*4 IOS_ICC$l_txreply_len ! reply len (input) END MAP END UNION END STRUCTURE ! IOS_ICC PARAMETER ICC$C_receive_len = '00000010'X PARAMETER ICC$C_reply_len = '00000008'X PARAMETER ICC$C_transceive_len = '00000014'X ! ! Length constants ! PARAMETER ICC$C_MAX_ASSOC_LEN = '0000001F'X PARAMETER ICC$C_MAX_CONN_DATA_LEN = '000003E8'X ! ! Connection flag bit definitions (for connect/accept services) ! PARAMETER ICC$M_Synch_Mode = '00000001'X STRUCTURE /ICC_CONNECTION_FLAGS/ PARAMETER ICC$S_Synch_Mode = 1 PARAMETER ICC$V_Synch_Mode = 0 ! Set (1) if data transfer routines ! are allowed to return SS$_SYNCH ! to the user. BYTE %FILL (1) END STRUCTURE ! ICC_CONNECTION_FLAGS ! ! ICC event codes (first parameter) for the connect/disconnect routines ! PARAMETER ICC$C_EV_CONNECT = '00000000'X PARAMETER ICC$C_EV_DISCONNECT = '00000001'X PARAMETER ICC$C_min_event = '00000000'X PARAMETER ICC$C_max_event = '00000001'X ! ! Default ICC association handle ! PARAMETER ICC$C_DFLT_ASSOC_HANDLE = '00000001'X ! ! Default flow control value ! PARAMETER ICC$C_DEFAULT_MAXFLOWBUFCNT = '00000005'X ! Pending inbound msgs !DEC$ END OPTIONS