.\" the source, must acknowledge the copyright and authors of this work.
.\" %%%LICENSE_END
.\"
-.TH MQ_OPEN 3 2009-02-20 "Linux" "Linux Programmer's Manual"
+.TH MQ_OPEN 3 2014-12-31 "Linux" "Linux Programmer's Manual"
.SH NAME
mq_open \- open a message queue
.SH SYNOPSIS
in
.IR oflag :
.TP
-.B O_NONBLOCK
-Open the queue in nonblocking mode.
-In circumstances where
-.BR mq_receive (3)
-and
-.BR mq_send (3)
-would normally block, these functions instead fail with the error
-.BR EAGAIN .
+.BR O_CLOEXEC " (since Linux 2.6.26)"
+.\" commit 269f21344b23e552c21c9e2d7ca258479dcd7a0a
+Set the close-on-exec flag for the message queue descriptor.
+See
+.BR open (2)
+for a discussion of why this flag is useful.
.TP
.B O_CREAT
Create the message queue if it does not exist.
.I name
already exists, then fail with the error
.BR EEXIST .
+.TP
+.B O_NONBLOCK
+Open the queue in nonblocking mode.
+In circumstances where
+.BR mq_receive (3)
+and
+.BR mq_send (3)
+would normally block, these functions instead fail with the error
+.BR EAGAIN .
.PP
If
.B O_CREAT
(Symbolic definitions for the permissions bits can be obtained by including
.IR <sys/stat.h> .)
The permissions settings are masked against the process umask.
+
The
.I attr
argument specifies attributes for the queue.
.I attr
is NULL, then the queue is created with implementation-defined
default attributes.
+Since Linux 3.5, two
+.I /proc
+files can be used to control these defaults; see
+.BR mq_overview (7)
+for details.
.SH RETURN VALUE
On success,
.BR mq_open ()
.I queues_max
limit was encountered; see
.BR mq_overview (7).
+.SH ATTRIBUTES
+.SS Multithreading (see pthreads(7))
+The
+.BR mq_open ()
+function is thread-safe.
.SH CONFORMING TO
POSIX.1-2001.
.SH BUGS
.BR mq_unlink (3),
.BR mq_overview (7)
.SH COLOPHON
-This page is part of release 3.67 of the Linux
+This page is part of release 3.79 of the Linux
.I man-pages
project.
A description of the project,