pub struct ExFatForensicFs { /* private fields */ }Expand description
ForensicFs implementation for exFAT volumes.
Implementations§
Trait Implementations§
Source§impl ForensicFs for ExFatForensicFs
impl ForensicFs for ExFatForensicFs
Source§fn read_dir(&mut self, ino: u64) -> FsResult<Vec<FsDirEntry>>
fn read_dir(&mut self, ino: u64) -> FsResult<Vec<FsDirEntry>>
List directory entries for the given inode.
Source§fn lookup(&mut self, parent_ino: u64, name: &[u8]) -> FsResult<Option<u64>>
fn lookup(&mut self, parent_ino: u64, name: &[u8]) -> FsResult<Option<u64>>
Look up a name in a directory, returning the child inode if found.
Source§fn metadata(&mut self, ino: u64) -> FsResult<FsMetadata>
fn metadata(&mut self, ino: u64) -> FsResult<FsMetadata>
Get file/directory metadata for an inode.
Source§fn read_file_range(
&mut self,
ino: u64,
offset: u64,
len: u64,
) -> FsResult<Vec<u8>>
fn read_file_range( &mut self, ino: u64, offset: u64, len: u64, ) -> FsResult<Vec<u8>>
Read a range of bytes from a file.
Source§fn fs_info(&self) -> FsResult<Value>
fn fs_info(&self) -> FsResult<Value>
Get filesystem-specific info as JSON (superblock, volume label, etc.).
Source§fn deleted_inodes(&mut self) -> FsResult<Vec<FsDeletedInode>>
fn deleted_inodes(&mut self) -> FsResult<Vec<FsDeletedInode>>
List deleted inodes.
Source§fn recover_file(&mut self, _ino: u64) -> FsResult<FsRecoveryResult>
fn recover_file(&mut self, _ino: u64) -> FsResult<FsRecoveryResult>
Attempt to recover a deleted file by inode number.
Source§fn timeline(&mut self) -> FsResult<Vec<FsTimelineEvent>>
fn timeline(&mut self) -> FsResult<Vec<FsTimelineEvent>>
Generate a forensic timeline of all filesystem events.
Source§fn unallocated_blocks(&mut self) -> FsResult<Vec<FsBlockRange>>
fn unallocated_blocks(&mut self) -> FsResult<Vec<FsBlockRange>>
Get all unallocated block ranges.
Source§fn read_unallocated(&mut self, _range: &FsBlockRange) -> FsResult<Vec<u8>>
fn read_unallocated(&mut self, _range: &FsBlockRange) -> FsResult<Vec<u8>>
Read raw data from an unallocated block range.
Source§fn journal_transactions(&mut self) -> FsResult<Vec<FsTransaction>>
fn journal_transactions(&mut self) -> FsResult<Vec<FsTransaction>>
List journal transactions.
Source§fn block_size(&self) -> u64
fn block_size(&self) -> u64
The block size of this filesystem.
Auto Trait Implementations§
impl Freeze for ExFatForensicFs
impl RefUnwindSafe for ExFatForensicFs
impl Send for ExFatForensicFs
impl Sync for ExFatForensicFs
impl Unpin for ExFatForensicFs
impl UnsafeUnpin for ExFatForensicFs
impl UnwindSafe for ExFatForensicFs
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more