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. */
18 /* Set `ipc_perm' options. */
20 /* Get `ipc_perm' options. */
22 #define IPC_INFO 3 /* See ipcs. */
24 /* Special key values. */
26 #define IPC_PRIVATE ((key_t) 0)
28 /* Data structure used to pass permission information to IPC operations. */
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 */