|
|
1.1 ! root 1: /* @(#)ipc.h 6.1 */ ! 2: /* Common IPC Access Structure */ ! 3: ! 4: typedef long key_t; ! 5: ! 6: struct ipc_perm { ! 7: u_short uid; /* owner's user id */ ! 8: u_short gid; /* owner's group id */ ! 9: u_short cuid; /* creator's user id */ ! 10: u_short cgid; /* creator's group id */ ! 11: u_short mode; /* access modes */ ! 12: u_short seq; /* slot usage sequence number */ ! 13: key_t key; /* key */ ! 14: u_char flag; /* status flag */ ! 15: }; ! 16: ! 17: /* Common IPC Definitions. */ ! 18: /* Mode bits. */ ! 19: #define IPC_ALLOC 0x8000 /* entry currently allocated */ ! 20: #define IPC_CREAT 0x0200 /* create entry if key doesn't exist */ ! 21: #define IPC_EXCL 0x0400 /* fail if key exists */ ! 22: #define IPC_NOWAIT 0x0800 /* error if request must wait */ ! 23: ! 24: /* Keys. */ ! 25: #define IPC_PRIVATE (key_t)0 /* private key */ ! 26: ! 27: /* Control Commands. */ ! 28: #define IPC_RMID 0 /* remove identifier */ ! 29: #define IPC_SET 1 /* set options */ ! 30: #define IPC_STAT 2 /* get options */ ! 31: ! 32: /* Defines for locking */ ! 33: ! 34: #define IPC_LOCK 0x01 /* ipc_perm structure is locked */ ! 35: #define IPC_WANT 0x02 /* want to lock ipc_perm structure */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.