16#ifndef LIEF_PE_ATTRIBUTES_H
17#define LIEF_PE_ATTRIBUTES_H
21#include "LIEF/Object.hpp"
22#include "LIEF/visibility.h"
24#include "LIEF/PE/enums.hpp"
45 MS_SPC_STATEMENT_TYPE,
47 PKCS9_AT_SEQUENCE_NUMBER,
48 PKCS9_COUNTER_SIGNATURE,
57 virtual std::unique_ptr<Attribute> clone()
const = 0;
60 virtual TYPE
type()
const {
65 virtual std::string
print()
const = 0;
67 void accept(
Visitor& visitor)
const override;
71 LIEF_API
friend std::ostream& operator<<(std::ostream& os,
const Attribute&
Attribute);
77 TYPE type_ = TYPE::UNKNOWN;
80LIEF_API
const char* to_string(Attribute::TYPE e);
Interface over PKCS #7 attribute.
Definition Attribute.hpp:30
virtual TYPE type() const
Concrete type of the attribute.
Definition Attribute.hpp:60
virtual std::string print() const =0
Print information about the underlying attribute.
Main interface to parse PE binaries. In particular the static functions: Parser::parse should be used...
Definition PE/Parser.hpp:47
Definition SignatureParser.hpp:37
Definition Visitor.hpp:219
LIEF namespace.
Definition Abstract/Binary.hpp:32