17#ifndef LIEF_PE_ATTRIBUTES_SPC_SP_OPUS_INFO_H
18#define LIEF_PE_ATTRIBUTES_SPC_SP_OPUS_INFO_H
21#include "LIEF/visibility.h"
22#include "LIEF/errors.hpp"
23#include "LIEF/PE/signature/Attribute.hpp"
47 SpcSpOpusInfo(std::string program_name, std::string more_info) :
48 Attribute(Attribute::TYPE::SPC_SP_OPUS_INFO),
49 program_name_(std::move(program_name)),
50 more_info_(std::move(more_info))
60 std::unique_ptr<Attribute> clone()
const override {
75 std::string
print()
const override;
77 static bool classof(
const Attribute* attr) {
78 return attr->
type() == Attribute::TYPE::SPC_SP_OPUS_INFO;
81 void accept(
Visitor& visitor)
const override;
86 std::string program_name_;
87 std::string more_info_;
Interface over PKCS #7 attribute.
Definition Attribute.hpp:30
virtual TYPE type() const
Concrete type of the attribute.
Definition Attribute.hpp:60
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
Interface over the structure described by the OID 1.3.6.1.4.1.311.2.1.12
Definition SpcSpOpusInfo.hpp:41
const std::string & program_name() const
Program description provided by the publisher.
Definition SpcSpOpusInfo.hpp:65
std::string print() const override
Print information about the attribute.
const std::string & more_info() const
Other information such as an url.
Definition SpcSpOpusInfo.hpp:70
Definition Visitor.hpp:219
LIEF namespace.
Definition Abstract/Binary.hpp:32