File:  [Research Unix] / researchv9 / sys.vax / h / file.h
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 17:21:59 2018 UTC (8 years, 1 month ago) by root
Branches: belllabs, MAIN
CVS tags: researchv9-SUN3_old, researchv9-SUN3, HEAD
researchv9-SUN3(old)

/*
 * One file structure is allocated
 * for each open/creat/pipe call.
 * Main use is to hold the read/write
 * pointer associated with each open
 * file.
 */
struct	file
{
	short	f_flag;
	short	f_count;		/* reference count */
	struct inode *f_inode;		/* pointer to inode structure */
	off_t	f_offset;		/* read/write character pointer */
#ifdef	CHAOS
	caddr_t	f_conn;			/* Chaosnet connection pointer */
#endif	CHAOS
};

#ifdef	KERNEL
struct	file *file, *fileNFILE;	/* the file table itself */
int	nfile;

struct	file *getf();
struct	file *falloc();
struct	file *allocfile();

/*
 * inline to speed things up
 */
#define	getf(fd)	((unsigned)(fd)>=NOFILE ? NULL : u.u_ofile[fd])

#endif

/* flags */
#define	FREAD	01
#define	FWRITE	02
#define	FPIPE	04
#define	FHUNGUP 010
#define	FRNBLK	040	/* no block on read */
#define	FWNBLK	0100	/* no block on write */

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.