LIEF: Library to Instrument Executable Formats Version 0.17.0
|
Loading...
Searching...
No Matches
Go to the documentation of this file.
16#ifndef LIEF_ELF_SYMBOL_VERSION_DEFINITION_H
17#define LIEF_ELF_SYMBOL_VERSION_DEFINITION_H
40 using version_aux_t = std::vector<std::unique_ptr<SymbolVersionAux>>;
41 using it_version_aux = ref_iterator<version_aux_t&, SymbolVersionAux*>;
42 using it_const_version_aux = const_ref_iterator<const version_aux_t&, const SymbolVersionAux*>;
49 SymbolVersionDefinition&
operator=(SymbolVersionDefinition other);
51 void swap(SymbolVersionDefinition& other);
60 uint16_t
flags()
const {
65 uint16_t
ndx()
const {
72 uint32_t
hash()
const {
80 return symbol_version_aux_;
84 return symbol_version_aux_;
99 void accept(Visitor& visitor)
const override;
104 uint16_t version_ = 1;
108 version_aux_t symbol_version_aux_;
Class which parses and transforms an ELF file into a ELF::Binary object.
Definition ELF/Parser.hpp:45
Class which represents an Auxiliary Symbol version.
Definition SymbolVersionAux.hpp:30
Class which represents an entry defined in DT_VERDEF or .gnu.version_d
Definition SymbolVersionDefinition.hpp:37
void hash(uint32_t hash)
Definition SymbolVersionDefinition.hpp:95
SymbolVersionDefinition(const SymbolVersionDefinition &other)
it_version_aux symbols_aux()
SymbolVersionAux entries.
Definition SymbolVersionDefinition.hpp:79
SymbolVersionDefinition(const details::Elf64_Verdef &header)
SymbolVersionDefinition()=default
void accept(Visitor &visitor) const override
uint32_t hash() const
Hash value of the symbol's name (using ELF hash function)
Definition SymbolVersionDefinition.hpp:74
uint16_t ndx() const
Version index.
Definition SymbolVersionDefinition.hpp:69
friend std::ostream & operator<<(std::ostream &os, const SymbolVersionDefinition &sym)
void flags(uint16_t flags)
Definition SymbolVersionDefinition.hpp:91
uint16_t version() const
Version revision.
Definition SymbolVersionDefinition.hpp:57
~SymbolVersionDefinition() override
SymbolVersionDefinition(const details::Elf32_Verdef &header)
it_const_version_aux symbols_aux() const
Definition SymbolVersionDefinition.hpp:83
SymbolVersionDefinition & operator=(SymbolVersionDefinition other)
void swap(SymbolVersionDefinition &other)
void version(uint16_t version)
Definition SymbolVersionDefinition.hpp:87
uint16_t flags() const
Version information.
Definition SymbolVersionDefinition.hpp:62
Definition DynamicEntry.hpp:29
Namespace related to the LIEF's ELF module.
Definition Abstract/Header.hpp:28
LIEF namespace.
Definition Abstract/Binary.hpp:36
Hash::value_type hash(const Object &v)
#define LIEF_API
Definition visibility.h:41