1 <!-- Copyright (C) 2003 Red Hat, Inc. -->
2 <!-- This material may be distributed only subject to the terms -->
3 <!-- and conditions set forth in the Open Publication License, v1.0 -->
4 <!-- or later (the latest version is presently available at -->
5 <!-- http://www.opencontent.org/openpub/). -->
6 <!-- Distribution of the work or derivative of the work in any -->
7 <!-- standard (paper) book form is prohibited unless prior -->
8 <!-- permission is obtained from the copyright holder. -->
12 >Message Passing [POSIX Section 15]</TITLE
13 ><meta name="MSSmartTagsPreventParsing" content="TRUE">
16 CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
19 TITLE="eCos Reference Manual"
20 HREF="ecos-ref.html"><LINK
22 TITLE="POSIX Standard Support"
23 HREF="posix-standard-support.html"><LINK
25 TITLE="Clocks and Timers [POSIX Section 14]"
26 HREF="posix-clocks-and-timers.html"><LINK
28 TITLE="Thread Management [POSIX Section 16]"
29 HREF="posix-thread-management.html"></HEAD
40 SUMMARY="Header navigation table"
49 >eCos Reference Manual</TH
57 HREF="posix-clocks-and-timers.html"
65 >Chapter 31. POSIX Standard Support</TD
71 HREF="posix-thread-management.html"
85 NAME="POSIX-MESSAGE-PASSING">Message Passing [POSIX Section 15]</H1
91 NAME="AEN13246">Functions Implemented</H2
100 >mqd_t mq_open( const char *name, int oflag, ... );
101 int mq_close( mqd_t mqdes );
102 int mq_unlink( const char *name );
103 int mq_send( mqd_t mqdes, const char *msg_ptr,
104 size_t msg_len, unsigned int msg_prio );
105 ssize_t mq_receive( mqd_t mqdes, char *msg_ptr,
106 size_t msg_len, unsigned int *msg_prio );
107 int mq_setattr( mqd_t mqdes, const struct mq_attr *mqstat,
108 struct mq_attr *omqstat );
109 int mq_getattr( mqd_t mqdes, struct mq_attr *mqstat );
110 int mq_notify( mqd_t mqdes, const struct sigevent *notification );</PRE
115 >From POSIX 1003.1d draft: </P
124 >int mq_send( mqd_t mqdes, const char *msg_ptr,
125 size_t msg_len, unsigned int msg_prio,
126 const struct timespec *abs_timeout );
127 ssize_t mq_receive( mqd_t mqdes, char *msg_ptr,
128 size_t msg_len, unsigned int *msg_prio,
129 const struct timespec *abs_timeout );</PRE
139 NAME="AEN13251">Functions Omitted</H2
148 NAME="AEN13254">Notes</H2
154 > The presence of message queues is controlled by the
155 CYGPKG_POSIX_MQUEUES option. Setting this will
156 cause [_POSIX_MESSAGE_PASSING] to
157 be defined and the message queue API to be made available.
162 > Message queues are not currently filesystem objects. They live in
163 their own name and descriptor spaces.
174 SUMMARY="Footer navigation table"
185 HREF="posix-clocks-and-timers.html"
203 HREF="posix-thread-management.html"
213 >Clocks and Timers [POSIX Section 14]</TD
219 HREF="posix-standard-support.html"
227 >Thread Management [POSIX Section 16]</TD