MBX_$PUT_REC Domain/OS MBX_$PUT_REC
NAME
mbx_$put_rec - send a message
SYNOPSIS (C)
#include <apollo/base.h>
#include <apollo/mbx.h>
void mbx_$put_rec(
void *&mbx_handle,
void *&buffer_pointer,
long &buffer_length,
status_$t *status)
SYNOPSIS (Pascal)
%include '/sys/ins/base.ins.pas';
%include '/sys/ins/mbx.ins.pas';
procedure mbx_$put_rec(
in mbx_handle: univ_ptr;
in buffer_pointer: univ_ptr;
in buffer_length: integer32;
out status: status_$t);
SYNOPSIS (FORTRAN)
%include '/sys/ins/base.ins.ftn'
%include '/sys/ins/mbx.ins.ftn'
integer*4 mbx_handle, buffer_length, status
integer*4 buffer_pointer
character buffer*32760
pointer /buffer_pointer/ buffer
call mbx_$put_rec(mbx_handle, buffer_pointer, buffer_length, status)
DESCRIPTION
Mbx_$put_rec sends a message to the mailbox on mbx_handle. If there is
no room for the message, mbx_$put_rec waits until the channel can accom-
modate it.
If mbx_$put_rec is called by a client, the message is buffered in the
client's channel. If mbx_$put_rec is called by a server, the message is
buffered in the channel specified by the chan field of the message
header.
mbx_handle
The mailbox handle.
buffer_pointer
A pointer to a buffer containing data to be sent in the partial mes-
sage.
buffer_length
The number of bytes to send from the buffer at buffer_pointer.
Buffer_length must be less than mbx_$rec_data_max when mbx_$put_rec
is called by a client, and less than mbx_$rec_msg_max when
mbx_$put_rec is called by a server.
status
The completion status.
NOTES
If the message is destined for a remote node and buffer_length is greater
than mbx_$msg_max, the sender may want to call mbx_$server_window or
mbx_$client_window to verify that intermediate mailbox helpers will be
able to buffer it.