make includes fix from trunk
[minix.git] / include / sys / ipc.h
blobd66ace307617f7ed2e5bfbf35cad030e42a70442
1 #ifndef _SYS_IPC_H
2 #define _SYS_IPC_H
4 /* For gid_t, uid_t */
5 #include <sys/types.h>
7 /* Mode bits for `msgget', `semget', and `shmget'. */
8 /* Create key if key does not exist. */
9 #define IPC_CREAT 01000
10 /* Fail if key exists. */
11 #define IPC_EXCL 02000
12 /* Return error on wait. */
13 #define IPC_NOWAIT 04000
15 /* Control commands for `msgctl', `semctl', and `shmctl'. */
16 /* Remove identifier. */
17 #define IPC_RMID 0
18 /* Set `ipc_perm' options. */
19 #define IPC_SET 1
20 /* Get `ipc_perm' options. */
21 #define IPC_STAT 2
22 #define IPC_INFO 3 /* See ipcs. */
24 /* Special key values. */
25 /* Private key. */
26 #define IPC_PRIVATE ((key_t) 0)
28 /* Data structure used to pass permission information to IPC operations. */
29 struct ipc_perm
31 key_t key; /* Key. */
32 uid_t uid; /* Owner's user ID. */
33 gid_t gid; /* Owner's group ID. */
34 uid_t cuid; /* Creator's user ID. */
35 gid_t cgid; /* Creator's group ID. */
36 unsigned short int mode; /* Reader/write permission. */
37 unsigned short int __seq; /* Sequence number. */
40 _PROTOTYPE( key_t ftok, (const char *__path, int __id));
42 #endif /* _SYS_IPC_H */