Struct falcon::loader::Elf
[−]
[src]
pub struct Elf { /* fields omitted */ }
Loader for a single ELf file.
Methods
impl Elf
[src]
fn new(bytes: Vec<u8>, base_address: u64) -> Result<Elf>
[src]
Create a new Elf from the given bytes. This Elf will be rebased to the given base address.
fn base_address(&self) -> u64
[src]
Get the base address of this Elf where it has been loaded into loader memory.
fn from_file_with_base_address(
filename: &Path,
base_address: u64
) -> Result<Elf>
[src]
filename: &Path,
base_address: u64
) -> Result<Elf>
Load an Elf from a file and use the given base address.
fn from_file(filename: &Path) -> Result<Elf>
[src]
Load an elf from a file and use the base address of 0.
fn add_user_function(&mut self, address: u64)
[src]
Allow the user to manually specify a function entry
fn dt_needed(&self) -> Result<Vec<String>>
[src]
Return the strings from the DT_NEEDED entries.
Trait Implementations
impl Clone for Elf
[src]
fn clone(&self) -> Elf
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl Debug for Elf
[src]
impl Loader for Elf
[src]
fn memory(&self) -> Result<Memory>
[src]
Get a model of the memory contained in the binary
fn function_entries(&self) -> Result<Vec<FunctionEntry>>
[src]
Get addresses for known function entries
fn program_entry(&self) -> u64
[src]
The address program execution should begin at
fn architecture(&self) -> Result<Architecture>
[src]
Get the architecture of the binary
fn function(&self, address: u64) -> Result<Function>
[src]
Lift just one function from the executable
fn program(&self) -> Result<Program>
[src]
Lift executable into an il::Program