LIEF: Library to Instrument Executable Formats Version 0.17.0
|
Loading...
Searching...
No Matches
Go to the documentation of this file.
16#ifndef LIEF_PE_AUXILIARY_SEC_DEF_H
17#define LIEF_PE_AUXILIARY_SEC_DEF_H
33 LIEF_LOCAL static std::unique_ptr<AuxiliarySectionDefinition>
34 parse(
const std::vector<uint8_t>& payload);
37 AuxiliarySymbol(AuxiliarySymbol::TYPE::SEC_DEF)
41 uint16_t nb_lines, uint32_t checksum,
42 uint16_t sec_idx, uint8_t selection) :
43 AuxiliarySymbol(AuxiliarySymbol::TYPE::SEC_DEF),
45 nb_relocs_(nb_relocs),
53 AuxiliarySectionDefinition&
operator=(
const AuxiliarySectionDefinition&) =
default;
56 AuxiliarySectionDefinition&
operator=(AuxiliarySectionDefinition&&) =
default;
58 std::unique_ptr<AuxiliarySymbol>
clone()
const override {
59 return std::unique_ptr<AuxiliarySectionDefinition>(
new AuxiliarySectionDefinition{*
this});
97 static bool classof(
const AuxiliarySymbol* sym) {
98 return sym->
type() == AuxiliarySymbol::TYPE::SEC_DEF;
104 uint32_t length_ = 0;
105 uint16_t nb_relocs_ = 0;
106 uint16_t nb_lines_ = 0;
107 uint32_t checksum_ = 0;
108 uint16_t sec_idx_ = 0;
109 uint8_t selection_ = 0;
This auxiliary symbol exposes information about the associated section.
Definition AuxiliarySectionDefinition.hpp:31
uint16_t nb_line_numbers() const
The number of line-number entries for the section.
Definition AuxiliarySectionDefinition.hpp:73
AuxiliarySectionDefinition(const AuxiliarySectionDefinition &)=default
uint16_t section_idx() const
One-based index into the section table for the associated section. This is used when the COMDAT selec...
Definition AuxiliarySectionDefinition.hpp:85
static std::unique_ptr< AuxiliarySectionDefinition > parse(const std::vector< uint8_t > &payload)
uint32_t checksum() const
The checksum for communal data. It is applicable if the IMAGE_SCN_LNK_COMDAT flag is set in the secti...
Definition AuxiliarySectionDefinition.hpp:79
AuxiliarySectionDefinition()
Definition AuxiliarySectionDefinition.hpp:36
AuxiliarySectionDefinition & operator=(const AuxiliarySectionDefinition &)=default
uint16_t nb_relocs() const
The number of relocation entries for the section.
Definition AuxiliarySectionDefinition.hpp:68
AuxiliarySectionDefinition(uint32_t length, uint16_t nb_relocs, uint16_t nb_lines, uint32_t checksum, uint16_t sec_idx, uint8_t selection)
Definition AuxiliarySectionDefinition.hpp:40
AuxiliarySectionDefinition & operator=(AuxiliarySectionDefinition &&)=default
AuxiliarySectionDefinition(AuxiliarySectionDefinition &&)=default
std::unique_ptr< AuxiliarySymbol > clone() const override
Definition AuxiliarySectionDefinition.hpp:58
std::string to_string() const override
static bool classof(const AuxiliarySymbol *sym)
Definition AuxiliarySectionDefinition.hpp:97
~AuxiliarySectionDefinition() override=default
uint32_t length() const
The size of section data. The same as SizeOfRawData in the section header.
Definition AuxiliarySectionDefinition.hpp:63
uint8_t selection() const
The COMDAT selection number. This is applicable if the section is a COMDAT section.
Definition AuxiliarySectionDefinition.hpp:91
Class that represents an auxiliary symbol.
Definition AuxiliarySymbol.hpp:36
TYPE type() const
Definition AuxiliarySymbol.hpp:78
Namespace related to the LIEF's PE module.
Definition Abstract/Header.hpp:32
LIEF namespace.
Definition Abstract/Binary.hpp:36
#define LIEF_API
Definition visibility.h:41
#define LIEF_LOCAL
Definition visibility.h:42