LIEF: Library to Instrument Executable Formats Version 0.15.1
|
CodeView PDB specialization. More...
#include <CodeViewPDB.hpp>
Public Types | |
using | signature_t = std::array<uint8_t, 16> |
Public Types inherited from LIEF::PE::CodeView | |
enum class | SIGNATURES { UNKNOWN = 0 , PDB_70 = 0x53445352 , PDB_20 = 0x3031424e , CV_50 = 0x3131424e , CV_41 = 0x3930424e } |
Code view signatures. More... | |
Public Types inherited from LIEF::PE::Debug | |
enum class | TYPES { UNKNOWN = 0 , COFF = 1 , CODEVIEW = 2 , FPO = 3 , MISC = 4 , EXCEPTION = 5 , FIXUP = 6 , OMAP_TO_SRC = 7 , OMAP_FROM_SRC = 8 , BORLAND = 9 , RESERVED10 = 10 , CLSID = 11 , VC_FEATURE = 12 , POGO = 13 , ILTCG = 14 , MPX = 15 , REPRO = 16 , EX_DLLCHARACTERISTICS = 20 } |
The entry types. More... | |
Public Types inherited from LIEF::Object | |
template<class T > | |
using | output_t = add_pointer_t<decay_t<T>> |
template<class T > | |
using | output_const_t = add_pointer_t<add_const_t<decay_t<T>>> |
Public Member Functions | |
CodeViewPDB ()=default | |
CodeViewPDB (const details::pe_debug &debug_info, const details::pe_pdb_70 &pdb_70) | |
CodeViewPDB (const CodeViewPDB &other)=default | |
CodeViewPDB & | operator= (const CodeViewPDB &other)=default |
std::string | guid () const |
The GUID signature to verify against the .pdb file signature. This attribute might be used to lookup remote PDB file on a symbol server. | |
uint32_t | age () const |
Age value to verify. The age does not necessarily correspond to any known time value, it is used to determine if a .pdb file is out of sync with a corresponding .exe file. | |
const signature_t & | signature () const |
The 32-bit signature to verify against the .pdb file signature. | |
const std::string & | filename () const |
The path to the .pdb file. | |
void | age (uint32_t age) |
void | signature (const signature_t &sig) |
void | filename (std::string filename) |
std::unique_ptr< Debug > | clone () const override |
void | accept (Visitor &visitor) const override |
~CodeViewPDB () override=default | |
Public Member Functions inherited from LIEF::PE::CodeView | |
CodeView () | |
CodeView (SIGNATURES sig) | |
CodeView (const details::pe_debug &debug, SIGNATURES sig) | |
CodeView (const CodeView &other)=default | |
CodeView & | operator= (const CodeView &other)=default |
~CodeView () override=default | |
SIGNATURES | signature () const |
The signature that defines the underlying type of the payload. | |
Public Member Functions inherited from LIEF::PE::Debug | |
Debug ()=default | |
Debug (TYPES type) | |
Debug (const details::pe_debug &debug_s) | |
Debug (const Debug &other)=default | |
Debug & | operator= (const Debug &other)=default |
~Debug () override=default | |
uint32_t | characteristics () const |
Reserved should be 0. | |
uint32_t | timestamp () const |
The time and date when the debug data was created. | |
uint16_t | major_version () const |
The major version number of the debug data format. | |
uint16_t | minor_version () const |
The minor version number of the debug data format. | |
TYPES | type () const |
The format DEBUG_TYPES of the debugging information. | |
uint32_t | sizeof_data () const |
Size of the debug data. | |
uint32_t | addressof_rawdata () const |
Address of the debug data relative to the image base. | |
uint32_t | pointerto_rawdata () const |
File offset of the debug data. | |
void | characteristics (uint32_t characteristics) |
void | timestamp (uint32_t timestamp) |
void | major_version (uint16_t major_version) |
void | minor_version (uint16_t minor_version) |
void | sizeof_data (uint32_t sizeof_data) |
void | addressof_rawdata (uint32_t addressof_rawdata) |
void | pointerto_rawdata (uint32_t pointerto_rawdata) |
void | accept (Visitor &visitor) const override |
Public Member Functions inherited from LIEF::Object | |
Object () | |
Object (const Object &other) | |
Object & | operator= (const Object &other) |
template<class T > | |
output_t< T > | as () |
template<class T > | |
output_const_t< T > | as () const |
virtual bool | operator== (const Object &other) const |
virtual bool | operator!= (const Object &other) const |
virtual | ~Object () |
Static Public Member Functions | |
static bool | classof (const Debug *debug) |
Static Public Member Functions inherited from LIEF::PE::CodeView | |
static bool | classof (const Debug *debug) |
CodeView PDB specialization.
using LIEF::PE::CodeViewPDB::signature_t = std::array<uint8_t, 16> |
|
default |
LIEF::PE::CodeViewPDB::CodeViewPDB | ( | const details::pe_debug & | debug_info, |
const details::pe_pdb_70 & | pdb_70 ) |
|
default |
|
overridedefault |
|
overridevirtual |
Reimplemented from LIEF::PE::CodeView.
|
inline |
Age value to verify. The age does not necessarily correspond to any known time value, it is used to determine if a .pdb file is out of sync with a corresponding .exe file.
|
inline |
|
inlinestatic |
References LIEF::PE::CodeView::signature().
|
inlineoverridevirtual |
Reimplemented from LIEF::PE::CodeView.
|
inline |
The path to the .pdb
file.
|
inline |
std::string LIEF::PE::CodeViewPDB::guid | ( | ) | const |
The GUID signature to verify against the .pdb file signature. This attribute might be used to lookup remote PDB file on a symbol server.
|
default |
|
inline |
The 32-bit signature to verify against the .pdb file signature.
|
inline |