Copyright (C) 1994, Digital Equipment Corp. INTERFACE** <sys/ipc.h> **Uipc ; FROM Ctypes IMPORT char, char_star, long; FROM Utypes IMPORT uid_t, gid_t, mode_t, ushort_t, key_t;
TYPE mtyp_t = long; struct_ipc_perm = RECORD uid: uid_t; (* owner's user id *) gid: gid_t; (* owner's group id *) cuid: uid_t; (* creator's user id *) cgid: gid_t; (* creator's group id *) mode: mode_t; (* access modes *) seq: ushort_t; (* slot usage sequence number *) key: key_t; (* key *) END;--------------------------------------------------------- _XOPEN_SOURCE ---
CONST (* common IPC operation flag definitions *) IPC_CREAT = 8_0001000; (* create entry if key doesn't exist *) IPC_EXCL = 8_0002000; (* fail if key exists *) IPC_NOWAIT = 8_0004000; (* error if request must wait *) (* Keys. *) IPC_PRIVATE : key_t = 0; (* private key *) (* Control Commands. *) IPC_RMID = 0; (* remove identifier *) IPC_SET = 1; (* set options *) IPC_STAT = 2; (* get options *)----------------------------------------------------------- _OSF_SOURCE ---
IPC_ALLOC = 8_0100000; (* entry currently allocated *) IPC_R = 8_0000400; (* read or receive permission *) IPC_W = 8_0000200; (* write or send permission *) <*EXTERNAL*> PROCEDURE ftok (path_name: char_star; project_id: char): key_t; END Uipc.