home *** CD-ROM | disk | FTP | other *** search
- /*
- * $Header: /ax/networking:include/sys/ipc.h:networking 1.1 $
- * $Source: /ax/networking:include/sys/ipc.h: $
- *
- * Copyright (c) 1988 Acorn Computers Ltd., Cambridge, England
- *
- * $Log: ipc.h,v $
- * Revision 1.1 95/01/11 10:19:19 kwelton
- * Initial revision
- *
- * Revision 1.3 88/06/17 20:19:28 beta
- * Acorn Unix initial beta version
- *
- */
- #ifndef _IPC_
- #define _IPC_
-
- /* Common IPC Access Structure */
- struct ipc_perm {
- ushort uid; /* owner's user id */
- ushort gid; /* owner's group id */
- ushort cuid; /* creator's user id */
- ushort cgid; /* creator's group id */
- ushort mode; /* access modes */
- ushort seq; /* slot usage sequence number */
- key_t key; /* key */
- };
-
- /* Common IPC Definitions. */
- /* Mode bits. */
- #define IPC_ALLOC 0100000 /* entry currently allocated */
- #define IPC_CREAT 0001000 /* create entry if key doesn't exist */
- #define IPC_EXCL 0002000 /* fail if key exists */
- #define IPC_NOWAIT 0004000 /* error if request must wait */
- #define IPC_MODEMASK 0000777 /* for mode field of ipc_perm */
- #define IPC_USERMODE 0000600 /* user mode bits */
- #define IPC_GROUPMODE 0000060 /* group mode bits */
- #define IPC_OTHERMODE 0000006 /* other mode bits */
- #define IPC_UREAD 0000400 /* read by user */
- #define IPC_UWRITE 0000200 /* write by user */
- #define IPC_GREAD 0000040 /* read by group */
- #define IPC_GWRITE 0000020 /* write by group */
- #define IPC_OREAD 0000004 /* read by others */
- #define IPC_OWRITE 0000002 /* write by others */
-
- /* Keys. */
- #define IPC_PRIVATE (key_t)0 /* private key */
-
- /* Control Commands. */
- #define IPC_RMID 0 /* remove identifier */
- #define IPC_SET 1 /* set options */
- #define IPC_STAT 2 /* get options */
-
- #endif _IPC_
-
- /* EOF ipc.h */
-