summaryrefslogtreecommitdiffstats
path: root/sw/z80/kernel/include/stat.h
diff options
context:
space:
mode:
authorleleraffa97@hotmail.it <leleraffa97@hotmail.it>2017-08-31 16:56:06 +0200
committerleleraffa97@hotmail.it <leleraffa97@hotmail.it>2017-08-31 16:56:06 +0200
commitaa1eb39e9266c51082ed2d8744e97ad674b6496c (patch)
tree0dfbead4937804b8154f98ee3864b24e9e024260 /sw/z80/kernel/include/stat.h
parenttime to inode (diff)
downloadz80uPC-aa1eb39e9266c51082ed2d8744e97ad674b6496c.tar.gz
z80uPC-aa1eb39e9266c51082ed2d8744e97ad674b6496c.zip
File system interface
Basic file system implementation Path resolution work in progress
Diffstat (limited to '')
-rw-r--r--sw/z80/kernel/include/stat.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/sw/z80/kernel/include/stat.h b/sw/z80/kernel/include/stat.h
new file mode 100644
index 0000000..cc5a7bf
--- /dev/null
+++ b/sw/z80/kernel/include/stat.h
@@ -0,0 +1,24 @@
+#ifndef STAT_H
+#define STAT_H
+
+struct stat
+{
+ dev_t dev; /* device id */
+ ino_t inumber; /* inode number inside the volume */
+
+ uint mode :3; /* mode */
+ uint uid :3; /* owner id */
+ uint type :2; /* file, dir or link */
+
+ devsize_t size; /* file size */
+
+ size_t blk_size; /* single block size */
+ size_t blk_used; /* blocks used by the file */
+
+ time_t ctime; /* creation time */
+}
+
+struct stat * stat(const char *path, struct stat *buffer);
+struct stat * lstat(const char *link, struct stat *buffer);
+
+#endif