Expand description
Pure mapping helpers from the platform-agnostic ForensicFs model onto
Windows filesystem semantics (path components, file attributes, timestamps).
This module is cross-platform on purpose: the Windows mount backend
(fuse_windows, #[cfg(windows)]) is a thin Humble-Object shell over
Dokan’s FFI callbacks, so every testable decision lives here where the
Linux/macOS cargo test job can exercise it. The attribute constants are
the documented Windows ABI values ([MS-FSCC] §2.6 / WinNT.h), so they are
defined once here and reused by the shell rather than pulled from a
Windows-only binding crate.
Constants§
- FILE_
ATTRIBUTE_ DIRECTORY FILE_ATTRIBUTE_DIRECTORY— the handle identifies a directory.- FILE_
ATTRIBUTE_ NORMAL FILE_ATTRIBUTE_NORMAL— no other attributes are set (valid only alone).- FILE_
ATTRIBUTE_ READONLY FILE_ATTRIBUTE_READONLY— the file is read-only.
Functions§
- path_
components - Split a Windows path (
\dir\file, also tolerating/) into its non-empty components, for walkingForensicFs::lookupfrom the root. - split_
path_ stream - Split a Dokan path into its file part and an optional NTFS Alternate Data
Stream name, so a
create_fileon\dir\file:4n6.statusresolves\dir\fileand remembers the4n6.statusstream. - to_
system_ time - Convert a Unix
FsTimestampto aSystemTime(Dokan converts it to a WindowsFILETIMEinternally). - windows_
attributes - Windows file-attribute bits for a
ForensicFsfile type.