LIEF: Library to Instrument Executable Formats Version 0.17.0
|
Class which represents the Base Relocation Block We usually find this structure in the .reloc
section.
More...
#include <Relocation.hpp>
Public Types | |
using | entries_t = std::vector<std::unique_ptr<RelocationEntry>> |
using | it_entries = ref_iterator<entries_t&, RelocationEntry*> |
using | it_const_entries = const_ref_iterator<const entries_t&, RelocationEntry*> |
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 | |
Relocation ()=default | |
Relocation (const Relocation &other) | |
Relocation & | operator= (Relocation other) |
Relocation (const details::pe_base_relocation_block &header) | |
~Relocation () override=default | |
void | swap (Relocation &other) |
uint32_t | virtual_address () const |
The RVA for which the offset of the relocation entries (RelocationEntry) is added. | |
uint32_t | block_size () const |
The total number of bytes in the base relocation block. block_size = sizeof(BaseRelocationBlock) + nb_of_relocs * sizeof(uint16_t = RelocationEntry) | |
it_const_entries | entries () const |
Iterator over the RelocationEntry. | |
it_entries | entries () |
void | virtual_address (uint32_t virtual_address) |
void | block_size (uint32_t block_size) |
RelocationEntry & | add_entry (const RelocationEntry &entry) |
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 () |
Class which represents the Base Relocation Block We usually find this structure in the .reloc
section.
using LIEF::PE::Relocation::entries_t = std::vector<std::unique_ptr<RelocationEntry>> |
using LIEF::PE::Relocation::it_const_entries = const_ref_iterator<const entries_t&, RelocationEntry*> |
|
default |
LIEF::PE::Relocation::Relocation | ( | const Relocation & | other | ) |
LIEF::PE::Relocation::Relocation | ( | const details::pe_base_relocation_block & | header | ) |
|
overridedefault |
|
overridevirtual |
Implements LIEF::Object.
RelocationEntry & LIEF::PE::Relocation::add_entry | ( | const RelocationEntry & | entry | ) |
|
inline |
The total number of bytes in the base relocation block. block_size = sizeof(BaseRelocationBlock) + nb_of_relocs * sizeof(uint16_t = RelocationEntry)
|
inline |
|
inline |
|
inline |
Iterator over the RelocationEntry.
Relocation & LIEF::PE::Relocation::operator= | ( | Relocation | other | ) |
void LIEF::PE::Relocation::swap | ( | Relocation & | other | ) |
|
inline |
The RVA for which the offset of the relocation entries (RelocationEntry) is added.
|
inline |