1*cda5da8dSAndroid Build Coastguard Worker #ifndef _SYS_MSG_H 2*cda5da8dSAndroid Build Coastguard Worker #define _SYS_MSG_H 3*cda5da8dSAndroid Build Coastguard Worker 4*cda5da8dSAndroid Build Coastguard Worker #ifdef __cplusplus 5*cda5da8dSAndroid Build Coastguard Worker extern "C" { 6*cda5da8dSAndroid Build Coastguard Worker #endif 7*cda5da8dSAndroid Build Coastguard Worker 8*cda5da8dSAndroid Build Coastguard Worker #include <sys/ipc.h> 9*cda5da8dSAndroid Build Coastguard Worker 10*cda5da8dSAndroid Build Coastguard Worker #define __NEED_pid_t 11*cda5da8dSAndroid Build Coastguard Worker #define __NEED_key_t 12*cda5da8dSAndroid Build Coastguard Worker #define __NEED_time_t 13*cda5da8dSAndroid Build Coastguard Worker #define __NEED_size_t 14*cda5da8dSAndroid Build Coastguard Worker #define __NEED_ssize_t 15*cda5da8dSAndroid Build Coastguard Worker 16*cda5da8dSAndroid Build Coastguard Worker #include <bits/alltypes.h> 17*cda5da8dSAndroid Build Coastguard Worker 18*cda5da8dSAndroid Build Coastguard Worker typedef unsigned long msgqnum_t; 19*cda5da8dSAndroid Build Coastguard Worker typedef unsigned long msglen_t; 20*cda5da8dSAndroid Build Coastguard Worker 21*cda5da8dSAndroid Build Coastguard Worker #include <bits/msg.h> 22*cda5da8dSAndroid Build Coastguard Worker 23*cda5da8dSAndroid Build Coastguard Worker #define __msg_cbytes msg_cbytes 24*cda5da8dSAndroid Build Coastguard Worker 25*cda5da8dSAndroid Build Coastguard Worker #define MSG_NOERROR 010000 26*cda5da8dSAndroid Build Coastguard Worker #define MSG_EXCEPT 020000 27*cda5da8dSAndroid Build Coastguard Worker 28*cda5da8dSAndroid Build Coastguard Worker #define MSG_STAT (11 | (IPC_STAT & 0x100)) 29*cda5da8dSAndroid Build Coastguard Worker #define MSG_INFO 12 30*cda5da8dSAndroid Build Coastguard Worker #define MSG_STAT_ANY (13 | (IPC_STAT & 0x100)) 31*cda5da8dSAndroid Build Coastguard Worker 32*cda5da8dSAndroid Build Coastguard Worker struct msginfo { 33*cda5da8dSAndroid Build Coastguard Worker int msgpool, msgmap, msgmax, msgmnb, msgmni, msgssz, msgtql; 34*cda5da8dSAndroid Build Coastguard Worker unsigned short msgseg; 35*cda5da8dSAndroid Build Coastguard Worker }; 36*cda5da8dSAndroid Build Coastguard Worker 37*cda5da8dSAndroid Build Coastguard Worker int msgctl (int, int, struct msqid_ds *); 38*cda5da8dSAndroid Build Coastguard Worker int msgget (key_t, int); 39*cda5da8dSAndroid Build Coastguard Worker ssize_t msgrcv (int, void *, size_t, long, int); 40*cda5da8dSAndroid Build Coastguard Worker int msgsnd (int, const void *, size_t, int); 41*cda5da8dSAndroid Build Coastguard Worker 42*cda5da8dSAndroid Build Coastguard Worker #if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) 43*cda5da8dSAndroid Build Coastguard Worker struct msgbuf { 44*cda5da8dSAndroid Build Coastguard Worker long mtype; 45*cda5da8dSAndroid Build Coastguard Worker char mtext[1]; 46*cda5da8dSAndroid Build Coastguard Worker }; 47*cda5da8dSAndroid Build Coastguard Worker #endif 48*cda5da8dSAndroid Build Coastguard Worker 49*cda5da8dSAndroid Build Coastguard Worker #ifdef __cplusplus 50*cda5da8dSAndroid Build Coastguard Worker } 51*cda5da8dSAndroid Build Coastguard Worker #endif 52*cda5da8dSAndroid Build Coastguard Worker 53*cda5da8dSAndroid Build Coastguard Worker #endif 54