diff options
Diffstat (limited to 'src/include/sys/stat.h')
-rw-r--r-- | src/include/sys/stat.h | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/src/include/sys/stat.h b/src/include/sys/stat.h new file mode 100644 index 0000000..41c3840 --- /dev/null +++ b/src/include/sys/stat.h | |||
@@ -0,0 +1,58 @@ | |||
1 | #ifndef _SYS_STAT_H | ||
2 | #define _SYS_STAT_H | ||
3 | |||
4 | #include <sys/types.h> | ||
5 | |||
6 | struct stat { | ||
7 | dev_t st_dev; | ||
8 | ino_t st_ino; | ||
9 | umode_t st_mode; | ||
10 | nlink_t st_nlink; | ||
11 | uid_t st_uid; | ||
12 | gid_t st_gid; | ||
13 | dev_t st_rdev; | ||
14 | off_t st_size; | ||
15 | time_t st_atime; | ||
16 | time_t st_mtime; | ||
17 | time_t st_ctime; | ||
18 | }; | ||
19 | |||
20 | #define S_IFMT 00170000 | ||
21 | #define S_IFREG 0100000 | ||
22 | #define S_IFBLK 0060000 | ||
23 | #define S_IFDIR 0040000 | ||
24 | #define S_IFCHR 0020000 | ||
25 | #define S_IFIFO 0010000 | ||
26 | #define S_ISUID 0004000 | ||
27 | #define S_ISGID 0002000 | ||
28 | #define S_ISVTX 0001000 | ||
29 | |||
30 | #define S_ISREG(m) (((m) & S_IFMT) == S_IFREG) | ||
31 | #define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR) | ||
32 | #define S_ISCHR(m) (((m) & S_IFMT) == S_IFCHR) | ||
33 | #define S_ISBLK(m) (((m) & S_IFMT) == S_IFBLK) | ||
34 | #define S_ISFIFO(m) (((m) & S_IFMT) == S_IFIFO) | ||
35 | |||
36 | #define S_IRWXU 00700 | ||
37 | #define S_IRUSR 00400 | ||
38 | #define S_IWUSR 00200 | ||
39 | #define S_IXUSR 00100 | ||
40 | |||
41 | #define S_IRWXG 00070 | ||
42 | #define S_IRGRP 00040 | ||
43 | #define S_IWGRP 00020 | ||
44 | #define S_IXGRP 00010 | ||
45 | |||
46 | #define S_IRWXO 00007 | ||
47 | #define S_IROTH 00004 | ||
48 | #define S_IWOTH 00002 | ||
49 | #define S_IXOTH 00001 | ||
50 | |||
51 | extern int chmod(const char *_path, mode_t mode); | ||
52 | extern int fstat(int fildes, struct stat *stat_buf); | ||
53 | extern int mkdir(const char *_path, mode_t mode); | ||
54 | extern int mkfifo(const char *_path, mode_t mode); | ||
55 | extern int stat(const char *filename, struct stat *stat_buf); | ||
56 | extern mode_t umask(mode_t mask); | ||
57 | |||
58 | #endif | ||