|
|
1.1 root 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
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.