summaryrefslogtreecommitdiffhomepage
path: root/dev/kernel/FSKit/HeFS.h
diff options
context:
space:
mode:
authorAmlal <amlal@nekernel.org>2025-04-26 13:44:35 +0200
committerAmlal <amlal@nekernel.org>2025-04-26 13:44:35 +0200
commit9c33e844d76f9db6d7110de4f05cbe2084cdbca1 (patch)
tree9875059712c6e819ae9a3dbbccda7ba105708326 /dev/kernel/FSKit/HeFS.h
parenta02a39e77abf2a71bcd023c33c63d405ef1c3081 (diff)
dev, kernel and user: codebase additions and work in progress 'tactical pause'
why? - HeFS's Formating needs some thought before being layed out, that's the kind of thing that bites hard in the ass. - Alongside those changes I improved parts of the kernel too. Signed-off-by: Amlal <amlal@nekernel.org>
Diffstat (limited to 'dev/kernel/FSKit/HeFS.h')
-rw-r--r--dev/kernel/FSKit/HeFS.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/dev/kernel/FSKit/HeFS.h b/dev/kernel/FSKit/HeFS.h
index 895422a6..693ec2d3 100644
--- a/dev/kernel/FSKit/HeFS.h
+++ b/dev/kernel/FSKit/HeFS.h
@@ -28,6 +28,9 @@
#define kHeFSDefaultVoluneName u"HeFS Volume"
+#define kHeFSDIMBootDir u"boot-x/dir"
+#define kHeFSDIMBootFile u"boot-x/file"
+
#define kHeFSSearchAllStr u"*"
struct HEFS_BOOT_NODE;
@@ -63,6 +66,7 @@ enum {
kHeFSEncodingUTF32LE,
kHeFSEncodingUTF8BE,
kHeFSEncodingUTF8LE,
+ kHeFSEncodingBinary,
kHeFSEncodingCount,
};
@@ -135,6 +139,10 @@ struct PACKED ALIGN(8) HEFS_INDEX_NODE final {
fLinkChecksum; /// @brief Checksum of the file, recovery checksum, block checksum, link
/// checksum.
+ Kernel::Utf16Char fMime[kHeFSFileNameLen]; /// @brief File mime type.
+
+ Kernel::Boolean fSymLink; /// @brief Is this a symbolic link? (if yes, the fName is the path to the file and blocklinkstart and end contains it's inodes.)
+
Kernel::ATime fCreated, fAccessed, fModified, fDeleted; /// @brief File timestamps.
Kernel::UInt32 fUID, fGID; /// @brief User ID and Group ID of the file.
Kernel::UInt32 fMode; /// @brief File mode. (read, write, execute, etc).
@@ -168,6 +176,8 @@ struct PACKED ALIGN(8) HEFS_INDEX_NODE_DIRECTORY final {
Kernel::UInt32 fChecksum,
fIndexNodeChecksum; /// @brief Checksum of the file, index node checksum.
+ Kernel::Utf16Char fDim[kHeFSFileNameLen]; /// @brief Directiory Immatriculation magic.
+
Kernel::ATime fCreated, fAccessed, fModified, fDeleted; /// @brief File timestamps and allocation status.
Kernel::UInt32 fUID, fGID; /// @brief User ID and Group ID of the file.
Kernel::UInt32 fMode; /// @brief File mode. (read, write, execute, etc).