16#ifndef LIEF_PE_ATTRIBUTES_SPC_RELAXED_PE_MARKER_CHECK_H
17#define LIEF_PE_ATTRIBUTES_SPC_RELAXED_PE_MARKER_CHECK_H
28 friend class SignatureParser;
32 SpcRelaxedPeMarkerCheck(0)
36 Attribute(Attribute::TYPE::SPC_RELAXED_PE_MARKER_CHECK),
41 SpcRelaxedPeMarkerCheck&
operator=(
const SpcRelaxedPeMarkerCheck&) =
default;
51 std::unique_ptr<Attribute>
clone()
const override {
52 return std::unique_ptr<Attribute>(
new SpcRelaxedPeMarkerCheck{*
this});
55 std::string
print()
const override {
56 return "value=" + std::to_string(value_);
59 static bool classof(
const Attribute* attr) {
60 return attr->
type() == Attribute::TYPE::SPC_RELAXED_PE_MARKER_CHECK;
63 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
Definition SpcRelaxedPeMarkerCheck.hpp:26
std::string print() const override
Print information about the underlying attribute.
Definition SpcRelaxedPeMarkerCheck.hpp:55
std::unique_ptr< Attribute > clone() const override
Definition SpcRelaxedPeMarkerCheck.hpp:51
SpcRelaxedPeMarkerCheck()
Definition SpcRelaxedPeMarkerCheck.hpp:31
~SpcRelaxedPeMarkerCheck() override=default
SpcRelaxedPeMarkerCheck(const SpcRelaxedPeMarkerCheck &)=default
static bool classof(const Attribute *attr)
Definition SpcRelaxedPeMarkerCheck.hpp:59
void value(uint32_t v)
Definition SpcRelaxedPeMarkerCheck.hpp:47
uint32_t value() const
Definition SpcRelaxedPeMarkerCheck.hpp:43
void accept(Visitor &visitor) const override
SpcRelaxedPeMarkerCheck & operator=(const SpcRelaxedPeMarkerCheck &)=default
SpcRelaxedPeMarkerCheck(uint32_t value)
Definition SpcRelaxedPeMarkerCheck.hpp:35
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