Class which parses and transforms an ELF file into a ELF::Binary object.
More...
#include <Parser.hpp>
|
enum | ELF_TYPE { ELF_UNKNOWN
, ELF32
, ELF64
} |
|
|
static constexpr uint32_t | NB_MAX_SYMBOLS = 1000000 |
|
static constexpr uint32_t | DELTA_NB_SYMBOLS = 3000 |
|
static constexpr uint32_t | NB_MAX_BUCKETS = NB_MAX_SYMBOLS |
|
static constexpr uint32_t | NB_MAX_CHAINS = 1000000 |
|
static constexpr uint32_t | NB_MAX_SEGMENTS = 10000 |
|
static constexpr uint32_t | NB_MAX_RELOCATIONS = 3000000 |
|
static constexpr uint32_t | NB_MAX_DYNAMIC_ENTRIES = 1000 |
|
static constexpr uint32_t | NB_MAX_MASKWORD = 512 |
|
static constexpr uint32_t | MAX_SEGMENT_SIZE = 3_GB |
|
Class which parses and transforms an ELF file into a ELF::Binary object.
◆ parse() [1/3]
Parse an ELF file and return a LIEF::ELF::Binary object.
For weird binaries (e.g. sectionless) you can choose which method to use for counting dynamic symbols
- Parameters
-
[in] | file | Path to the ELF binary |
[in] | conf | Optional configuration for the parser |
- Returns
- LIEF::ELF::Binary as a
unique_ptr
◆ parse() [2/3]
Parse the given raw data as an ELF binary and return a LIEF::ELF::Binary object.
For weird binaries (e.g. sectionless) you can choose which method use to count dynamic symbols
- Parameters
-
[in] | data | Raw ELF as a std::vector of uint8_t |
[in] | conf | Optional configuration for the parser |
- Returns
- LIEF::ELF::Binary
◆ parse() [3/3]
Parse the ELF binary from the given stream and return a LIEF::ELF::Binary object.
For weird binaries (e.g. sectionless) you can choose which method use to count dynamic symbols
- Parameters
-
[in] | stream | The stream which wraps the ELF binary |
[in] | conf | Optional configuration for the parser |
- Returns
- LIEF::ELF::Binary
The documentation for this class was generated from the following file: