LIEF: Library to Instrument Executable Formats Version 0.17.0
|
Loading...
Searching...
No Matches
Go to the documentation of this file.
16#ifndef LIEF_PE_CODE_INTEGRITY_H
17#define LIEF_PE_CODE_INTEGRITY_H
33 static result<CodeIntegrity>
parse(Parser& ctx, BinaryStream& stream);
38 CodeIntegrity&
operator=(
const CodeIntegrity&) =
default;
41 CodeIntegrity&
operator=(CodeIntegrity&&) =
default;
43 uint16_t
flags()
const {
55 return catalog_offset_;
63 CodeIntegrity&
flags(uint16_t flags) {
68 CodeIntegrity&
catalog(uint16_t catalog) {
74 catalog_offset_ = catalog_offset;
83 void accept(Visitor& visitor)
const override;
89 uint16_t catalog_ = 0;
91 uint32_t catalog_offset_ = 0;
92 uint32_t reserved_ = 0;
Class that is used to a read stream of data from different sources.
Definition BinaryStream.hpp:33
Definition CodeIntegrity.hpp:31
CodeIntegrity(CodeIntegrity &&)=default
void accept(Visitor &visitor) const override
static result< CodeIntegrity > parse(Parser &ctx, BinaryStream &stream)
CodeIntegrity & operator=(const CodeIntegrity &)=default
CodeIntegrity & catalog(uint16_t catalog)
Definition CodeIntegrity.hpp:68
uint16_t flags() const
Flags to indicate if CI information is available, etc.
Definition CodeIntegrity.hpp:45
CodeIntegrity & operator=(CodeIntegrity &&)=default
uint16_t catalog() const
0xFFFF means not available
Definition CodeIntegrity.hpp:50
CodeIntegrity & catalog_offset(uint32_t catalog_offset)
Definition CodeIntegrity.hpp:73
CodeIntegrity(const CodeIntegrity &)=default
uint32_t catalog_offset() const
Definition CodeIntegrity.hpp:54
~CodeIntegrity() override=default
CodeIntegrity & reserved(uint32_t reserved)
Definition CodeIntegrity.hpp:78
CodeIntegrity & flags(uint16_t flags)
Definition CodeIntegrity.hpp:63
uint32_t reserved() const
Additional bitmask to be defined later.
Definition CodeIntegrity.hpp:59
friend std::ostream & operator<<(std::ostream &os, const CodeIntegrity &entry)
Main interface to parse PE binaries. In particular the static functions: Parser::parse should be used...
Definition PE/Parser.hpp:52
Namespace related to the LIEF's PE module.
Definition Abstract/Header.hpp:32
LIEF namespace.
Definition Abstract/Binary.hpp:36
#define LIEF_API
Definition visibility.h:41