#pragma once #ifdef __cplusplus extern "C" { #endif #include <sys/ipc.h> #define __NEED_pid_t #define __NEED_key_t #define __NEED_time_t #define __NEED_size_t #define __NEED_ssize_t #include <bits/alltypes.h> typedef unsigned long msgqnum_t; typedef unsigned long msglen_t; #include <bits/msg.h> #define __msg_cbytes msg_cbytes #define MSG_NOERROR 010000 #define MSG_EXCEPT 020000 #define MSG_STAT 11 #define MSG_INFO 12 struct msginfo { int msgpool, msgmap, msgmax, msgmnb, msgmni, msgssz, msgtql; unsigned short msgseg; }; int msgctl(int, int, struct msqid_ds*); int msgget(key_t, int); ssize_t msgrcv(int, void*, size_t, long, int); int msgsnd(int, const void*, size_t, int); #if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) struct msgbuf { long mtype; char mtext[1]; }; #endif #ifdef __cplusplus } #endif