diff options
author | Colin Finck <colin@reactos.org> | 2021-04-19 18:00:33 +0300 |
---|---|---|
committer | Colin Finck <colin@reactos.org> | 2021-04-20 07:53:54 +0300 |
commit | 20e0600072e8e837d9b478cc77871a43a16a446d (patch) | |
tree | 7a5f32ca17196b7a7682276d8af542ba236fde8b /src/structured_values/mod.rs |
Initial implementation of an NTFS filesystem crate, with access to NTFS files, resident attributes, StandardInformation and FileName structures, string and time parsing, with real filesystem tests for all of that.
Diffstat (limited to 'src/structured_values/mod.rs')
-rw-r--r-- | src/structured_values/mod.rs | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/src/structured_values/mod.rs b/src/structured_values/mod.rs new file mode 100644 index 0000000..df4aa90 --- /dev/null +++ b/src/structured_values/mod.rs @@ -0,0 +1,44 @@ +// Copyright 2021 Colin Finck <colin@reactos.org> +// SPDX-License-Identifier: GPL-2.0-or-later + +mod attribute_list; +mod file_name; +mod object_id; +mod security_descriptor; +mod standard_information; +mod volume_information; +mod volume_name; + +pub use attribute_list::*; +pub use file_name::*; +pub use object_id::*; +pub use security_descriptor::*; +pub use standard_information::*; +pub use volume_information::*; +pub use volume_name::*; + +use bitflags::bitflags; + +bitflags! { + pub struct NtfsFileAttributeFlags: u32 { + const READ_ONLY = 0x0001; + const HIDDEN = 0x0002; + const SYSTEM = 0x0004; + const ARCHIVE = 0x0020; + const DEVICE = 0x0040; + const NORMAL = 0x0080; + const TEMPORARY = 0x0100; + const SPARSE_FILE = 0x0200; + const REPARSE_POINT = 0x0400; + const COMPRESSED = 0x0800; + const OFFLINE = 0x1000; + const NOT_CONTENT_INDEXED = 0x2000; + const ENCRYPTED = 0x4000; + } +} + +#[derive(Clone, Debug)] +pub enum NtfsStructuredValue { + StandardInformation(NtfsStandardInformation), + FileName(NtfsFileName), +} |