| MSGGET(2) | System Calls Manual | MSGGET(2) |
msgget — get
message queue identifier
Standard C Library (libc, -lc)
#include
<sys/msg.h>
int
msgget(key_t
key, int
msgflg);
The
msgget()
system call returns the message queue identifier associated with
key. A message queue identifier is a unique integer
greater than zero.
A message queue is created if either key is
equal to IPC_PRIVATE, or key
does not have a message queue identifier associated with it and the
IPC_CREAT bit is set in
msgflg. If both the IPC_CREAT
bit and the IPC_EXCL bit are set in
msgflg, and key has a message
queue identifier associated with it already, the operation will fail.
If a new message queue is created, the data structure associated with it (the msqid_ds structure, see msgctl(2)) is initialized as follows:
MSGMNB).Upon successful completion a positive message queue identifier is returned. Otherwise, -1 is returned and the global variable errno is set to indicate the error.
EACCES]EEXIST]IPC_CREAT and
IPC_EXCL are set in msgflg,
and a message queue is already associated with
key.ENOSPC]ENOENT]IPC_CREAT
is not set in msgflg and no message queue associated
with key was found.The msgget system call conforms to
X/Open System Interfaces and Headers Issue 5
(“XSH5”).
Message queues appeared in the first release of AT&T System V UNIX.
| May 13, 2004 | NetBSD 11.0 |