diff options
| author | Amlal <amlal.elmahrouss@icloud.com> | 2025-02-24 20:49:30 +0100 |
|---|---|---|
| committer | Amlal <amlal.elmahrouss@icloud.com> | 2025-02-24 20:49:30 +0100 |
| commit | a69dc6b982be67156ba4273b37a87c9e03a54b2c (patch) | |
| tree | 6e6c84c58d06a663bb23c3a3d8be36ed9cc51197 /dev/Kernel/FSKit | |
| parent | 9ff5f391e7d7630c3b03faeba34696efa47f37a7 (diff) | |
IMPL: NeFS doesn't store full path now in catalog name.
IMPL: HPFS defining data structures.
META: Ran format command for project.
Signed-off-by: Amlal <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'dev/Kernel/FSKit')
| -rw-r--r-- | dev/Kernel/FSKit/HPFS.h | 19 | ||||
| -rw-r--r-- | dev/Kernel/FSKit/IndexableProperty.h | 6 | ||||
| -rw-r--r-- | dev/Kernel/FSKit/NeFS.h | 16 |
3 files changed, 29 insertions, 12 deletions
diff --git a/dev/Kernel/FSKit/HPFS.h b/dev/Kernel/FSKit/HPFS.h index 9e2a3e36..ef1b4ad0 100644 --- a/dev/Kernel/FSKit/HPFS.h +++ b/dev/Kernel/FSKit/HPFS.h @@ -11,9 +11,12 @@ /// @file HPFS.h
/// @brief HPFS filesystem support.
-#define kHPFSVersion 0x0100
+#define kHPFSVersion (0x0100)
#define kHPFSMagic " HPFS"
-#define kHPFSMagicLen 8
+#define kHPFSMagicLen (8)
+
+#define kHPFSFileNameLen (255)
+#define kHPFSPartNameLen (255)
#define kHPFSMinimumDiskSize (gib_cast(64))
@@ -32,6 +35,7 @@ struct HPFS_BOOT_NODE; struct HPFS_BOOT_NODE final
{
NeOS::Char fMagic[kHPFSMagicLen];
+ NeOS::Char fPartName[kHPFSPartNameLen];
NeOS::UInt32 fVersion;
NeOS::UInt64 fBadSectors;
NeOS::UInt64 fSectorCount;
@@ -41,4 +45,15 @@ struct HPFS_BOOT_NODE final NeOS::UInt8 fTextEncoding;
NeOS::UInt64 fRootINode;
NeOS::UInt64 fRecoveryINode;
+};
+
+struct HPFS_INDEX_NODE
+{
+ NeOS::Char fName[kHPFSFileNameLen];
+ NeOS::UInt32 fFlags;
+ NeOS::UInt16 fKind;
+ NeOS::UInt32 fSize;
+ NeOS::Lba fFirstINode;
+ NeOS::Lba fLastINode;
+ NeOS::UInt32 fChecksum;
};
\ No newline at end of file diff --git a/dev/Kernel/FSKit/IndexableProperty.h b/dev/Kernel/FSKit/IndexableProperty.h index a942cc7c..091f4c9b 100644 --- a/dev/Kernel/FSKit/IndexableProperty.h +++ b/dev/Kernel/FSKit/IndexableProperty.h @@ -10,8 +10,8 @@ #include <CompilerKit/CompilerKit.h> #include <KernelKit/DriveMgr.h> -#define kIndexerNodeNameLength 255 -#define kIndexerClaimed 0xCF +#define kIndexerCatalogNameLength 255 +#define kIndexerClaimed 0xCF namespace NeOS { @@ -21,7 +21,7 @@ namespace NeOS { public: Char Drive[kDriveNameLen]; - Char Path[kIndexerNodeNameLength]; + Char Path[kIndexerCatalogNameLength]; }; class IndexableProperty final : public Property diff --git a/dev/Kernel/FSKit/NeFS.h b/dev/Kernel/FSKit/NeFS.h index 19123a4c..0383c234 100644 --- a/dev/Kernel/FSKit/NeFS.h +++ b/dev/Kernel/FSKit/NeFS.h @@ -29,7 +29,7 @@ default. #define kNeFSInvalidFork (-1) #define kNeFSInvalidCatalog (-1) -#define kNeFSNodeNameLen (256) +#define kNeFSCatalogNameLen (256) #define kNeFSMinimumDiskSize (gib_cast(4)) @@ -142,8 +142,8 @@ struct PACKED NEFS_CATALOG_STRUCT final { BOOL ForkOrCatalog : 1 {0}; - NeOS::Char Name[kNeFSNodeNameLen] = {0}; - NeOS::Char Mime[kNeFSMimeNameLen] = {0}; + NeOS::Char Name[kNeFSCatalogNameLen] = {0}; + NeOS::Char Mime[kNeFSMimeNameLen] = {0}; /// Catalog flags. NeOS::UInt16 Flags; @@ -167,13 +167,15 @@ struct PACKED NEFS_CATALOG_STRUCT final NeOS::Lba DataFork; NeOS::Lba ResourceFork; - /// Tree allocation tracker. + /// Buddy allocation tracker. NeOS::Lba NextSibling; NeOS::Lba PrevSibling; /// Best-buddy tracker. NeOS::Lba NextBestSibling; NeOS::Lba NextPrevSibling; + + NeOS::UInt32 Checksum; }; /// @brief Fork type, contains a data page. @@ -184,8 +186,8 @@ struct PACKED NEFS_FORK_STRUCT final { BOOL ForkOrCatalog : 1 {1}; - NeOS::Char ForkName[kNeFSForkNameLen] = {0}; - NeOS::Char CatalogName[kNeFSNodeNameLen] = {0}; + NeOS::Char ForkName[kNeFSForkNameLen] = {0}; + NeOS::Char CatalogName[kNeFSCatalogNameLen] = {0}; NeOS::Int32 Flags; NeOS::Int32 Kind; @@ -433,7 +435,7 @@ namespace NeOS } private: - Char mStamp[kNeFSNodeNameLen] = {"/etc/xml/journal" kNeFSJournalExt}; + Char mStamp[kNeFSCatalogNameLen] = {"/etc/xml/journal" kNeFSJournalExt}; }; namespace NeFS |
