1 /*** 2 *fcntl.h - file control options used by open() 3 * 4 *Purpose: 5 * This file defines constants for the file control options used 6 * by the _open() function. 7 * [System V] 8 * 9 * [Public] 10 * 11 ****/ 12 13 #ifndef _INC_FCNTL 14 #define _INC_FCNTL 15 16 #define _O_RDONLY 0x0000 /* open for reading only */ 17 #define _O_WRONLY 0x0001 /* open for writing only */ 18 #define _O_RDWR 0x0002 /* open for reading and writing */ 19 #define _O_APPEND 0x0008 /* writes done at eof */ 20 21 #define _O_CREAT 0x0100 /* create and open file */ 22 #define _O_TRUNC 0x0200 /* open and truncate */ 23 #define _O_EXCL 0x0400 /* open only if file doesn't already exist */ 24 25 /* O_TEXT files have <cr><lf> sequences translated to <lf> on read()'s, 26 ** and <lf> sequences translated to <cr><lf> on write()'s 27 */ 28 29 #define _O_TEXT 0x4000 /* file mode is text (translated) */ 30 #define _O_BINARY 0x8000 /* file mode is binary (untranslated) */ 31 32 /* macro to translate the C 2.0 name used to force binary mode for files */ 33 34 #define _O_RAW _O_BINARY 35 36 /* Open handle inherit bit */ 37 38 #define _O_NOINHERIT 0x0080 /* child process doesn't inherit file */ 39 40 /* Temporary file bit - file is deleted when last handle is closed */ 41 42 #define _O_TEMPORARY 0x0040 /* temporary file bit */ 43 44 /* sequential/random access hints */ 45 46 #define _O_SEQUENTIAL 0x0020 /* file access is primarily sequential */ 47 #define _O_RANDOM 0x0010 /* file access is primarily random */ 48 49 #if !__STDC__ || defined(_POSIX_) 50 /* Non-ANSI names for compatibility */ 51 #define O_RDONLY _O_RDONLY 52 #define O_WRONLY _O_WRONLY 53 #define O_RDWR _O_RDWR 54 #define O_APPEND _O_APPEND 55 #define O_CREAT _O_CREAT 56 #define O_TRUNC _O_TRUNC 57 #define O_EXCL _O_EXCL 58 #define O_TEXT _O_TEXT 59 #define O_BINARY _O_BINARY 60 #define O_RAW _O_BINARY 61 #define O_TEMPORARY _O_TEMPORARY 62 #define O_NOINHERIT _O_NOINHERIT 63 #define O_SEQUENTIAL _O_SEQUENTIAL 64 #define O_RANDOM _O_RANDOM 65 #endif /* __STDC__ */ 66 67 #endif /* _INC_FCNTL */ 68