summaryrefslogtreecommitdiff
path: root/include/libc/libc_stat.h
diff options
context:
space:
mode:
authorbernard <[email protected]>2017-10-15 22:30:05 +0800
committerbernard <[email protected]>2017-10-15 22:30:05 +0800
commitcd215b25455bf06dfeb8885fe4d8f5b30174a8c3 (patch)
treed8fd2bac165526449fb9eccc004d5563374a722d /include/libc/libc_stat.h
parent8bdf993bfc38f9b652a7af60cb071c708ad7dea6 (diff)
[Kernel] header files
1. Remove components.h file; 2. Add libc_* files for standard libc definitions; 3. Add rtdbg.h file for simple debug log; 4. Add single list implementation; 5. Change the 'rt_uint8_t' type of cmd to 'int'.
Diffstat (limited to 'include/libc/libc_stat.h')
-rw-r--r--include/libc/libc_stat.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/include/libc/libc_stat.h b/include/libc/libc_stat.h
new file mode 100644
index 0000000000..1622bedd84
--- /dev/null
+++ b/include/libc/libc_stat.h
@@ -0,0 +1,40 @@
+#ifndef LIBC_STAT_H__
+#define LIBC_STAT_H__
+
+#define S_IFMT 00170000
+#define S_IFSOCK 0140000
+#define S_IFLNK 0120000
+#define S_IFREG 0100000
+#define S_IFBLK 0060000
+#define S_IFDIR 0040000
+#define S_IFCHR 0020000
+#define S_IFIFO 0010000
+#define S_ISUID 0004000
+#define S_ISGID 0002000
+#define S_ISVTX 0001000
+
+#define S_ISLNK(m) (((m) & S_IFMT) == S_IFLNK)
+#define S_ISREG(m) (((m) & S_IFMT) == S_IFREG)
+#define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR)
+#define S_ISCHR(m) (((m) & S_IFMT) == S_IFCHR)
+#define S_ISBLK(m) (((m) & S_IFMT) == S_IFBLK)
+#define S_ISFIFO(m) (((m) & S_IFMT) == S_IFIFO)
+#define S_ISSOCK(m) (((m) & S_IFMT) == S_IFSOCK)
+
+#define S_IRWXU 00700
+#define S_IRUSR 00400
+#define S_IWUSR 00200
+#define S_IXUSR 00100
+
+#define S_IRWXG 00070
+#define S_IRGRP 00040
+#define S_IWGRP 00020
+#define S_IXGRP 00010
+
+#define S_IRWXO 00007
+#define S_IROTH 00004
+#define S_IWOTH 00002
+#define S_IXOTH 00001
+
+#endif
+