Go to the documentation of this file.
16#ifndef LIEF_PE_ATTRIBUTES_CONTENT_TYPE_H
17#define LIEF_PE_ATTRIBUTES_CONTENT_TYPE_H
40 friend class SignatureParser;
44 Attribute(Attribute::TYPE::CONTENT_TYPE)
47 Attribute(Attribute::TYPE::CONTENT_TYPE),
51 ContentType&
operator=(
const ContentType&) =
default;
57 std::string
print()
const override;
61 std::unique_ptr<Attribute>
clone()
const override {
62 return std::unique_ptr<Attribute>(
new ContentType{*
this});
65 static bool classof(
const Attribute* attr) {
66 return attr->
type() == Attribute::TYPE::CONTENT_TYPE;
69 void accept(Visitor& visitor)
const override;
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 the structure described by the OID 1.2.840.113549.1.9.3 (PKCS #9)
Definition ContentType.hpp:37
ContentType(oid_t oid)
Definition ContentType.hpp:46
static bool classof(const Attribute *attr)
Definition ContentType.hpp:65
ContentType & operator=(const ContentType &)=default
~ContentType() override=default
ContentType(const ContentType &)=default
std::string print() const override
Print information about the attribute.
const oid_t & oid() const
OID as described in RFC #2985.
Definition ContentType.hpp:54
ContentType()
Definition ContentType.hpp:43
void accept(Visitor &visitor) const override
std::unique_ptr< Attribute > clone() const override
Definition ContentType.hpp:61
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