LIEF: Library to Instrument Executable Formats Version 1.0.0
Loading...
Searching...
No Matches
LIEF::PE::ParserConfig Struct Reference

This structure is used to configure the behavior of the PE Parser (PE::Parser). More...

#include <ParserConfig.hpp>

Collaboration diagram for LIEF::PE::ParserConfig:

Public Member Functions

std::string to_string () const

Static Public Member Functions

static const ParserConfigdefault_conf ()
 Returns the default configuration for the PE Parser.
static ParserConfig all ()
 Returns a configuration that enables all optional parsing features.

Public Attributes

bool parse_signature = true
 Whether to parse the PE Authenticode signature.
bool parse_exports = true
 Whether to parse the PE Export Directory.
bool parse_imports = true
 Whether to parse the PE Import Directory.
bool parse_rsrc = true
 Whether to parse the PE resources tree.
bool parse_reloc = true
 Whether to parse PE relocations.
bool parse_exceptions = false
 Whether to parse in-depth exception metadata.
bool parse_arm64x_binary = false
 Whether to parse nested ARM64X binaries.
optional< uint64_t > rebase
 If set, this value holds the original image base from which the binary should be rebased. This is used to undo relocations and IAT bindings when parsing a PE loaded in memory.

Detailed Description

This structure is used to configure the behavior of the PE Parser (PE::Parser).

Member Function Documentation

◆ all()

ParserConfig LIEF::PE::ParserConfig::all ( )
inlinestatic

Returns a configuration that enables all optional parsing features.

References parse_arm64x_binary, and parse_exceptions.

◆ default_conf()

◆ to_string()

std::string LIEF::PE::ParserConfig::to_string ( ) const

Referenced by operator<<.

Member Data Documentation

◆ parse_arm64x_binary

bool LIEF::PE::ParserConfig::parse_arm64x_binary = false

Whether to parse nested ARM64X binaries.

This option is disabled by default because it can introduce significant parsing overhead.

Referenced by all().

◆ parse_exceptions

bool LIEF::PE::ParserConfig::parse_exceptions = false

Whether to parse in-depth exception metadata.

This option is disabled by default because it can introduce significant parsing overhead.

Referenced by all().

◆ parse_exports

bool LIEF::PE::ParserConfig::parse_exports = true

Whether to parse the PE Export Directory.

◆ parse_imports

bool LIEF::PE::ParserConfig::parse_imports = true

Whether to parse the PE Import Directory.

◆ parse_reloc

bool LIEF::PE::ParserConfig::parse_reloc = true

Whether to parse PE relocations.

◆ parse_rsrc

bool LIEF::PE::ParserConfig::parse_rsrc = true

Whether to parse the PE resources tree.

◆ parse_signature

bool LIEF::PE::ParserConfig::parse_signature = true

Whether to parse the PE Authenticode signature.

◆ rebase

optional<uint64_t> LIEF::PE::ParserConfig::rebase

If set, this value holds the original image base from which the binary should be rebased. This is used to undo relocations and IAT bindings when parsing a PE loaded in memory.


The documentation for this struct was generated from the following file: