Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ mbx_$open — Apollo

Media Vault

Software Library

Restoration Projects

Artifacts Sought

MBX_$OPEN                         Domain/OS                          MBX_$OPEN


NAME
     mbx_$open - open a client channel in a mailbox

SYNOPSIS (C)
     #include <apollo/base.h>
     #include <apollo/mbx.h>

     void mbx_$open(
          char *path_name,
          short &path_length,
          void *&buffer_pointer,
          long &buffer_length,
          void **mbx_handle,
          status_$t *status)

SYNOPSIS (Pascal)
     %include '/sys/ins/base.ins.pas';
     %include '/sys/ins/mbx.ins.pas';

     procedure mbx_$open(
          in path_name: univ mbx_$name_t;
          in path_length: integer;
          in buffer_pointer: univ_ptr;
          in buffer_length: integer32;
          out mbx_handle: univ_ptr;
          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*2 path_length
           character path_name*1023

           integer*4 buffer_pointer
           character buffer*32766
           pointer /buffer_pointer/ buffer

           call mbx_$open(path_name, path_length, buffer_pointer,
          &               buffer_length, mbx_handle, status)

DESCRIPTION
     Mbx_$open registers the caller as a client of the mailbox on mbx_handle,
     and sends a mbx_$channel_open_mt message to the mailbox's server to
     request a channel.  The server must respond by accepting or rejecting the
     request.  Mbx_$open returns with a status code indicating whether the
     caller's channel request was accepted by the server.

     path_name
          The pathname of a mailbox.

     path_length
          The number of bytes in path_name.

     buffer_pointer
          A pointer to a buffer containing data to be sent with the open
          request.  Mbx_$open ignores this pointer if buffer_length is 0.

     buffer_length
          The number of bytes to send from the buffer at buffer_pointer.
          Buffer_length must be less than mbx_$msg_max even if the buffers in
          the target mailbox are larger.  If buffer_length is 0, mbx_$open
          ignores buffer_pointer.

     mbx_handle
          A handle for the target mailbox if the mbx_$open call was accepted
          by the server.

     status
          The completion status.  If status is not status_$ok, the open
          request failed or was refused by the server.

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026