Annotation of coherent/f/usr/include/fcntl.h, revision 1.1

1.1     ! root        1: /* (-lgl
        !             2:  *     COHERENT Version 4.0
        !             3:  *     Copyright (c) 1982, 1993 by Mark Williams Company.
        !             4:  *     All rights reserved. May not be copied without permission.
        !             5:  -lgl) */
        !             6: /*
        !             7:  * /usr/include/fcntl.h
        !             8:  * Cf. Intel iBCS2, pp. 6-35, 6-36.
        !             9:  */
        !            10: 
        !            11: #ifndef        __FCNTL_H__
        !            12: #define        __FCNTL_H__
        !            13: 
        !            14: #include <common/feature.h>
        !            15: #include <common/ccompat.h>
        !            16: #include <common/_uid.h>
        !            17: 
        !            18: /*
        !            19:  * Flag values accessible to open () and fcntl ()
        !            20:  * The first three can only be set by open ().
        !            21:  */
        !            22: 
        !            23: #define        O_RDONLY        0x00
        !            24: #define        O_WRONLY        0x01
        !            25: #define        O_RDWR          0x02
        !            26: #define        O_NDELAY        0x04    /* non-blocking i/o                     */
        !            27: #define        O_APPEND        0x08    /* append (writes guaranteed at the end */
        !            28: 
        !            29: #if    _I386
        !            30: 
        !            31: #define O_SYNC         0x10    /* sync on every write                  */
        !            32: #define        O_NONBLOCK      0x80    /* non-blocking i/o                     */
        !            33: 
        !            34: /* Flag values accessible only to 3 argument open (). */
        !            35: 
        !            36: #define        O_CREAT         0x100   /* open with file create (third open arg) */
        !            37: #define        O_TRUNC         0x200   /* open with truncation                 */
        !            38: #define        O_EXCL          0x400   /* exclusive open                       */
        !            39: #define O_NOCTTY       0x800   /* don't assign a controlling tty       */
        !            40: 
        !            41: #endif /* _I386 */
        !            42: 
        !            43: 
        !            44: /* fcntl () requests. */
        !            45: 
        !            46: #define        F_DUPFD         0       /* duplicate file desriptor             */
        !            47: #define        F_GETFD         1       /* get file descriptor flags            */
        !            48: #define        F_SETFD         2       /* set file descriptor flags            */
        !            49: #define        F_GETFL         3       /* get file flags                       */
        !            50: #define        F_SETFL         4       /* set file flags                       */
        !            51: #define        F_GETLK         5       /* return blocking lock                 */
        !            52: #define        F_SETLK         6       /* set or remove lock, return if blocked */
        !            53: #define        F_SETLKW        7       /* set or remove lock, sleep if blocked */
        !            54: 
        !            55: 
        !            56: /* Locking command/return structure. */
        !            57: 
        !            58: struct flock {
        !            59:        short           l_type;         /* F_RDLCK, F_WRLCK, or F_UNLCK */
        !            60:        short           l_whence;       /* SEEK_SET, SEEK_CUR, SEEK_END */
        !            61:        long            l_start;        /* location                     */
        !            62:        long            l_len;          /* 0 is through EOF             */
        !            63:        short           __NON_POSIX (l_sysid);
        !            64:                                        /* system id of lock (GETLK) ?  */
        !            65:        short           l_pid;          /* process id of owner (GETLK)  */
        !            66: };
        !            67: 
        !            68: #if    ! _POSIX_SOURCE
        !            69: 
        !            70: typedef        struct flock    flock_t;
        !            71: 
        !            72: #endif
        !            73: 
        !            74: 
        !            75: /* lock () command types. */
        !            76: 
        !            77: #define        F_RDLCK 1               /* read lock; more than 1 allowed       */
        !            78: #define        F_WRLCK 2               /* write lock; blocks any lock          */
        !            79: #define        F_UNLCK 3               /* unlock                               */
        !            80: 
        !            81: 
        !            82: /* Close on exec bit */
        !            83: 
        !            84: #define        FD_CLOEXEC      1       /* close fd on exec                     */
        !            85: 
        !            86: 
        !            87: __EXTERN_C_BEGIN__
        !            88: 
        !            89: int            creat           __PROTO ((__CONST__ char * _path,
        !            90:                                          __mode_t _mode));
        !            91: int            fcntl           __PROTO ((int _fildes, int _cmd, ...));
        !            92: int            open            __PROTO ((__CONST__ char * _path, int _oflag,
        !            93:                                          ...));
        !            94: 
        !            95: __EXTERN_C_END__
        !            96: 
        !            97: #endif /* ! defined (__FCNTL_H__) */

unix.superglobalmegacorp.com

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