16#ifndef LIEF_COFF_AUXILIARY_SEC_DEF_H
17#define LIEF_COFF_AUXILIARY_SEC_DEF_H
32 LIEF_LOCAL static std::unique_ptr<AuxiliarySectionDefinition>
39 uint16_t nb_lines, uint32_t
checksum,
58 std::unique_ptr<AuxiliarySymbol>
clone()
const override {
59 return std::unique_ptr<AuxiliarySectionDefinition>(
155 uint32_t length_ = 0;
156 uint16_t nb_relocs_ = 0;
157 uint16_t nb_lines_ = 0;
158 uint32_t checksum_ = 0;
159 uint32_t sec_idx_ = 0;
161 uint8_t reserved_ = 0;
AuxiliarySectionDefinition & operator=(const AuxiliarySectionDefinition &)=default
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:125
AuxiliarySectionDefinition()
Definition AuxiliarySectionDefinition.hpp:35
static std::unique_ptr< AuxiliarySectionDefinition > parse(const std::vector< uint8_t > &payload)
static bool classof(const AuxiliarySymbol *sym)
Definition AuxiliarySectionDefinition.hpp:148
uint32_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:131
uint32_t length() const
The size of section data. The same as SizeOfRawData in the section header.
Definition AuxiliarySectionDefinition.hpp:109
COMDAT_SELECTION
Values for the AuxiliarySectionDefinition::selection attribute.
Definition AuxiliarySectionDefinition.hpp:68
@ NONE
Definition AuxiliarySectionDefinition.hpp:69
AuxiliarySectionDefinition & operator=(AuxiliarySectionDefinition &&)=default
uint16_t nb_line_numbers() const
The number of line-number entries for the section.
Definition AuxiliarySectionDefinition.hpp:119
COMDAT_SELECTION selection() const
The COMDAT selection number. This is applicable if the section is a COMDAT section.
Definition AuxiliarySectionDefinition.hpp:137
~AuxiliarySectionDefinition() override=default
AuxiliarySectionDefinition(AuxiliarySectionDefinition &&)=default
uint8_t reserved() const
Reserved value (should be 0).
Definition AuxiliarySectionDefinition.hpp:142
std::unique_ptr< AuxiliarySymbol > clone() const override
Definition AuxiliarySectionDefinition.hpp:58
AuxiliarySectionDefinition(const AuxiliarySectionDefinition &)=default
AuxiliarySectionDefinition(uint32_t length, uint16_t nb_relocs, uint16_t nb_lines, uint32_t checksum, uint32_t sec_idx, uint8_t selection, uint8_t reserved)
Definition AuxiliarySectionDefinition.hpp:38
std::string to_string() const override
uint16_t nb_relocs() const
The number of relocation entries for the section.
Definition AuxiliarySectionDefinition.hpp:114
span< const uint8_t > payload() const
For unknown type only, return the raw representation of this symbol.
Definition AuxiliarySymbol.hpp:81
AuxiliarySymbol()=default
TYPE type() const
Definition AuxiliarySymbol.hpp:76
TYPE
Type discriminator for the subclasses.
Definition AuxiliarySymbol.hpp:56
@ SEC_DEF
Auxiliary Format 5: Section Definitions from the PE-COFF documentation.
Definition AuxiliarySymbol.hpp:68
Definition AuxiliarySymbol.hpp:29
const char * to_string(AuxiliarySectionDefinition::COMDAT_SELECTION e)
LIEF namespace.
Definition Abstract/Binary.hpp:40
#define LIEF_API
Definition visibility.h:43
#define LIEF_LOCAL
Definition visibility.h:44