123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208 |
- #ifndef _FCNTL_H
- # error "Never use <bits/fcntl.h> directly; include <fcntl.h> instead."
- #endif
- #include <sys/types.h>
- #include <bits/wordsize.h>
- #define O_RDONLY 0x0000
- #define O_WRONLY 0x0001
- #define O_RDWR 0x0002
- #define O_ACCMODE 0x0003
- #define O_APPEND 0x0008
- #define O_ASYNC 0x0040
- #define O_CREAT 0x0200
- #define O_TRUNC 0x0400
- #define O_EXCL 0x0800
- #define O_SYNC 0x2000
- #define O_NONBLOCK 0x4000
- #define O_NDELAY (0x0004 | O_NONBLOCK)
- #define O_NOCTTY 0x8000
- #ifdef __USE_GNU
- # define O_DIRECTORY 0x10000
- # define O_NOFOLLOW 0x20000
- # define O_DIRECT 0x100000
- # define O_NOATIME 0x200000
- #endif
- #ifdef __USE_LARGEFILE64
- # if __WORDSIZE == 64
- # define O_LARGEFILE 0
- # else
- # define O_LARGEFILE 0x40000
- # endif
- #endif
- #if defined __USE_POSIX199309 || defined __USE_UNIX98
- # define O_DSYNC O_SYNC
- # define O_RSYNC O_SYNC
- #endif
- #if defined __USE_POSIX199309 || defined __USE_UNIX98
- # define O_DSYNC O_SYNC
- # define O_RSYNC O_SYNC
- #endif
- #define F_DUPFD 0
- #define F_GETFD 1
- #define F_SETFD 2
- #define F_GETFL 3
- #define F_SETFL 4
- #if defined __USE_BSD || defined __USE_UNIX98
- # define F_GETOWN 5
- # define F_SETOWN 6
- #endif
- #ifndef __USE_FILE_OFFSET64
- # define F_GETLK 7
- # define F_SETLK 8
- # define F_SETLKW 9
- #else
- # define F_GETLK F_GETLK64
- # define F_SETLK F_SETLK64
- # define F_SETLKW F_SETLKW64
- #endif
- #ifdef __USE_GNU
- # define F_SETSIG 10
- # define F_GETSIG 11
- #endif
- #ifdef __USE_GNU
- # define F_SETLEASE 1024
- # define F_GETLEASE 1025
- # define F_NOTIFY 1026
- #endif
- #if __WORDSIZE == 64
- # define F_GETLK64 7
- # define F_SETLK64 8
- # define F_SETLKW64 9
- #else
- # define F_GETLK64 12
- # define F_SETLK64 13
- # define F_SETLKW64 14
- #endif
- #define FD_CLOEXEC 1
- #define F_RDLCK 1
- #define F_WRLCK 2
- #define F_UNLCK 3
- #define F_EXLCK 4
- #define F_SHLCK 8
- #ifdef __USE_BSD
- # define LOCK_SH 1
- # define LOCK_EX 2
- # define LOCK_NB 4
- # define LOCK_UN 8
- #endif
- #ifdef __USE_GNU
- # define LOCK_MAND 32
- # define LOCK_READ 64
- # define LOCK_WRITE 128
- # define LOCK_RW 192
- #endif
- #ifdef __USE_GNU
- # define DN_ACCESS 0x00000001
- # define DN_MODIFY 0x00000002
- # define DN_CREATE 0x00000004
- # define DN_DELETE 0x00000008
- # define DN_RENAME 0x00000010
- # define DN_ATTRIB 0x00000020
- # define DN_MULTISHOT 0x80000000
- #endif
- struct flock
- {
- short int l_type;
- short int l_whence;
- #ifndef __USE_FILE_OFFSET64
- __off_t l_start;
- __off_t l_len;
- #else
- __off64_t l_start;
- __off64_t l_len;
- #endif
- __pid_t l_pid;
- short int __unused;
- };
- #ifdef __USE_LARGEFILE64
- struct flock64
- {
- short int l_type;
- short int l_whence;
- __off64_t l_start;
- __off64_t l_len;
- __pid_t l_pid;
- short int __unused;
- };
- #endif
- #ifdef __USE_BSD
- # define FAPPEND O_APPEND
- # define FFSYNC O_FSYNC
- # define FASYNC O_ASYNC
- # define FNONBLOCK O_NONBLOCK
- # define FNDELAY O_NDELAY
- #endif
- #ifdef __USE_XOPEN2K
- # define POSIX_FADV_NORMAL 0
- # define POSIX_FADV_RANDOM 1
- # define POSIX_FADV_SEQUENTIAL 2
- # define POSIX_FADV_WILLNEED 3
- # define POSIX_FADV_DONTNEED 4
- # define POSIX_FADV_NOREUSE 5
- #endif
- __BEGIN_DECLS
- extern ssize_t readahead (int __fd, __off64_t __offset, size_t __count)
- __THROW;
- __END_DECLS
|