Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ msgget(2) — NEWS-os 5.0.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

intro(2)

msgctl(2)

msgop(2)

stdipc(3C)



msgget(2)                 SYSTEM CALLS                  msgget(2)



NAME
     msgget - get message queue

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

     int msgget(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 IPCPRIVATE.

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

     On creation, the data structure associated with the new mes-
     sage queue identifier is initialized as follows:

          msgperm.cuid,   msgperm.uid,    msgperm.cgid,    and
          msgperm.gid  are  set  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  to  the
          low-order 9 bits of msgflg.

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

          msgctime is set to the current time.

          msgqbytes is set to the system limit.

     msgget fails 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.

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

     ENOSPC         A message queue identifier is to  be  created



                                                                1





msgget(2)                 SYSTEM CALLS                  msgget(2)



                    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)  and (msgflg&IPCEXCL) are
                    both true.

SEE ALSO
     intro(2), msgctl(2), msgop(2), stdipc(3C).

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.








































                                                                2



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