mq_setattr.2 (2010 09)

m
mq_setattr(2) mq_setattr(2)
NAME
mq_setattr - set the blocking status of a message queue associated with a descriptor
SYNOPSIS
#include <sys/mqueue.h>
int mq_setattr(mqd_t mqdes,
const struct mq_attr *mqstat,
struct mq_attr *omqstat,
);
DESCRIPTION
The mq_setattr() system call changes the blocking status of a message queue associated with the
descriptor, mqdes. The blocking status that is modified is per message queue descriptor and another
open descriptor for the same message queue can have a different blocking status.
The argument mqstat , points to an
mq_attr
structure that specifies the blocking status desired. More
specifically, if the
O_NONBLOCK bit in the mq_flags field of the
mq_attr structure is set, the descriptor
is marked as non-blocking. Otherwise it is marked as blocking.
If omstat is non-NULL,
mq_setattr() will store in the
mq_attr structure referenced by omqstat, the
previous message queue attributes and the queue blocking status associated with this mqdes. The values
returned are the same as would be returned by a call to
mq_getattr().
To use this function, link in the realtime library by specifying
-lrt on the compiler or linker command
line.
RETURN VALUE
mq_setattr() returns the following values:
0 Successful completion.
-1 Failure. errno is set to indicate the error.
ERRORS
If
mq_setattr() fails, errno is set to one of the following values:
[EBADF] mqdes is not a valid message queue descriptor.
[EINVAL] mqstat does not point to a valid
mq_attr structure, or omqstat is non-NULL and
does not point to a valid
mq_attr structure.
[ENOSYS]
mq_setattr() is not supported by the implementation.
SEE ALSO
mq_getattr(2), mq_open(2).
STANDARDS CONFORMANCE
mq_setattr(): POSIX 1003.1b
HP-UX 11i Version 3: September 2010 1 Hewlett-Packard Company 1

Summary of content (2 pages)