/*ident	"@(#)cls4:incl-master/proto-headers/sys/file.h	1.1" */
#usedby bsd2 bsd3 sunos3 sunos4 sunos4.1 alliant svr4

/*******************************************************************************
 
C++ source for the C++ Language System, Release 3.0.  This product
is a new release of the original cfront developed in the computer
science research center of AT&T Bell Laboratories.

Copyright (c) 1991 AT&T and UNIX System Laboratories, Inc.
Copyright (c) 1984, 1989, 1990 AT&T.  All Rights Reserved.

THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE of AT&T and UNIX System
Laboratories, Inc.  The copyright notice above does not evidence
any actual or intended publication of such source code.

*******************************************************************************/
#ifndef __FILE_H
#define __FILE_H

#ifndef __TYPES_H
#include <sys/types.h>
#endif

#os bsd2 bsd3 sunos3 sunos4 sunos4.1 alliant svr4
#hide flock
#hide access
#hide lseek
#endos
#os svr4
#hide getf
#hide closeall
#hide closef
#hide ufalloc
#hide falloc
#hide finit
#hide unfalloc
#hide setf
#hide getpof
#hide setpof
#hide filesearch
#hide fassign
#endos

#expand sys/file.h

extern "C" {
#os bsd2 bsd3 sunos3 sunos4 sunos4.1 alliant
	int flock(int fd, int operation);
	int access(const char*, int);
#endos
#os bsd2 sunos3
	long lseek(int fd, long offset, int whence);
#endos
#os bsd3 sunos4 sunos4.1 alliant
	off_t lseek(int fd, off_t offset, int whence);
#endos
#os svr4
	int getf(int, file_t **);
	void closeall(int);
	int closef(file_t *);
	int ufalloc(int, int *);
	int falloc(struct vnode *, int, file_t **, int *);
	void finit(void);
	void unfalloc(file_t *);
	void setf(int, file_t *);
	char getpof(int);
	void setpof(int, char);
	int filesearch(struct vnode *);
	int fassign(struct vnode **, int, int*);
#endos
}

#endif
