Imported Upstream version 1.1.11
[platform/upstream/cdrkit.git] / include / fctldefs.h
1 /*
2  * This file has been modified for the cdrkit suite.
3  *
4  * The behaviour and appearence of the program code below can differ to a major
5  * extent from the version distributed by the original author(s).
6  *
7  * For details, see Changelog file distributed with the cdrkit package. If you
8  * received this file from another source then ask the distributing person for
9  * a log of modifications.
10  *
11  */
12
13 /* @(#)fctldefs.h       1.13 03/02/23 Copyright 1996 J. Schilling */
14 /*
15  *      Generic header for users of open(), creat() and chmod()
16  *
17  *      Copyright (c) 1996 J. Schilling
18  */
19 /*
20  * This program is free software; you can redistribute it and/or modify
21  * it under the terms of the GNU General Public License version 2
22  * as published by the Free Software Foundation.
23  *
24  * This program is distributed in the hope that it will be useful,
25  * but WITHOUT ANY WARRANTY; without even the implied warranty of
26  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
27  * GNU General Public License for more details.
28  *
29  * You should have received a copy of the GNU General Public License along with
30  * this program; see the file COPYING.  If not, write to the Free Software
31  * Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
32  */
33
34 #ifndef _FCTLDEFS_H
35 #define _FCTLDEFS_H
36
37 #ifndef _MCONFIG_H
38 #include <mconfig.h>
39 #endif
40
41 #ifndef _STATDEFS_H
42 #include <statdefs.h>           /* For 3rd arg of open() and chmod()    */
43 #endif
44
45 #ifndef _INCL_SYS_TYPES_H
46 #include <sys/types.h>          /* Needed for fcntl.h                   */
47 #define _INCL_SYS_TYPES_H
48 #endif
49
50 #ifdef  HAVE_SYS_FILE_H
51 /*
52  * Historical systems with flock() only need sys/file.h
53  */
54 #       ifndef  _INCL_SYS_FILE_H
55 #       include <sys/file.h>
56 #       define  _INCL_SYS_FILE_H
57 #       endif
58 #endif
59 #ifdef  HAVE_FCNTL_H
60 #       ifndef  _INCL_FCNTL_H
61 #       include <fcntl.h>
62 #       define  _INCL_FCNTL_H
63 #endif
64 #endif
65
66 /*
67  * Do not define more than O_RDONLY / O_WRONLY / O_RDWR / O_BINARY
68  * The values may differ.
69  *
70  * O_BINARY is defined here to allow all applications to compile on a non DOS
71  * environment without repeating this definition.
72  */
73 #ifndef O_RDONLY
74 #       define  O_RDONLY        0
75 #endif
76 #ifndef O_WRONLY
77 #       define  O_WRONLY        1
78 #endif
79 #ifndef O_RDWR
80 #       define  O_RDWR          2
81 #endif
82 #ifndef O_BINARY                        /* Only present on DOS or similar */
83 #       define  O_BINARY        0
84 #endif
85 #ifndef O_NDELAY                        /* This is undefined on BeOS :-( */
86 #       define  O_NDELAY        0
87 #endif
88
89 #ifndef O_ACCMODE
90 #define O_ACCMODE               (O_RDONLY|O_WRONLY|O_RDWR)
91 #endif
92
93 #endif  /* _FCTLDEFS_H */