Annotation of coherent/f/usr/include/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:  * Revised Sun Jun 20 1993 for POSIX.1, prototypes     -- NB
        !             9:  */
        !            10: 
        !            11: #ifndef        __SYS_STAT_H__
        !            12: #define        __SYS_STAT_H__
        !            13: 
        !            14: #include <common/ccompat.h>
        !            15: 
        !            16: #if    _POSIX_SOURCE || _DDI_DKI
        !            17: 
        !            18: #include <common/__time.h>
        !            19: #include <common/__off.h>
        !            20: #include <common/_fsize.h>
        !            21: #include <common/_uid.h>
        !            22: 
        !            23: #else
        !            24: 
        !            25: #include <common/_time.h>
        !            26: #include <sys/types.h>
        !            27: 
        !            28: #endif
        !            29: 
        !            30: #include <common/_imode.h>
        !            31: 
        !            32: /*
        !            33:  * Structure returned by stat () and fstat () system calls.
        !            34:  */
        !            35: 
        !            36: struct stat {
        !            37:        __dev_t         st_dev;         /* Device       */
        !            38:        __ino_t         st_ino;         /* Inode number */
        !            39:        __mode_t        st_mode;        /* Mode         */
        !            40:        __nlink_t       st_nlink;       /* Link count   */
        !            41:        __uid_t         st_uid;         /* User id      */
        !            42:        __gid_t         st_gid;         /* Group id     */
        !            43:        __dev_t         __NON_POSIX (st_rdev);
        !            44:                                        /* Real device  */
        !            45:        __off_t         st_size;        /* Size         */
        !            46:        __time_t        st_atime;       /* Access time  */
        !            47:        __time_t        st_mtime;       /* Modify time  */
        !            48:        __time_t        st_ctime;       /* Change time  */
        !            49: };
        !            50: 
        !            51: /*
        !            52:  * Mode macros. Note that the following definitions are required to be
        !            53:  * macros, but are /not/ constrained to be integral constant expressions
        !            54:  * suitable for use in #if-expressions.
        !            55:  */
        !            56: 
        !            57: #define        S_IFMT          __IFMT          /* Type                         */
        !            58: #define        S_IFDIR         __IFDIR         /* Directory                    */
        !            59: #define        S_IFCHR         __IFCHR         /* Character special            */
        !            60: #define        S_IFPIP         __IFPIP         /* Pipe                         */
        !            61: #define        S_IFIFO         __IFFIFO        /* Pipe                         */
        !            62: #define        S_IFBLK         __IFBLK         /* Block special                */
        !            63: #define        S_IFREG         __IFREG         /* Regular                      */
        !            64: 
        !            65: #define        S_IFSOCK        0xC000          /* Socket -- UNIMPLEMENTED      */
        !            66: #define        S_IFMPC         0x3000          /* Multiplexed character special */
        !            67: #define        S_IFMPB         0x7000          /* Multiplexed block special    */
        !            68: 
        !            69: #define        S_ISUID         __ISUID         /* Set user id on execution     */
        !            70: #define        S_ISGID         __ISGID         /* Set group id on execution    */
        !            71: #define        S_ISVTX         __ISVTX         /* Save swapped text even after use */
        !            72: 
        !            73: #define        S_IREAD         __IREAD         /* Read permission, owner       */
        !            74: #define        S_IWRITE        __IWRITE        /* Write permission, owner      */
        !            75: #define        S_IEXEC         __IEXEC         /* Execute/search permission, owner */
        !            76: #define        S_IRWXU         __IRWXU         /* RWX permission, owner        */
        !            77: #define        S_IRUSR         __IRUSR         /* Read permission, owner       */
        !            78: #define        S_IWUSR         __IWUSR         /* Write permission, owner      */
        !            79: #define        S_IXUSR         __IXUSR         /* Execute/search permission, owner */
        !            80: #define        S_IRWXG         __IRWXG         /* RWX permission, group        */
        !            81: #define        S_IRGRP         __IRGRP         /* Read permission, group       */
        !            82: #define        S_IWGRP         __IWGRP         /* Write permission, group      */
        !            83: #define        S_IXGRP         __IXGRP         /* Execute/search permission, group */
        !            84: #define        S_IRWXO         __IRWXO         /* RWX permission, other        */
        !            85: #define        S_IROTH         __IROTH         /* Read permission, other       */
        !            86: #define        S_IWOTH         __IWOTH         /* Write permission, other      */
        !            87: #define        S_IXOTH         __IXOTH         /* Execute/search permission, other */
        !            88: 
        !            89: /* Mode test macros. */
        !            90: 
        !            91: #define        S_ISFIFO(mode)  (((mode) & S_IFMT) == S_IFIFO)
        !            92: #define        S_ISCHR(mode)   (((mode) & S_IFMT) == S_IFCHR)
        !            93: #define        S_ISDIR(mode)   (((mode) & S_IFMT) == S_IFDIR)
        !            94: #define        S_ISBLK(mode)   (((mode) & S_IFMT) == S_IFBLK)
        !            95: #define        S_ISREG(mode)   (((mode) & S_IFMT) == S_IFREG)
        !            96: #define        S_ISSOCK(mode)  (((mode) & S_IFMT) == S_IFSOCK)
        !            97: 
        !            98: __EXTERN_C_BEGIN__
        !            99: 
        !           100: int            chmod           __PROTO ((__CONST__ char * _path,
        !           101:                                          __mode_t _mode));
        !           102: int            mkdir           __PROTO ((__CONST__ char * _path,
        !           103:                                          __mode_t _mode));
        !           104: int            fstat           __PROTO ((int _fildes, struct stat * _buf));
        !           105: int            stat            __PROTO ((__CONST__ char * _path,
        !           106:                                          struct stat * _buf));
        !           107: __mode_t       umask           __PROTO ((__mode_t _mask));
        !           108: 
        !           109: #if 0          /* not supported */
        !           110: int            mkfifo          __PROTO ((__CONST__ char * _path,
        !           111:                                          __mode_t _mode));
        !           112: #endif
        !           113: 
        !           114: __EXTERN_C_END__
        !           115: 
        !           116: 
        !           117: #if    ! _DDI_DKI
        !           118: 
        !           119: /*
        !           120:  * Nonexistent device.
        !           121:  * Must compare correctly with dev_t, which is an unsigned short in the old
        !           122:  * Coherent device-driver system.
        !           123:  */
        !           124: 
        !           125: #ifndef        NODEV
        !           126: # define NODEV         ((__dev_t) -1)
        !           127: #endif
        !           128: 
        !           129: 
        !           130: /*
        !           131:  * Functions.
        !           132:  */
        !           133: #define        major(dev)      (((dev) >> 8) & 0xFF)
        !           134: #define minor(dev)     ((dev) & 0xFF)
        !           135: #define makedev(m1, m2)        ((__dev_t) (((m1) << 8) | (m2)))
        !           136: 
        !           137: #endif /* ! _DDI_DKI */
        !           138: 
        !           139: #endif /* ! defined (__SYS_STAT_H__) */
        !           140: 
        !           141: /* 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.