| 1 |
|
| 2 | #ifndef _LINUX_STAT_H
|
| 3 | #define _LINUX_STAT_H
|
| 4 |
|
| 5 |
|
| 6 | #include <asm/stat.h>
|
| 7 | #include <uapi/linux/stat.h>
|
| 8 |
|
| 9 | #define S_IRWXUGO (S_IRWXU|S_IRWXG|S_IRWXO)
|
| 10 | #define S_IALLUGO (S_ISUID|S_ISGID|S_ISVTX|S_IRWXUGO)
|
| 11 | #define S_IRUGO (S_IRUSR|S_IRGRP|S_IROTH)
|
| 12 | #define S_IWUGO (S_IWUSR|S_IWGRP|S_IWOTH)
|
| 13 | #define S_IXUGO (S_IXUSR|S_IXGRP|S_IXOTH)
|
| 14 |
|
| 15 | #define UTIME_NOW ((1l << 30) - 1l)
|
| 16 | #define UTIME_OMIT ((1l << 30) - 2l)
|
| 17 |
|
| 18 | #include <linux/types.h>
|
| 19 | #include <linux/time.h>
|
| 20 | #include <linux/uidgid.h>
|
| 21 |
|
| 22 | struct kstat {
|
| 23 | u32 result_mask;
|
| 24 | umode_t mode;
|
| 25 | unsigned int nlink;
|
| 26 | uint32_t blksize;
|
| 27 | u64 attributes;
|
| 28 | u64 attributes_mask;
|
| 29 | #define KSTAT_ATTR_FS_IOC_FLAGS \
|
| 30 | (STATX_ATTR_COMPRESSED | \
|
| 31 | STATX_ATTR_IMMUTABLE | \
|
| 32 | STATX_ATTR_APPEND | \
|
| 33 | STATX_ATTR_NODUMP | \
|
| 34 | STATX_ATTR_ENCRYPTED | \
|
| 35 | STATX_ATTR_VERITY \
|
| 36 | )
|
| 37 | #define KSTAT_ATTR_VFS_FLAGS \
|
| 38 | (STATX_ATTR_IMMUTABLE | \
|
| 39 | STATX_ATTR_APPEND \
|
| 40 | )
|
| 41 | u64 ino;
|
| 42 | dev_t dev;
|
| 43 | dev_t rdev;
|
| 44 | kuid_t uid;
|
| 45 | kgid_t gid;
|
| 46 | loff_t size;
|
| 47 | struct timespec64 atime;
|
| 48 | struct timespec64 mtime;
|
| 49 | struct timespec64 ctime;
|
| 50 | struct timespec64 btime;
|
| 51 | u64 blocks;
|
| 52 | u64 mnt_id;
|
| 53 | u32 dio_mem_align;
|
| 54 | u32 dio_offset_align;
|
| 55 | u64 change_cookie;
|
| 56 | };
|
| 57 |
|
| 58 |
|
| 59 |
|
| 60 |
|
| 61 | #define STATX_CHANGE_COOKIE 0x40000000U
|
| 62 |
|
| 63 |
|
| 64 | #define STATX_ATTR_CHANGE_MONOTONIC 0x8000000000000000ULL
|
| 65 |
|
| 66 | #endif
|