summaryrefslogtreecommitdiffhomepage
path: root/dev/Kernel/FSKit
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-12-29 09:57:48 +0100
committerAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-12-29 09:57:48 +0100
commit8b7216aaf2dacad7ce67d734d07b047fed8ec01e (patch)
tree7af56dd646a4d12a25024da7ad5e6406ff98f124 /dev/Kernel/FSKit
parent5b1bb6cc086047e99a1d246fd2d337bf76887bd8 (diff)
IMPL: NeFS: Add file lock feature and validation for it.
- It is added to hide files from indexing. - And will be used to hide system files. IMPL: Swap: Add SwapDiskDelegate class, will also work on a swap packet structure. Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'dev/Kernel/FSKit')
-rw-r--r--dev/Kernel/FSKit/NeFS.h16
1 files changed, 12 insertions, 4 deletions
diff --git a/dev/Kernel/FSKit/NeFS.h b/dev/Kernel/FSKit/NeFS.h
index 6d0b6bfe..c33ffaf7 100644
--- a/dev/Kernel/FSKit/NeFS.h
+++ b/dev/Kernel/FSKit/NeFS.h
@@ -131,25 +131,33 @@ enum
kNeFSDriveCount = 7,
};
+enum
+{
+ kNeFSStatusUnlocked,
+ kNeFSStatusLocked,
+ kNeFSStatusError,
+ kNeFSStatusInvalid,
+};
+
/// @brief Catalog type.
struct PACKED NFS_CATALOG_STRUCT final
{
Kernel::Char Name[kNeFSNodeNameLen];
Kernel::Char Mime[kNeFSMimeNameLen];
- /// Catalog status flag.
+ /// Catalog flags.
Kernel::UInt16 Flags;
+ Kernel::UInt16 Status;
/// Custom catalog flags.
Kernel::UInt16 FilkMMFlags;
/// Catalog kind.
Kernel::Int32 Kind;
-
/// Size of the data fork.
Kernel::Lba DataForkSize;
-
/// Size of all resource forks.
Kernel::Lba ResourceForkSize;
+ /// Forks LBA.
Kernel::Lba DataFork;
Kernel::Lba ResourceFork;
@@ -264,7 +272,7 @@ namespace Kernel
_Output Void CloseFork(_Input NFS_FORK_STRUCT* fork);
- _Output NFS_CATALOG_STRUCT* FindCatalog(_Input const Char* catalogName, Lba& outLba);
+ _Output NFS_CATALOG_STRUCT* FindCatalog(_Input const Char* catalogName, Lba& outLba, Bool searchHidden = YES);
_Output NFS_CATALOG_STRUCT* GetCatalog(_Input const Char* name);