16#ifndef LIEF_PE_ATTRIBUTES_SPC_RELAXED_PE_MARKER_CHECK_H
17#define LIEF_PE_ATTRIBUTES_SPC_RELAXED_PE_MARKER_CHECK_H
27 friend class SignatureParser;
31 SpcRelaxedPeMarkerCheck(0)
35 Attribute(Attribute::TYPE::SPC_RELAXED_PE_MARKER_CHECK),
40 SpcRelaxedPeMarkerCheck&
operator=(
const SpcRelaxedPeMarkerCheck&) =
default;
50 std::unique_ptr<Attribute>
clone()
const override {
51 return std::unique_ptr<Attribute>(
new SpcRelaxedPeMarkerCheck{*
this});
54 std::string
print()
const override {
55 return "value=" + std::to_string(value_);
58 static bool classof(
const Attribute* attr) {
59 return attr->
type() == Attribute::TYPE::SPC_RELAXED_PE_MARKER_CHECK;
62 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:25
std::string print() const override
Print information about the underlying attribute.
Definition SpcRelaxedPeMarkerCheck.hpp:54
std::unique_ptr< Attribute > clone() const override
Definition SpcRelaxedPeMarkerCheck.hpp:50
SpcRelaxedPeMarkerCheck()
Definition SpcRelaxedPeMarkerCheck.hpp:30
~SpcRelaxedPeMarkerCheck() override=default
SpcRelaxedPeMarkerCheck(const SpcRelaxedPeMarkerCheck &)=default
static bool classof(const Attribute *attr)
Definition SpcRelaxedPeMarkerCheck.hpp:58
void value(uint32_t v)
Definition SpcRelaxedPeMarkerCheck.hpp:46
uint32_t value() const
Definition SpcRelaxedPeMarkerCheck.hpp:42
void accept(Visitor &visitor) const override
SpcRelaxedPeMarkerCheck & operator=(const SpcRelaxedPeMarkerCheck &)=default
SpcRelaxedPeMarkerCheck(uint32_t value)
Definition SpcRelaxedPeMarkerCheck.hpp:34
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