pub struct RawCfb {
pub major_version: u16,
pub sector_shift: u16,
pub mini_sector_shift: u16,
pub mini_stream_cutoff: u32,
pub byte_order: u16,
pub sector_size: usize,
pub first_difat_sector: u32,
pub num_difat_sectors: u32,
pub fat: Vec<u32>,
pub mini_fat: Vec<u32>,
pub dir_entries: Vec<DirEntry>,
pub file_len: u64,
}Expand description
The decoded shape of a compound file, carrying everything the analyzer needs
that cfb does not surface.
Fields§
§major_version: u16Major version (3 or 4) as read from the header.
sector_shift: u16log2(sector size) from the header.
mini_sector_shift: u16log2(mini-sector size) from the header (normally 6).
mini_stream_cutoff: u32Mini-stream size cutoff (normally 4096).
byte_order: u16Byte-order mark as read (normally 0xFFFE).
sector_size: usizeResolved sector size in bytes (1 << sector_shift, clamped to a sane range).
first_difat_sector: u32First DIFAT sector id from the header.
num_difat_sectors: u32Declared DIFAT sector count from the header.
fat: Vec<u32>The full FAT: one next-SID slot per sector in the file.
mini_fat: Vec<u32>The mini-FAT: one next-mini-SID slot per mini-sector.
dir_entries: Vec<DirEntry>Every directory entry, in array order (live and orphaned alike).
file_len: u64Total file length in bytes.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for RawCfb
impl RefUnwindSafe for RawCfb
impl Send for RawCfb
impl Sync for RawCfb
impl Unpin for RawCfb
impl UnsafeUnpin for RawCfb
impl UnwindSafe for RawCfb
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