Annotation of Gnu-Mach/linux/src/include/asm-i386/fcntl.h, revision 1.1.1.1

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

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.