xref: /aosp_15_r20/external/musl/include/mqueue.h (revision c9945492fdd68bbe62686c5b452b4dc1be3f8453)
1*c9945492SAndroid Build Coastguard Worker #ifndef _MQUEUE_H
2*c9945492SAndroid Build Coastguard Worker #define _MQUEUE_H
3*c9945492SAndroid Build Coastguard Worker #ifdef __cplusplus
4*c9945492SAndroid Build Coastguard Worker extern "C" {
5*c9945492SAndroid Build Coastguard Worker #endif
6*c9945492SAndroid Build Coastguard Worker 
7*c9945492SAndroid Build Coastguard Worker #include <features.h>
8*c9945492SAndroid Build Coastguard Worker 
9*c9945492SAndroid Build Coastguard Worker #define __NEED_size_t
10*c9945492SAndroid Build Coastguard Worker #define __NEED_ssize_t
11*c9945492SAndroid Build Coastguard Worker #define __NEED_pthread_attr_t
12*c9945492SAndroid Build Coastguard Worker #define __NEED_time_t
13*c9945492SAndroid Build Coastguard Worker #define __NEED_struct_timespec
14*c9945492SAndroid Build Coastguard Worker #include <bits/alltypes.h>
15*c9945492SAndroid Build Coastguard Worker 
16*c9945492SAndroid Build Coastguard Worker typedef int mqd_t;
17*c9945492SAndroid Build Coastguard Worker struct mq_attr {
18*c9945492SAndroid Build Coastguard Worker 	long mq_flags, mq_maxmsg, mq_msgsize, mq_curmsgs, __unused[4];
19*c9945492SAndroid Build Coastguard Worker };
20*c9945492SAndroid Build Coastguard Worker struct sigevent;
21*c9945492SAndroid Build Coastguard Worker 
22*c9945492SAndroid Build Coastguard Worker int mq_close(mqd_t);
23*c9945492SAndroid Build Coastguard Worker int mq_getattr(mqd_t, struct mq_attr *);
24*c9945492SAndroid Build Coastguard Worker int mq_notify(mqd_t, const struct sigevent *);
25*c9945492SAndroid Build Coastguard Worker mqd_t mq_open(const char *, int, ...);
26*c9945492SAndroid Build Coastguard Worker ssize_t mq_receive(mqd_t, char *, size_t, unsigned *);
27*c9945492SAndroid Build Coastguard Worker int mq_send(mqd_t, const char *, size_t, unsigned);
28*c9945492SAndroid Build Coastguard Worker int mq_setattr(mqd_t, const struct mq_attr *__restrict, struct mq_attr *__restrict);
29*c9945492SAndroid Build Coastguard Worker ssize_t mq_timedreceive(mqd_t, char *__restrict, size_t, unsigned *__restrict, const struct timespec *__restrict);
30*c9945492SAndroid Build Coastguard Worker int mq_timedsend(mqd_t, const char *, size_t, unsigned, const struct timespec *);
31*c9945492SAndroid Build Coastguard Worker int mq_unlink(const char *);
32*c9945492SAndroid Build Coastguard Worker 
33*c9945492SAndroid Build Coastguard Worker #if _REDIR_TIME64
34*c9945492SAndroid Build Coastguard Worker __REDIR(mq_timedreceive, __mq_timedreceive_time64);
35*c9945492SAndroid Build Coastguard Worker __REDIR(mq_timedsend, __mq_timedsend_time64);
36*c9945492SAndroid Build Coastguard Worker #endif
37*c9945492SAndroid Build Coastguard Worker 
38*c9945492SAndroid Build Coastguard Worker #ifdef __cplusplus
39*c9945492SAndroid Build Coastguard Worker }
40*c9945492SAndroid Build Coastguard Worker #endif
41*c9945492SAndroid Build Coastguard Worker #endif
42