1 #ifndef _LINUX_IPC_H
2 #define _LINUX_IPC_H
3 #include <linux/types.h>
4
5 typedef int key_t;
6 #define IPC_PRIVATE ((key_t) 0)
7
8 struct ipc_perm
9 {
10 key_t key;
11 ushort uid;
12 ushort gid;
13 ushort cuid;
14 ushort cgid;
15 ushort mode;
16 ushort seq;
17 };
18
19
20
21 #define IPC_CREAT 00001000
22 #define IPC_EXCL 00002000
23 #define IPC_NOWAIT 00004000
24
25
26
27
28
29
30 #define IPC_RMID 0
31 #define IPC_SET 1
32 #define IPC_STAT 2
33 #define IPC_INFO 3
34
35 #ifdef __KERNEL__
36
37
38 #define IPC_UNUSED ((void *) -1)
39 #define IPC_NOID ((void *) -2)
40
41
42
43
44 struct ipc_kludge {
45 struct msgbuf *msgp;
46 long msgtyp;
47 };
48
49 #define SEMOP 1
50 #define SEMGET 2
51 #define SEMCTL 3
52 #define MSGSND 11
53 #define MSGRCV 12
54 #define MSGGET 13
55 #define MSGCTL 14
56 #define SHMAT 21
57 #define SHMDT 22
58 #define SHMGET 23
59 #define SHMCTL 24
60
61 #define IPCCALL(version,op) ((version)<<16 | (op))
62
63 #endif
64
65 #endif
66
67