|
|
1.1 ! root 1: #ifndef _I386_FCNTL_H ! 2: #define _I386_FCNTL_H ! 3: ! 4: /* open/fcntl - O_SYNC is only implemented on blocks devices and on files ! 5: located on an ext2 file system */ ! 6: #define O_ACCMODE 0003 ! 7: #define O_RDONLY 00 ! 8: #define O_WRONLY 01 ! 9: #define O_RDWR 02 ! 10: #define O_CREAT 0100 /* not fcntl */ ! 11: #define O_EXCL 0200 /* not fcntl */ ! 12: #define O_NOCTTY 0400 /* not fcntl */ ! 13: #define O_TRUNC 01000 /* not fcntl */ ! 14: #define O_APPEND 02000 ! 15: #define O_NONBLOCK 04000 ! 16: #define O_NDELAY O_NONBLOCK ! 17: #define O_SYNC 010000 ! 18: #define FASYNC 020000 /* fcntl, for BSD compatibility */ ! 19: ! 20: #define F_DUPFD 0 /* dup */ ! 21: #define F_GETFD 1 /* get f_flags */ ! 22: #define F_SETFD 2 /* set f_flags */ ! 23: #define F_GETFL 3 /* more flags (cloexec) */ ! 24: #define F_SETFL 4 ! 25: #define F_GETLK 5 ! 26: #define F_SETLK 6 ! 27: #define F_SETLKW 7 ! 28: ! 29: #define F_SETOWN 8 /* for sockets. */ ! 30: #define F_GETOWN 9 /* for sockets. */ ! 31: ! 32: /* for F_[GET|SET]FL */ ! 33: #define FD_CLOEXEC 1 /* actually anything with low bit set goes */ ! 34: ! 35: /* for posix fcntl() and lockf() */ ! 36: #define F_RDLCK 0 ! 37: #define F_WRLCK 1 ! 38: #define F_UNLCK 2 ! 39: ! 40: /* for old implementation of bsd flock () */ ! 41: #define F_EXLCK 4 /* or 3 */ ! 42: #define F_SHLCK 8 /* or 4 */ ! 43: ! 44: /* operations for bsd flock(), also used by the kernel implementation */ ! 45: #define LOCK_SH 1 /* shared lock */ ! 46: #define LOCK_EX 2 /* exclusive lock */ ! 47: #define LOCK_NB 4 /* or'd with one of the above to prevent ! 48: blocking */ ! 49: #define LOCK_UN 8 /* remove lock */ ! 50: ! 51: struct flock { ! 52: short l_type; ! 53: short l_whence; ! 54: off_t l_start; ! 55: off_t l_len; ! 56: pid_t l_pid; ! 57: }; ! 58: ! 59: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.