Module elf

Module elf 

Expand description

Module for the ELF file format support in LIEF.

The Binary structure exposes the main API to inspect an ELF file. It can be instantiated, using either: crate::elf::parse, crate::elf::Binary::parse or crate::Binary::parse

let elf = lief::elf::parse("/bin/ls").unwrap();
for section in elf.sections() {
    println!("section: {}", section.name());
}

Modules§

binary
builder
dynamic
hash
header
note
parser_config
relocation
section
segment
symbol
symbol_versioning

Structs§

Binary
This is the main interface to read and write ELF binary attributes.
GnuHash
Structure that wraps the GNU-hash implementation
Header
Class which represents the ELF’s header. This class mirrors the raw ELF Elfxx_Ehdr structure
ParserConfig
This structure is used to tweak the ELF parser: crate::elf::Binary::parse_with_config
Relocation
Structure which reprents an ELF relocation
Section
Structure wich represents an ELF Section
Segment
Structure which reprents an ELF segment
Symbol
Structure which reprents an ELF symbol
SymbolVersion
Structure which represents an entry defined in the DT_VERSYM dynamic entry
SymbolVersionAux
SymbolVersionAuxRequirement
SymbolVersionDefinition
Structure which represents an entry defined in DT_VERDEF or .gnu.version_d
SymbolVersionRequirement
Structure which represents an entry in the DT_VERNEED or .gnu.version_r table
SysvHash
This structure wraps the sysv-hash info

Enums§

DynamicEntries
Enum that represents the different variants of a dynamic entry
Notes
The different notes recognized and supported by LIEF

Functions§

parse
Parse an ELF file from the given file path
parse_with_config
Parse an ELF file from the given file path and configuration