LIEF: Library to Instrument Executable Formats Version 0.16.0
|
Loading...
Searching...
No Matches
Go to the documentation of this file.
16#ifndef LIEF_PE_ATTRIBUTES_GENERIC_TYPE_H
17#define LIEF_PE_ATTRIBUTES_GENERIC_TYPE_H
33 friend class SignatureParser;
37 Attribute(Attribute::TYPE::GENERIC_TYPE)
40 Attribute(Attribute::TYPE::GENERIC_TYPE),
45 GenericType&
operator=(
const GenericType&) =
default;
47 std::unique_ptr<Attribute>
clone()
const override {
48 return std::unique_ptr<Attribute>(
new GenericType{*
this});
60 std::string
print()
const override;
64 void accept(Visitor& visitor)
const override;
68 static bool classof(
const Attribute* attr) {
69 return attr->
type() == Attribute::TYPE::GENERIC_TYPE;
74 std::vector<uint8_t> raw_;
Interface over PKCS #7 attribute.
Definition PE/signature/Attribute.hpp:29
virtual TYPE type() const
Concrete type of the attribute.
Definition PE/signature/Attribute.hpp:62
Interface over an attribute for which the internal structure is not supported by LIEF.
Definition GenericType.hpp:31
GenericType & operator=(const GenericType &)=default
std::unique_ptr< Attribute > clone() const override
Definition GenericType.hpp:47
~GenericType() override=default
void accept(Visitor &visitor) const override
GenericType()
Definition GenericType.hpp:36
span< const uint8_t > raw_content() const
Original DER blob of the attribute.
Definition GenericType.hpp:57
GenericType(const GenericType &)=default
GenericType(oid_t oid, std::vector< uint8_t > raw)
Definition GenericType.hpp:39
const oid_t & oid() const
OID of the original attribute.
Definition GenericType.hpp:52
std::string print() const override
Print information about the attribute.
static bool classof(const Attribute *attr)
Definition GenericType.hpp:68
Definition VectorStream.hpp:29
Namespace related to the LIEF's PE module.
Definition Abstract/Header.hpp:32
std::string oid_t
Definition PE/signature/types.hpp:23
LIEF namespace.
Definition Abstract/Binary.hpp:36
#define LIEF_API
Definition visibility.h:41