fcntl.h
001:
002:
003:
004:
005:
006:
007:
008:
009:
010:
011:
012:
013:
014:
015:
016:
017:
018:
019:
020:
021:
022:
023:
024: #ifndef _FCNTL_H
025: #define _FCNTL_H 1
026:
027: #include <features.h>
028:
029:
030: __BEGIN_DECLS
031:
032:
033:
034: #include <bits/fcntl.h>
035:
036:
037: #if defined __USE_XOPEN || defined __USE_XOPEN2K8
038: # include <bits/types.h>
039: # define __need_timespec
040: # include <time.h>
041: # include <bits/stat.h>
042:
043: # define S_IFMT __S_IFMT
044: # define S_IFDIR __S_IFDIR
045: # define S_IFCHR __S_IFCHR
046: # define S_IFBLK __S_IFBLK
047: # define S_IFREG __S_IFREG
048: # ifdef __S_IFIFO
049: # define S_IFIFO __S_IFIFO
050: # endif
051: # ifdef __S_IFLNK
052: # define S_IFLNK __S_IFLNK
053: # endif
054: # if (defined __USE_UNIX98 || defined __USE_XOPEN2K8) && defined __S_IFSOCK
055: # define S_IFSOCK __S_IFSOCK
056: # endif
057:
058:
059:
060: # define S_ISUID __S_ISUID
061: # define S_ISGID __S_ISGID
062:
063: # if defined __USE_BSD || defined __USE_MISC || defined __USE_XOPEN
064:
065: # define S_ISVTX __S_ISVTX
066: # endif
067:
068: # define S_IRUSR __S_IREAD
069: # define S_IWUSR __S_IWRITE
070: # define S_IXUSR __S_IEXEC
071:
072: # define S_IRWXU (__S_IREAD|__S_IWRITE|__S_IEXEC)
073:
074: # define S_IRGRP (S_IRUSR >> 3)
075: # define S_IWGRP (S_IWUSR >> 3)
076: # define S_IXGRP (S_IXUSR >> 3)
077:
078: # define S_IRWXG (S_IRWXU >> 3)
079:
080: # define S_IROTH (S_IRGRP >> 3)
081: # define S_IWOTH (S_IWGRP >> 3)
082: # define S_IXOTH (S_IXGRP >> 3)
083:
084: # define S_IRWXO (S_IRWXG >> 3)
085: #endif
086:
087: #ifdef __USE_MISC
088: # ifndef R_OK
089:
090:
091: # define R_OK 4
092: # define W_OK 2
093: # define X_OK 1
094: # define F_OK 0
095: # endif
096: #endif
097:
098:
099: #if defined __USE_XOPEN || defined __USE_XOPEN2K8
100: # define SEEK_SET 0
101: # define SEEK_CUR 1
102: # define SEEK_END 2
103: #endif
104:
105:
106:
107:
108:
109:
110: extern int fcntl (int __fd, int __cmd, ...);
111:
112:
113:
114:
115:
116:
117:
118: #ifndef __USE_FILE_OFFSET64
119: extern int open (__const char *__file, int __oflag, ...) __nonnull ((1));
120: #else
121: # ifdef __REDIRECT
122: extern int __REDIRECT (open, (__const char *__file, int __oflag, ...), open64)
123: __nonnull ((1));
124: # else
125: # define open open64
126: # endif
127: #endif
128: #ifdef __USE_LARGEFILE64
129: extern int open64 (__const char *__file, int __oflag, ...) __nonnull ((1));
130: #endif
131:
132: #ifdef __USE_ATFILE
133:
134:
135:
136:
137:
138:
139:
140:
141:
142: # ifndef __USE_FILE_OFFSET64
143: extern int openat (int __fd, __const char *__file, int __oflag, ...)
144: __nonnull ((2));
145: # else
146: # ifdef __REDIRECT
147: extern int __REDIRECT (openat, (int __fd, __const char *__file, int __oflag,
148: ...), openat64) __nonnull ((2));
149: # else
150: # define openat openat64
151: # endif
152: # endif
153: # ifdef __USE_LARGEFILE64
154: extern int openat64 (int __fd, __const char *__file, int __oflag, ...)
155: __nonnull ((2));
156: # endif
157: #endif
158:
159:
160:
161:
162:
163:
164: #ifndef __USE_FILE_OFFSET64
165: extern int creat (__const char *__file, __mode_t __mode) __nonnull ((1));
166: #else
167: # ifdef __REDIRECT
168: extern int __REDIRECT (creat, (__const char *__file, __mode_t __mode),
169: creat64) __nonnull ((1));
170: # else
171: # define creat creat64
172: # endif
173: #endif
174: #ifdef __USE_LARGEFILE64
175: extern int creat64 (__const char *__file, __mode_t __mode) __nonnull ((1));
176: #endif
177:
178: #if !defined F_LOCK && (defined __USE_MISC || (defined __USE_XOPEN_EXTENDED \
179: && !defined __USE_POSIX))
180:
181:
182:
183:
184:
185:
186:
187:
188: # define F_ULOCK 0
189: # define F_LOCK 1
190: # define F_TLOCK 2
191: # define F_TEST 3
192:
193: # ifndef __USE_FILE_OFFSET64
194: extern int lockf (int __fd, int __cmd, __off_t __len);
195: # else
196: # ifdef __REDIRECT
197: extern int __REDIRECT (lockf, (int __fd, int __cmd, __off64_t __len), lockf64);
198: # else
199: # define lockf lockf64
200: # endif
201: # endif
202: # ifdef __USE_LARGEFILE64
203: extern int lockf64 (int __fd, int __cmd, __off64_t __len);
204: # endif
205: #endif
206:
207: #ifdef __USE_XOPEN2K
208:
209:
210: # ifndef __USE_FILE_OFFSET64
211: extern int posix_fadvise (int __fd, __off_t __offset, __off_t __len,
212: int __advise) __THROW;
213: # else
214: # ifdef __REDIRECT_NTH
215: extern int __REDIRECT_NTH (posix_fadvise, (int __fd, __off64_t __offset,
216: __off64_t __len, int __advise),
217: posix_fadvise64);
218: # else
219: # define posix_fadvise posix_fadvise64
220: # endif
221: # endif
222: # ifdef __USE_LARGEFILE64
223: extern int posix_fadvise64 (int __fd, __off64_t __offset, __off64_t __len,
224: int __advise) __THROW;
225: # endif
226:
227:
228:
229:
230:
231:
232: # ifndef __USE_FILE_OFFSET64
233: extern int posix_fallocate (int __fd, __off_t __offset, __off_t __len);
234: # else
235: # ifdef __REDIRECT
236: extern int __REDIRECT (posix_fallocate, (int __fd, __off64_t __offset,
237: __off64_t __len),
238: posix_fallocate64);
239: # else
240: # define posix_fallocate posix_fallocate64
241: # endif
242: # endif
243: # ifdef __USE_LARGEFILE64
244: extern int posix_fallocate64 (int __fd, __off64_t __offset, __off64_t __len);
245: # endif
246: #endif
247:
248:
249:
250: #if __USE_FORTIFY_LEVEL > 0 && defined __extern_always_inline \
251: && defined __va_arg_pack_len
252: # include <bits/fcntl2.h>
253: #endif
254:
255: __END_DECLS
256:
257: #endif
258:
for client
18.224.149.242
© Andrew Scott 2006 -
2024,
All Rights Reserved