Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/windirstat/ntfs.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/ntfs_file.rs')
-rw-r--r--src/ntfs_file.rs20
1 files changed, 6 insertions, 14 deletions
diff --git a/src/ntfs_file.rs b/src/ntfs_file.rs
index 4caea85..2d28e27 100644
--- a/src/ntfs_file.rs
+++ b/src/ntfs_file.rs
@@ -4,6 +4,7 @@
use crate::attribute::NtfsAttributes;
use crate::error::{NtfsError, Result};
use crate::ntfs::Ntfs;
+use crate::record::RecordHeader;
use binread::io::{Read, Seek, SeekFrom};
use binread::{BinRead, BinReaderExt};
use bitflags::bitflags;
@@ -25,18 +26,9 @@ pub enum KnownNtfsFile {
}
#[allow(unused)]
-#[derive(BinRead)]
-struct NtfsRecordHeader {
- signature: [u8; 4],
- update_sequence_array_offset: u16,
- update_sequence_array_size: u16,
- logfile_sequence_number: u64,
-}
-
-#[allow(unused)]
-#[derive(BinRead)]
-pub(crate) struct NtfsFileRecordHeader {
- record_header: NtfsRecordHeader,
+#[derive(BinRead, Debug)]
+struct FileRecordHeader {
+ record_header: RecordHeader,
sequence_number: u16,
hard_link_count: u16,
first_attribute_offset: u16,
@@ -58,7 +50,7 @@ bitflags! {
pub struct NtfsFile<'n> {
ntfs: &'n Ntfs,
- header: NtfsFileRecordHeader,
+ header: FileRecordHeader,
position: u64,
}
@@ -68,7 +60,7 @@ impl<'n> NtfsFile<'n> {
T: Read + Seek,
{
fs.seek(SeekFrom::Start(position))?;
- let header = fs.read_le::<NtfsFileRecordHeader>()?;
+ let header = fs.read_le::<FileRecordHeader>()?;
let file = Self {
ntfs,