libc/winsup/cygwin/include/sys/file.h

56 lines
1.5 KiB
C

/* This is file FILE.H */
/*
** Copyright (C) 1991 DJ Delorie, 24 Kirsten Ave, Rochester NH 03867-2954
**
** This file is distributed under the terms listed in the document
** "copying.dj", available from DJ Delorie at the address above.
** A copy of "copying.dj" should accompany this file; if not, a copy
** should be available from where this file was obtained. This file
** may not be distributed without a verbatim copy of "copying.dj".
**
** This file is distributed WITHOUT ANY WARRANTY; without even the implied
** warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
*/
/*
* 2003-11-27 Nicholas Wourms <nwourms@netscape.net>:
*
* Include sys/cdefs.h. Add function prototype for flock().
* Add some comments from BSD's header for further clarity.
* (L_SET, L_CURR, L_INCR, L_XTND): Redefine as the macros
* SEEK_SET, SEEK_CUR, SEEK_CUR, & SEEK_END respectively.
* (LOCK_SH,LOCK_EX,LOCK_NB,LOCK_UN): New macros for flock().
*/
#ifndef _FILE_H_
#define _FILE_H_
#include <fcntl.h>
/* Whence values for lseek(); renamed by POSIX 1003.1 */
#define L_SET SEEK_SET
#define L_CURR SEEK_CUR
#define L_INCR SEEK_CUR
#define L_XTND SEEK_END
/* Including <sys/file.h> always defines flock & macros. */
#if __BSD_VISIBLE - 0 == 0
#define LOCK_SH 0x01 /* shared file lock */
#define LOCK_EX 0x02 /* exclusive file lock */
#define LOCK_NB 0x04 /* don't block when locking */
#define LOCK_UN 0x08 /* unlock file */
#ifdef __cplusplus
extern "C"
{
#endif
extern int flock (int, int);
#ifdef __cplusplus
}
#endif
#endif
#endif