Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ msgget(2) — svr3 — mips UMIPS RISC/os 5.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

intro(2)

msgctl(2)

msgop(2)



MSGGET(2-SVR3)      RISC/os Reference Manual       MSGGET(2-SVR3)



NAME
     msgget - get message queue

SYNOPSIS
     #include <sys/types.h>
     #include <sys/ipc.h>
     #include <sys/msg.h>

     int msgget (key, msgflg)
     keyt key;
     int msgflg;

DESCRIPTION
     msgget returns the message queue identifier associated with
     key.

     A message queue identifier and associated message queue and
     data structure [see intro(2)] are created for key if one of
     the following are true:

          key is equal to IPC_PRIVATE.

          key does not already have a message queue identifier
          associated with it, and (msgflg & IPC_CREAT) is
          ``true''.

     Upon creation, the data structure associated with the new
     message queue identifier is initialized as follows:

          msgperm.cuid, msgperm.uid, msgperm.cgid, and
          msgperm.gid are set equal to the effective user ID and
          effective group ID, respectively, of the calling pro-
          cess.

          The low-order 9 bits of msgperm.mode are set equal to
          the low-order 9 bits of msgflg.

          msgqnum, msglspid, msglrpid, msgstime, and
          msgrtime are set equal to 0.

          msgctime is set equal to the current time.

          msgqbytes is set equal to the system limit.

ERRORS
     msgget will fail if one or more of the following are true:

     [EACCES]                 A message queue identifier exists
                              for key, but operation permission
                              [see intro(2)] as specified by the
                              low-order 9 bits of msgflg would
                              not be granted.



                        Printed 11/19/92                   Page 1





MSGGET(2-SVR3)      RISC/os Reference Manual       MSGGET(2-SVR3)



     [ENOENT]                 A message queue identifier does not
                              exist for key and (msgflg &
                              IPCCREAT) is ``false''.

     [ENOSPC]                 A message queue identifier is to be
                              created but the system-imposed
                              limit on the maximum number of
                              allowed message queue identifiers
                              system wide would be exceeded.

     [EEXIST]                 A message queue identifier exists
                              for key but ((msgflg & IPCCREAT) &
                              (msgflg & IPCEXCL)) is ``true''.

SEE ALSO
     intro(2), msgctl(2), msgop(2).

DIAGNOSTICS
     Upon successful completion, a non-negative integer, namely a
     message queue identifier, is returned.  Otherwise, a value
     of -1 is returned and errno is set to indicate the error.


































 Page 2                 Printed 11/19/92



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