LIEF: Library to Instrument Executable Formats Version 0.17.0
Loading...
Searching...
No Matches
LIEF::PE::AuxiliarySectionDefinition Class Reference

This auxiliary symbol exposes information about the associated section. More...

#include <AuxiliarySectionDefinition.hpp>

Inheritance diagram for LIEF::PE::AuxiliarySectionDefinition:
Collaboration diagram for LIEF::PE::AuxiliarySectionDefinition:

Public Member Functions

 AuxiliarySectionDefinition ()
 
 AuxiliarySectionDefinition (uint32_t length, uint16_t nb_relocs, uint16_t nb_lines, uint32_t checksum, uint16_t sec_idx, uint8_t selection)
 
 AuxiliarySectionDefinition (const AuxiliarySectionDefinition &)=default
 
AuxiliarySectionDefinitionoperator= (const AuxiliarySectionDefinition &)=default
 
 AuxiliarySectionDefinition (AuxiliarySectionDefinition &&)=default
 
AuxiliarySectionDefinitionoperator= (AuxiliarySectionDefinition &&)=default
 
std::unique_ptr< AuxiliarySymbolclone () const override
 
uint32_t length () const
 The size of section data. The same as SizeOfRawData in the section header.
 
uint16_t nb_relocs () const
 The number of relocation entries for the section.
 
uint16_t nb_line_numbers () const
 The number of line-number entries for the section.
 
uint32_t checksum () const
 The checksum for communal data. It is applicable if the IMAGE_SCN_LNK_COMDAT flag is set in the section header.
 
uint16_t section_idx () const
 One-based index into the section table for the associated section. This is used when the COMDAT selection setting is 5.
 
uint8_t selection () const
 The COMDAT selection number. This is applicable if the section is a COMDAT section.
 
std::string to_string () const override
 
 ~AuxiliarySectionDefinition () override=default
 
- Public Member Functions inherited from LIEF::PE::AuxiliarySymbol
 AuxiliarySymbol ()=default
 
 AuxiliarySymbol (std::vector< uint8_t > payload)
 
 AuxiliarySymbol (const AuxiliarySymbol &)=default
 
AuxiliarySymboloperator= (const AuxiliarySymbol &)=default
 
 AuxiliarySymbol (AuxiliarySymbol &&)=default
 
AuxiliarySymboloperator= (AuxiliarySymbol &&)=default
 
 AuxiliarySymbol (TYPE ty)
 
TYPE type () const
 
span< const uint8_t > payload () const
 For unknown type only, return the raw representation of this symbol.
 
span< uint8_t > payload ()
 
virtual ~AuxiliarySymbol ()=default
 
template<class T >
const Tas () const
 Helper to downcast a AuxiliarySymbol into a concrete implementation.
 

Static Public Member Functions

static std::unique_ptr< AuxiliarySectionDefinitionparse (const std::vector< uint8_t > &payload)
 
static bool classof (const AuxiliarySymbol *sym)
 
- Static Public Member Functions inherited from LIEF::PE::AuxiliarySymbol
static std::unique_ptr< AuxiliarySymbolparse (Symbol &sym, std::vector< uint8_t > payload)
 
static TYPE get_aux_type (const Symbol &sym)
 

Additional Inherited Members

- Public Types inherited from LIEF::PE::AuxiliarySymbol
enum class  TYPE {
  UNKNOWN = 0 , CLR_TOKEN , FUNC_DEF , BF_AND_EF ,
  WEAK_EXTERNAL , FILE , SEC_DEF
}
 Type discriminator for the subclasses. More...
 

Detailed Description

This auxiliary symbol exposes information about the associated section.

It duplicates some information that are provided in the section header

Constructor & Destructor Documentation

◆ AuxiliarySectionDefinition() [1/4]

LIEF::PE::AuxiliarySectionDefinition::AuxiliarySectionDefinition ( )
inline

◆ AuxiliarySectionDefinition() [2/4]

LIEF::PE::AuxiliarySectionDefinition::AuxiliarySectionDefinition ( uint32_t length,
uint16_t nb_relocs,
uint16_t nb_lines,
uint32_t checksum,
uint16_t sec_idx,
uint8_t selection )
inline

◆ AuxiliarySectionDefinition() [3/4]

LIEF::PE::AuxiliarySectionDefinition::AuxiliarySectionDefinition ( const AuxiliarySectionDefinition & )
default

◆ AuxiliarySectionDefinition() [4/4]

LIEF::PE::AuxiliarySectionDefinition::AuxiliarySectionDefinition ( AuxiliarySectionDefinition && )
default

◆ ~AuxiliarySectionDefinition()

LIEF::PE::AuxiliarySectionDefinition::~AuxiliarySectionDefinition ( )
overridedefault

Member Function Documentation

◆ checksum()

uint32_t LIEF::PE::AuxiliarySectionDefinition::checksum ( ) const
inline

The checksum for communal data. It is applicable if the IMAGE_SCN_LNK_COMDAT flag is set in the section header.

◆ classof()

static bool LIEF::PE::AuxiliarySectionDefinition::classof ( const AuxiliarySymbol * sym)
inlinestatic

◆ clone()

std::unique_ptr< AuxiliarySymbol > LIEF::PE::AuxiliarySectionDefinition::clone ( ) const
inlineoverridevirtual

Reimplemented from LIEF::PE::AuxiliarySymbol.

◆ length()

uint32_t LIEF::PE::AuxiliarySectionDefinition::length ( ) const
inline

The size of section data. The same as SizeOfRawData in the section header.

◆ nb_line_numbers()

uint16_t LIEF::PE::AuxiliarySectionDefinition::nb_line_numbers ( ) const
inline

The number of line-number entries for the section.

◆ nb_relocs()

uint16_t LIEF::PE::AuxiliarySectionDefinition::nb_relocs ( ) const
inline

The number of relocation entries for the section.

◆ operator=() [1/2]

AuxiliarySectionDefinition & LIEF::PE::AuxiliarySectionDefinition::operator= ( AuxiliarySectionDefinition && )
default

◆ operator=() [2/2]

AuxiliarySectionDefinition & LIEF::PE::AuxiliarySectionDefinition::operator= ( const AuxiliarySectionDefinition & )
default

◆ parse()

static std::unique_ptr< AuxiliarySectionDefinition > LIEF::PE::AuxiliarySectionDefinition::parse ( const std::vector< uint8_t > & payload)
static

◆ section_idx()

uint16_t LIEF::PE::AuxiliarySectionDefinition::section_idx ( ) const
inline

One-based index into the section table for the associated section. This is used when the COMDAT selection setting is 5.

◆ selection()

uint8_t LIEF::PE::AuxiliarySectionDefinition::selection ( ) const
inline

The COMDAT selection number. This is applicable if the section is a COMDAT section.

◆ to_string()

std::string LIEF::PE::AuxiliarySectionDefinition::to_string ( ) const
overridevirtual

Reimplemented from LIEF::PE::AuxiliarySymbol.


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