|
LIEF: Library to Instrument Executable Formats Version 0.17.4
|
Class that represents the COFF header. It is subclassed by LIEF::COFF::RegularHeader and LIEF::COFF::BigObjHeader for normal vs /bigobj files. More...
#include <Header.hpp>

Public Types | |
| enum class | KIND { UNKNOWN = 0 , REGULAR , BIGOBJ } |
| using | MACHINE_TYPES = LIEF::PE::Header::MACHINE_TYPES |
| The different architectures (mirrored from PE). | |
Public Member Functions | |
| Header ()=default | |
| Header (KIND kind) | |
| Header & | operator= (const Header &)=default |
| Header (const Header &)=default | |
| Header & | operator= (Header &&)=default |
| Header (Header &&)=default | |
| virtual std::unique_ptr< Header > | clone () const =0 |
| KIND | kind () const |
| The type of this header: whether it is regular or using the /bigobj format. | |
| MACHINE_TYPES | machine () const |
| The machine type targeted by this COFF. | |
| uint32_t | nb_sections () const |
| The number of sections. | |
| uint32_t | pointerto_symbol_table () const |
| Offset of the symbols table. | |
| uint32_t | nb_symbols () const |
| Number of symbols (including auxiliary symbols). | |
| uint32_t | timedatestamp () const |
| Timestamp when the COFF has been generated. | |
| void | machine (MACHINE_TYPES machine) |
| void | nb_sections (uint32_t value) |
| void | pointerto_symbol_table (uint32_t value) |
| void | nb_symbols (uint32_t value) |
| void | timedatestamp (uint32_t value) |
| virtual std::string | to_string () const |
| template<class T> | |
| const T * | as () const |
| virtual | ~Header ()=default |
Static Public Member Functions | |
| static std::unique_ptr< Header > | create (BinaryStream &stream) |
| Create a header from the given stream. | |
| static std::unique_ptr< Header > | create (BinaryStream &stream, KIND kind) |
Class that represents the COFF header. It is subclassed by LIEF::COFF::RegularHeader and LIEF::COFF::BigObjHeader for normal vs /bigobj files.
The different architectures (mirrored from PE).
|
strong |
|
default |
|
default |
References Header().
|
default |
References Header().
|
virtualdefault |
References UNKNOWN.
|
inline |
|
pure virtual |
Implemented in LIEF::COFF::BigObjHeader, and LIEF::COFF::RegularHeader.
|
static |
Create a header from the given stream.
|
static |
References kind().
|
inline |
The type of this header: whether it is regular or using the /bigobj format.
Referenced by LIEF::COFF::BigObjHeader::classof(), LIEF::COFF::RegularHeader::classof(), create(), and Header().
|
inline |
|
inline |
References machine().
|
inline |
The number of sections.
|
inline |
|
inline |
Number of symbols (including auxiliary symbols).
|
inline |
|
inline |
Offset of the symbols table.
|
inline |
|
inline |
Timestamp when the COFF has been generated.
|
inline |
|
virtual |
Reimplemented in LIEF::COFF::BigObjHeader, and LIEF::COFF::RegularHeader.
Referenced by operator<<.