|
LIEF: Library to Instrument Executable Formats Version 0.17.1
|
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*> |
| using | relocations_t = std::vector<std::unique_ptr<Relocation>> |
| 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 () | |
| Relocation (uint32_t base, uint32_t block_size) | |
| Relocation (uint32_t base) | |
| Relocation (const Relocation &other) | |
| Relocation & | operator= (Relocation other) |
| Relocation (Relocation &&) | |
| Relocation & | operator= (Relocation &&other) |
| Relocation (const details::pe_base_relocation_block &header) | |
| ~Relocation () override | |
| 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. | |
| 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) |
| Object (Object &&other) noexcept=default | |
| Object & | operator= (Object &&other) noexcept=default |
| 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 relocations_t | parse (Parser &ctx, BinaryStream &stream) |
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*> |
| using LIEF::PE::Relocation::relocations_t = std::vector<std::unique_ptr<Relocation>> |
| LIEF::PE::Relocation::Relocation | ( | ) |
Referenced by operator<<, operator=(), operator=(), Relocation(), Relocation(), and swap().
| LIEF::PE::Relocation::Relocation | ( | uint32_t | base, |
| uint32_t | block_size ) |
References block_size().
| LIEF::PE::Relocation::Relocation | ( | uint32_t | base | ) |
| LIEF::PE::Relocation::Relocation | ( | const Relocation & | other | ) |
References Relocation().
| LIEF::PE::Relocation::Relocation | ( | Relocation && | ) |
References Relocation().
| LIEF::PE::Relocation::Relocation | ( | const details::pe_base_relocation_block & | header | ) |
|
override |
|
overridevirtual |
Implements LIEF::Object.
| RelocationEntry & LIEF::PE::Relocation::add_entry | ( | const RelocationEntry & | entry | ) |
|
inline |
The total number of bytes in the base relocation block.
Referenced by block_size(), and Relocation().
|
inline |
References block_size().
|
inline |
|
inline |
Iterator over the RelocationEntry.
| Relocation & LIEF::PE::Relocation::operator= | ( | Relocation && | other | ) |
References Relocation().
| Relocation & LIEF::PE::Relocation::operator= | ( | Relocation | other | ) |
References Relocation().
|
static |
References LIEF_LOCAL, and Parser.
| void LIEF::PE::Relocation::swap | ( | Relocation & | other | ) |
References Relocation().
|
inline |
The RVA for which the offset of the relocation entries (RelocationEntry) is added.
Referenced by virtual_address().
|
inline |
References virtual_address().