The Open Group Base Specifications Issue 8
IEEE Std 1003.1-2024
Copyright © 2001-2024 The IEEE and The Open Group

NAME

sys/msg.h — XSI message queue structures

SYNOPSIS

[XSI] [Option Start] #include <sys/msg.h> [Option End]

DESCRIPTION

The <sys/msg.h> header shall define the following data types through typedef:

msgqnum_t
Used for the number of messages in the message queue.
msglen_t
Used for the number of bytes allowed in a message queue.

These types shall be unsigned integer types that are able to store values at least as large as a type unsigned short.

The <sys/msg.h> header shall define the following symbolic constant as a message operation flag:

MSG_NOERROR
No error if big message.

The <sys/msg.h> header shall define the msqid_ds structure, which shall include the following members:

struct ipc_perm msg_perm   Operation permission structure.
msgqnum_t       msg_qnum   Number of messages currently on queue.
msglen_t        msg_qbytes Maximum number of bytes allowed on queue.
pid_t           msg_lspid  Process ID of last msgsnd().
pid_t           msg_lrpid  Process ID of last msgrcv().
time_t          msg_stime  Time of last msgsnd().
time_t          msg_rtime  Time of last msgrcv().
time_t          msg_ctime  Time of last change.

The <sys/msg.h> header shall define the pid_t, size_t, ssize_t, and time_t types as described in <sys/types.h>.

The following shall be declared as functions and may also be defined as macros. Function prototypes shall be provided.

int       msgctl(int, int, struct msqid_ds *);
int       msgget(key_t, int);
ssize_t   msgrcv(int, void *, size_t, long, int);
int       msgsnd(int, const void *, size_t, int);

In addition, the <sys/msg.h> header shall include the <sys/ipc.h> header.


The following sections are informative.

APPLICATION USAGE

None.

RATIONALE

None.

FUTURE DIRECTIONS

None.

SEE ALSO

<sys/ipc.h>, <sys/types.h>

XSH msgctl, msgget, msgrcv, msgsnd

CHANGE HISTORY

First released in Issue 2. Derived from System V Release 2.0.

Issue 7

Austin Group Interpretation 1003.1-2001 #179 is applied.

This reference page is clarified with respect to macros and symbolic constants.

End of informative text.

 

return to top of page

UNIX® is a registered Trademark of The Open Group.
POSIX™ is a Trademark of The IEEE.
Copyright © 2001-2024 The IEEE and The Open Group, All Rights Reserved
[ Main Index | XBD | XSH | XCU | XRAT ]