NAME | SYNOPSIS | FEATURES | DESCRIPTION | RETURN VALUE | ERRORS | ATTRIBUTES | SEE ALSO
#include <mqueue.h>int mq_setattr(mqd_t mqdes, const struct mq_attr *mqstat, struct mq_attr *omqstat);
POSIX_MQ
The mq_setattr system call is used to set attributes associated with the message queue specified by mqdes to the values specified by mqstat.
The message queue attributes corresponding to the following members defined in the mq_attr structure (defined in mq_getattr(2POSIX)), are set to the values specified upon successful completion of mq_setattr:
The value of this member is the bitwise logical OR of zero and MQ_NONBLOCK.
The values of the mq_maxmsg, mq_msgsize, mq_curmsgs, mq_sendwait, and mq_rcvwait members of the mq_attr structure are ignored by mq_setattr.
If omqstat is non-NULL, mq_setattr stores, in the location referenced by omqstat, the previous message queue attributes and the current queue status. These values are the same as would be returned by a call to mq_getattr() at that point.
Upon successful completion, mq_setattr returns 0 and the attributes of the message queue will have been changed as specified. Otherwise, the message queue attributes will not be changed, mq_setattr will return -1, and set errno to indicate the error condition.
The function mq_setattr is not supported.
The MQ feature [_POSIX_MESSAGE_PASSING] option (see sysconf(3POSIX)) is not configured.
The mqdes argument is not a valid message queue descriptor.
mqstat or mqostat points outside the allocated address space of the c_actor.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
---|---|
Interface Stability | Evolving |
NAME | SYNOPSIS | FEATURES | DESCRIPTION | RETURN VALUE | ERRORS | ATTRIBUTES | SEE ALSO