/*	@(#)ipc.h	13.1 (RC International) 91/02/02	*/

#ifndef _IPC_H
#define _IPC_H

/*	Common IPC Access Structure	*/


struct  ipc_perm        /* ipc permission data structure */
{
    uid_t	uid;	/* owner's user id */
    gid_t	gid;	/* owner's group id */
    uid_t	cuid;	/* creator's user id */
    gid_t	cgid;	/* creator's group id */
    mode_t	mode;	/* access modes */
    u_short	seq;	/* slot usage sequence number */
    key_t	key;	/* key */
};

/*	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 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_H */
