1 /**************************************************************************** 2 **************************************************************************** 3 *** 4 *** This header was automatically generated from a Linux kernel header 5 *** of the same name, to make information necessary for userspace to 6 *** call into the kernel available to libc. It contains only constants, 7 *** structures, and macros generated from the original header, and thus, 8 *** contains no copyrightable information. 9 *** 10 **************************************************************************** 11 ****************************************************************************/ 12 #ifndef _LINUX_MSG_H 13 #define _LINUX_MSG_H 14 15 #include <linux/ipc.h> 16 17 #define MSG_STAT 11 18 #define MSG_INFO 12 19 20 #define MSG_NOERROR 010000 21 #define MSG_EXCEPT 020000 22 23 struct msqid_ds { 24 struct ipc_perm msg_perm; 25 struct msg *msg_first; 26 struct msg *msg_last; 27 __kernel_time_t msg_stime; 28 __kernel_time_t msg_rtime; 29 __kernel_time_t msg_ctime; 30 unsigned long msg_lcbytes; 31 unsigned long msg_lqbytes; 32 unsigned short msg_cbytes; 33 unsigned short msg_qnum; 34 unsigned short msg_qbytes; 35 __kernel_ipc_pid_t msg_lspid; 36 __kernel_ipc_pid_t msg_lrpid; 37 }; 38 39 #include <asm/msgbuf.h> 40 41 struct msgbuf { 42 long mtype; 43 char mtext[1]; 44 }; 45 46 struct msginfo { 47 int msgpool; 48 int msgmap; 49 int msgmax; 50 int msgmnb; 51 int msgmni; 52 int msgssz; 53 int msgtql; 54 unsigned short msgseg; 55 }; 56 57 #define MSGMNI 16 58 #define MSGMAX 8192 59 #define MSGMNB 16384 60 61 #define MSGPOOL (MSGMNI*MSGMNB/1024) 62 #define MSGTQL MSGMNB 63 #define MSGMAP MSGMNB 64 #define MSGSSZ 16 65 #define __MSGSEG ((MSGPOOL*1024)/ MSGSSZ) 66 #define MSGSEG (__MSGSEG <= 0xffff ? __MSGSEG : 0xffff) 67 68 #endif 69