/*	Copyright (c) 1984, 1986, 1987, 1988 AT&T	*/
/*	  All Rights Reserved  	*/

/*	THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF AT&T	*/
/*	The copyright notice above does not evidence any   	*/
/*	actual or intended publication of such source code.	*/

/*	Copyright (c) 1987, 1988 Microsoft Corporation	*/
/*	  All Rights Reserved	*/

/*	This Module contains Proprietary Information of Microsoft  */
/*	Corporation and should be treated as Confidential.	   */

#ident	"@(#)head.sys:sd.h	1.2"

/*
 *	@(#) sd.h 1.3 87/06/22 
 */




/* Shared Data flags */
#define	SD_RDONLY	0x00
#define	SD_WRITE	0x01
#define	SD_CREAT	0x02
#define	SD_UNLOCK	0x04
#define	SD_NOWAIT	0x08

#ifdef INKERNEL

#define	SD_LOCKED	0x10
#define	SD_NTFY		0x20
#define	SD_BTWN		0x40

#define SDI_LOCKED	0x10
#define	SDI_NTFY	0x20
#define SDI_DEST	0x40
#define SDI_CLEAR	0x80


struct sd {                 /* XENIX shared data table */
	struct inode *sd_inode;	/* pointer to inode for segment */
	char 	     *sd_addr;	/* address in this proc's data space */
	char	     *sd_cpaddr;/* version # for local copy */
	char	     sd_flags;	/* describing state of this proc */
	struct sd    *sd_link;	/* ptr to next shared data seg for this proc */
};

extern struct sd sdtab[];	/* the XENIX shared data table itself */

#else

extern char *sdget();

#endif /* INKERNEL */
