1 /* stat.h 4.4 82/04/19 */ 2 3 struct stat 4 { 5 dev_t st_dev; 6 ino_t st_ino; 7 unsigned short st_mode; 8 short st_nlink; 9 short st_uid; 10 short st_gid; 11 dev_t st_rdev; 12 off_t st_size; 13 time_t st_atime; 14 time_t st_mtime; 15 time_t st_ctime; 16 long st_blksize; 17 }; 18 19 #define S_IFMT 0170000 /* type of file */ 20 #define S_IFDIR 0040000 /* directory */ 21 #define S_IFCHR 0020000 /* character special */ 22 #define S_IFBLK 0060000 /* block special */ 23 #define S_IFREG 0100000 /* regular */ 24 #define S_IFLNK 0120000 /* symbolic link */ 25 #define S_ISUID 0004000 /* set user id on execution */ 26 #define S_ISGID 0002000 /* set group id on execution */ 27 #define S_ISVTX 0001000 /* save swapped text even after use */ 28 #define S_IREAD 0000400 /* read permission, owner */ 29 #define S_IWRITE 0000200 /* write permission, owner */ 30 #define S_IEXEC 0000100 /* execute/search permission, owner */ 31