00001
00002
00003
00004
00005
00006 #ifndef _STAT_H
00007 #define _STAT_H
00008
00009 #ifndef _TYPES_H
00010 #include <sys/types.h>
00011 #endif
00012
00013 struct stat {
00014 dev_t st_dev;
00015 ino_t st_ino;
00016 mode_t st_mode;
00017 short int st_nlink;
00018 uid_t st_uid;
00019 short int st_gid;
00020 dev_t st_rdev;
00021 off_t st_size;
00022 time_t st_atime;
00023 time_t st_mtime;
00024 time_t st_ctime;
00025 };
00026
00027
00028 #define S_IFMT 0170000
00029 #define S_IFLNK 0120000
00030 #define S_IFREG 0100000
00031 #define S_IFBLK 0060000
00032 #define S_IFDIR 0040000
00033 #define S_IFCHR 0020000
00034 #define S_IFIFO 0010000
00035 #define S_ISUID 0004000
00036 #define S_ISGID 0002000
00037
00038 #define S_ISVTX 01000
00039
00040
00041 #define S_IRWXU 00700
00042 #define S_IRUSR 00400
00043 #define S_IWUSR 00200
00044 #define S_IXUSR 00100
00045
00046 #define S_IRWXG 00070
00047 #define S_IRGRP 00040
00048 #define S_IWGRP 00020
00049 #define S_IXGRP 00010
00050
00051 #define S_IRWXO 00007
00052 #define S_IROTH 00004
00053 #define S_IWOTH 00002
00054 #define S_IXOTH 00001
00055
00056
00057 #define S_IEXEC S_IXUSR
00058 #define S_IWRITE S_IWUSR
00059 #define S_IREAD S_IRUSR
00060
00061
00062 #define S_ISREG(m) (((m) & S_IFMT) == S_IFREG)
00063 #define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR)
00064 #define S_ISCHR(m) (((m) & S_IFMT) == S_IFCHR)
00065 #define S_ISBLK(m) (((m) & S_IFMT) == S_IFBLK)
00066 #define S_ISLNK(m) (((m) & S_IFMT) == S_IFLNK)
00067 #define S_ISFIFO(m) (((m) & S_IFMT) == S_IFIFO)
00068
00069
00070 _PROTOTYPE( int chmod, (const char *_path, _mnx_Mode_t _mode) );
00071 _PROTOTYPE( int fstat, (int _fildes, struct stat *_buf) );
00072 _PROTOTYPE( int mkdir, (const char *_path, _mnx_Mode_t _mode) );
00073 _PROTOTYPE( int mkfifo, (const char *_path, _mnx_Mode_t _mode) );
00074 _PROTOTYPE( int stat, (const char *_path, struct stat *_buf) );
00075 _PROTOTYPE( mode_t umask, (_mnx_Mode_t _cmask) );
00076
00077
00078 _PROTOTYPE( int lstat, (const char *_path, struct stat *_buf) );
00079
00080 #endif