Annotation of coherent/f/usr/include.78/sys/stat.h, revision 1.1

1.1     ! root        1: /* (-lgl
        !             2:  *     COHERENT Version 4.1.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/sys/stat.h
        !             8:  * Stat.
        !             9:  */
        !            10: 
        !            11: #ifndef        __SYS_STAT_H__
        !            12: #define        __SYS_STAT_H__
        !            13: 
        !            14: #include <sys/types.h>
        !            15: 
        !            16: /*
        !            17:  * Structure returned by stat and fstat system calls.
        !            18:  */
        !            19: struct stat {
        !            20:        dev_t    st_dev;                /* Device       */
        !            21:        ino_t    st_ino;                /* Inode number */
        !            22:        unsigned short st_mode;         /* Mode         */
        !            23:        short    st_nlink;              /* Link count   */
        !            24:        short    st_uid;                /* User id      */
        !            25:        short    st_gid;                /* Group id     */
        !            26:        dev_t    st_rdev;               /* Real device  */
        !            27:        fsize_t  st_size;               /* Size         */
        !            28:        time_t   st_atime;              /* Access time  */
        !            29:        time_t   st_mtime;              /* Modify time  */
        !            30:        time_t   st_ctime;              /* Change time  */
        !            31: };
        !            32: 
        !            33: /*
        !            34:  * Modes.
        !            35:  */
        !            36: #define        S_IFMT          0xF000          /* Type                         */
        !            37: #define        S_IFDIR         0x4000          /* Directory                    */
        !            38: #define        S_IFCHR         0x2000          /* Character special            */
        !            39: #define        S_IFPIP         0x1000          /* Pipe                         */
        !            40: #define        S_IFIFO         S_IFPIP         /* Pipe                         */
        !            41: #define        S_IFBLK         0x6000          /* Block special                */
        !            42: #define        S_IFREG         0x8000          /* Regular                      */
        !            43: #define        S_IFSOCK        0xC000          /* Socket -- UNIMPLEMENTED      */
        !            44: #define        S_IFMPC         0x3000          /* Multiplexed character special */
        !            45: #define        S_IFMPB         0x7000          /* Multiplexed block special    */
        !            46: 
        !            47: #define        S_ISUID         0x0800          /* Set user id on execution     */
        !            48: #define        S_ISGID         0x0400          /* Set group id on execution    */
        !            49: #define        S_ISVTX         0x0200          /* Save swapped text even after use */
        !            50: 
        !            51: #define        S_IREAD         0400            /* Read permission, owner       */
        !            52: #define        S_IWRITE        0200            /* Write permission, owner      */
        !            53: #define        S_IEXEC         0100            /* Execute/search permission, owner */
        !            54: #define        S_IRWXU         0700            /* RWX permission, owner        */
        !            55: #define        S_IRUSR         S_IREAD         /* Read permission, owner       */
        !            56: #define        S_IWUSR         S_IWRITE        /* Write permission, owner      */
        !            57: #define        S_IXUSR         S_IEXEC         /* Execute/search permission, owner */
        !            58: #define        S_IRWXG         0070            /* RWX permission, group        */
        !            59: #define        S_IRGRP         0040            /* Read permission, group       */
        !            60: #define        S_IWGRP         0020            /* Write permission, group      */
        !            61: #define        S_IXGRP         0010            /* Execute/search permission, group */
        !            62: #define        S_IRWXO         0007            /* RWX permission, other        */
        !            63: #define        S_IROTH         0004            /* Read permission, other       */
        !            64: #define        S_IWOTH         0002            /* Write permission, other      */
        !            65: #define        S_IXOTH         0001            /* Execute/search permission, other */
        !            66: 
        !            67: /* Mode test macros. */
        !            68: #define        S_ISFIFO(mode)  (((mode)&S_IFMT) == S_IFIFO)
        !            69: #define        S_ISCHR(mode)   (((mode)&S_IFMT) == S_IFCHR)
        !            70: #define        S_ISDIR(mode)   (((mode)&S_IFMT) == S_IFDIR)
        !            71: #define        S_ISBLK(mode)   (((mode)&S_IFMT) == S_IFBLK)
        !            72: #define        S_ISREG(mode)   (((mode)&S_IFMT) == S_IFREG)
        !            73: #define        S_ISSOCK(mode)  (((mode)&S_IFMT) == S_IFSOCK)
        !            74: 
        !            75: /*
        !            76:  * Nonexistent device.
        !            77:  * Must compare correctly with dev_t, which is an unsigned short.
        !            78:  */
        !            79: #define NODEV  ((dev_t)-1)
        !            80: 
        !            81: /*
        !            82:  * Functions.
        !            83:  */
        !            84: #define        major(dev)      ((dev>>8) & 0xFF)
        !            85: #define minor(dev)     (dev & 0xFF)
        !            86: #define makedev(m1, m2)        ((m1<<8)|m2)
        !            87: 
        !            88: #endif
        !            89: 
        !            90: /* end of sys/stat.h */

unix.superglobalmegacorp.com

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