Struct goblin::pe::section_table::SectionTable
source · #[repr(C)]pub struct SectionTable {
pub name: [u8; 8],
pub real_name: Option<String>,
pub virtual_size: u32,
pub virtual_address: u32,
pub size_of_raw_data: u32,
pub pointer_to_raw_data: u32,
pub pointer_to_relocations: u32,
pub pointer_to_linenumbers: u32,
pub number_of_relocations: u16,
pub number_of_linenumbers: u16,
pub characteristics: u32,
}
Fields§
§name: [u8; 8]
§real_name: Option<String>
§virtual_size: u32
§virtual_address: u32
§size_of_raw_data: u32
§pointer_to_raw_data: u32
§pointer_to_relocations: u32
§pointer_to_linenumbers: u32
§number_of_relocations: u16
§number_of_linenumbers: u16
§characteristics: u32
Implementations§
source§impl SectionTable
impl SectionTable
pub fn parse( bytes: &[u8], offset: &mut usize, string_table_offset: usize ) -> Result<Self>
pub fn data<'a, 'b: 'a>( &'a self, pe_bytes: &'b [u8] ) -> Result<Option<Cow<'_, [u8]>>>
pub fn name_offset(&self) -> Result<Option<usize>>
pub fn set_name_offset(&mut self, idx: usize) -> Result<()>
pub fn name(&self) -> Result<&str>
pub fn relocations<'a>(&self, bytes: &'a [u8]) -> Result<Relocations<'a>>
sourcepub fn overlaps_with(&self, another_section: &SectionTable) -> bool
pub fn overlaps_with(&self, another_section: &SectionTable) -> bool
Tests if another_section
on-disk ranges will collide.
Trait Implementations§
source§impl Clone for SectionTable
impl Clone for SectionTable
source§fn clone(&self) -> SectionTable
fn clone(&self) -> SectionTable
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for SectionTable
impl Debug for SectionTable
source§impl Default for SectionTable
impl Default for SectionTable
source§fn default() -> SectionTable
fn default() -> SectionTable
Returns the “default value” for a type. Read more
source§impl IntoCtx<Endian> for &SectionTable
impl IntoCtx<Endian> for &SectionTable
source§impl PartialEq for SectionTable
impl PartialEq for SectionTable
source§fn eq(&self, other: &SectionTable) -> bool
fn eq(&self, other: &SectionTable) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.source§impl TryIntoCtx<Endian> for &SectionTable
impl TryIntoCtx<Endian> for &SectionTable
impl StructuralPartialEq for SectionTable
Auto Trait Implementations§
impl Freeze for SectionTable
impl RefUnwindSafe for SectionTable
impl Send for SectionTable
impl Sync for SectionTable
impl Unpin for SectionTable
impl UnwindSafe for SectionTable
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