V7/usr/sys/h/file.h
/*
* 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
{
char f_flag;
char f_count; /* reference count */
struct inode *f_inode; /* pointer to inode structure */
union {
off_t f_offset; /* read/write character pointer */
struct chan *f_chan; /* mpx channel pointer */
} f_un;
};
extern struct file file[]; /* The file table itself */
/* flags */
#define FREAD 01
#define FWRITE 02
#define FPIPE 04
#define FMPX 010
#define FMPY 020
#define FMP 030
#define FKERNEL 040