pub struct ModuleReader<MM> { /* private fields */ }Implementations§
Source§impl<MM: ReadModuleMemory> ModuleReader<MM>
impl<MM: ReadModuleMemory> ModuleReader<MM>
pub fn new(module_memory: MM) -> Result<ModuleReader<MM>, ModuleReaderError>
Sourcepub fn find_program_note(
&self,
note_type: u32,
note_size: usize,
note_name: &str,
) -> Result<Option<Vec<u8>>, ModuleReaderError>
pub fn find_program_note( &self, note_type: u32, note_size: usize, note_name: &str, ) -> Result<Option<Vec<u8>>, ModuleReaderError>
Find a note referenced by the program headers.
Sourcepub fn soname_from_program_headers(&self) -> Result<String, ModuleReaderError>
pub fn soname_from_program_headers(&self) -> Result<String, ModuleReaderError>
Read the SONAME using program headers to locate dynamic library information.
Sourcepub fn soname_from_sections(&self) -> Result<String, ModuleReaderError>
pub fn soname_from_sections(&self) -> Result<String, ModuleReaderError>
Read the SONAME using section headers to locate dynamic library information.
Sourcepub fn build_id_from_program_headers(
&self,
) -> Result<Vec<u8>, ModuleReaderError>
pub fn build_id_from_program_headers( &self, ) -> Result<Vec<u8>, ModuleReaderError>
Read the build id from a program header note.
Sourcepub fn build_id_from_section(&self) -> Result<Vec<u8>, ModuleReaderError>
pub fn build_id_from_section(&self) -> Result<Vec<u8>, ModuleReaderError>
Read the build id from a notes section.
Sourcepub fn build_id_generate_from_text(&self) -> Result<Vec<u8>, ModuleReaderError>
pub fn build_id_generate_from_text(&self) -> Result<Vec<u8>, ModuleReaderError>
Generate a build id by hashing the first page of the text section.
Auto Trait Implementations§
impl<MM> Freeze for ModuleReader<MM>where
MM: Freeze,
impl<MM> RefUnwindSafe for ModuleReader<MM>where
MM: RefUnwindSafe,
impl<MM> Send for ModuleReader<MM>where
MM: Send,
impl<MM> Sync for ModuleReader<MM>where
MM: Sync,
impl<MM> Unpin for ModuleReader<MM>where
MM: Unpin,
impl<MM> UnsafeUnpin for ModuleReader<MM>where
MM: UnsafeUnpin,
impl<MM> UnwindSafe for ModuleReader<MM>where
MM: UnwindSafe,
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