VMS Help
System Services, $ICC RECEIVE
*Conan The Librarian
|
Receives a single message over a connection.
On Alpha and Integrity server systems, this service accepts 64-
bit addresses.
Format
SYS$ICC_RECEIVE conn_handle ,ios_icc ,[astadr] ,[astprm]
,recv_buf ,recv_buf_len
C Prototype
sys$icc_receive (unsigned int conn_handle, struct _ios_icc
*ios_icc, void (*astadr)(__unknown_params),
__int64 astprm, char *recv_buf, unsigned int
recv_buf_len);
conn_handle
OpenVMS usage:connection_id
type: longword (unsigned)
access: read only
mechanism: by value
The handle of the fully established connection.
ios_icc
OpenVMS usage:io_status_block
type: four longwords (unsigned)
access: write only
mechanism: by 32-bit or 64-bit reference (Alpha and Integrity
servers)
I/O status block:
+2 0
-------------------------------------------------
| Undefined | Completion status |
-------------------------------------------------
| ios_icc$l_rcv_len: recvlen | +4
-------------------------------------------------
| ios_icc$l_req_handle: request_handle | +8
-------------------------------------------------
| ios_icc$l_reply_len: reply_len | +12
-------------------------------------------------
Completion codes:
SS$_NORMAL, SS$_EXQUOTA, SS$_INSFMEM, SS$_LINKDISCON, SS$_BUFOVL,
SS$_ACCVIO
astadr
OpenVMS usage:ast_procedure
type: procedure_entry_mask
access: call without stack unwinding
mechanism: by 32-bit or 64-bit linkage reference (Alpha and
Integrity servers)
The AST routine to be executed when the operation completes.
astprm
OpenVMS usage:user_arg
type: quadword (unsigned) (Alpha and Integrity servers)
access: read only
mechanism: by 64-bit value (Alpha and Integrity servers)
The parameter to be passed to the AST routine.
recv_buf
OpenVMS usage:byte_stream
type: character-coded text string
access: read only
mechanism: by 32-bit or 64-bit reference (Alpha and Integrity
servers)
The 32-bit or 64-bit address (on Alpha and Integrity server
systems) of the buffer to receive the incoming data. The length
of this buffer is specified by the argument recv_buf_len.
recv_buf_len
OpenVMS usage:buffer_length
type: longword (unsigned)
access: read only
mechanism: by value
The length (in bytes) of the buffer available to hold the
incoming data. This value specifies the length of the buffer
recv_buf.
IOS_ICC Arguments:
recvlen (output)
OpenVMS usage:longword unsigned
type: longword (unsigned)
access: write only
mechanism: by value
This parameter is returned in the ios_icc. $ICC_RECEIVE writes
the actual length of the incoming data message received from the
target application (in bytes) into offset ios_icc$l_rcv_len of
the ios_icc.
request_handle (output)
OpenVMS usage:request_id
type: longword (unsigned)
access: write only
mechanism: by value
This parameter is returned in the ios_icc. $ICC_RECEIVE writes
the Request/Response handle into offset ios_icc$l_req_handle
of the ios_icc. The request_handle argument is nonzero if the
application is expected to reply to this message.
reply_len (output)
OpenVMS usage:longword_unsigned
type: longword (unsigned)
access: write only
mechanism: by value
This parameter is returned in the ios_icc. The $ICC_RECEIVE
service writes the maximum length (in bytes) of the expected
Reply message into offset ios_icc$l_reply_len of the ios_icc, if
request_handle is nonzero.