LIEF: Library to Instrument Executable Formats Version 0.17.0
Loading...
Searching...
No Matches
LIEF::PE::MsSpcNestedSignature Class Reference

Interface over the structure described by the OID 1.3.6.1.4.1.311.2.4.1. More...

#include <MsSpcNestedSignature.hpp>

Inheritance diagram for LIEF::PE::MsSpcNestedSignature:
Collaboration diagram for LIEF::PE::MsSpcNestedSignature:

Public Member Functions

 MsSpcNestedSignature ()=delete
 MsSpcNestedSignature (Signature sig)
 MsSpcNestedSignature (const MsSpcNestedSignature &)=default
MsSpcNestedSignatureoperator= (const MsSpcNestedSignature &)=default
std::unique_ptr< Attributeclone () const override
const Signaturesig () const
 Underlying Signature object.
std::string print () const override
 Print information about the attribute.
void accept (Visitor &visitor) const override
 ~MsSpcNestedSignature () override=default
Public Member Functions inherited from LIEF::PE::Attribute
 Attribute ()=delete
 Attribute (const Attribute &)=default
Attributeoperator= (const Attribute &)=default
virtual TYPE type () const
 Concrete type of the attribute.
 ~Attribute () override=default
template<class T>
const Tcast () const
template<class T>
Tcast ()
Public Member Functions inherited from LIEF::Object
 Object ()
 Object (const Object &other)
Objectoperator= (const Object &other)
 Object (Object &&other) noexcept=default
Objectoperator= (Object &&other) noexcept=default
template<class T>
output_t< T > as ()
template<class T>
output_const_t< T > as () const
virtual bool operator== (const Object &other) const
virtual bool operator!= (const Object &other) const
virtual ~Object ()

Static Public Member Functions

static bool classof (const Attribute *attr)

Additional Inherited Members

Public Types inherited from LIEF::PE::Attribute
enum class  TYPE {
  UNKNOWN = 0 , CONTENT_TYPE , GENERIC_TYPE , SIGNING_CERTIFICATE_V2 ,
  SPC_SP_OPUS_INFO , SPC_RELAXED_PE_MARKER_CHECK , MS_COUNTER_SIGN , MS_SPC_NESTED_SIGN ,
  MS_SPC_STATEMENT_TYPE , MS_PLATFORM_MANIFEST_BINARY_ID , PKCS9_AT_SEQUENCE_NUMBER , PKCS9_COUNTER_SIGNATURE ,
  PKCS9_MESSAGE_DIGEST , PKCS9_SIGNING_TIME
}
Public Types inherited from LIEF::Object
template<class T>
using output_t = add_pointer_t<decay_t<T>>
template<class T>
using output_const_t = add_pointer_t<add_const_t<decay_t<T>>>

Detailed Description

Interface over the structure described by the OID 1.3.6.1.4.1.311.2.4.1.

The internal structure is not documented but we can infer the following structure:

MsSpcNestedSignature ::= SET OF SignedData

SignedData is the structure described in PKCS #7 RFC (LIEF::PE::Signature)

Constructor & Destructor Documentation

◆ MsSpcNestedSignature() [1/3]

LIEF::PE::MsSpcNestedSignature::MsSpcNestedSignature ( )
delete

◆ MsSpcNestedSignature() [2/3]

LIEF::PE::MsSpcNestedSignature::MsSpcNestedSignature ( Signature sig)
inline

◆ MsSpcNestedSignature() [3/3]

LIEF::PE::MsSpcNestedSignature::MsSpcNestedSignature ( const MsSpcNestedSignature & )
default

◆ ~MsSpcNestedSignature()

LIEF::PE::MsSpcNestedSignature::~MsSpcNestedSignature ( )
overridedefault

Member Function Documentation

◆ accept()

void LIEF::PE::MsSpcNestedSignature::accept ( Visitor & visitor) const
overridevirtual

Reimplemented from LIEF::PE::Attribute.

◆ classof()

bool LIEF::PE::MsSpcNestedSignature::classof ( const Attribute * attr)
inlinestatic

◆ clone()

std::unique_ptr< Attribute > LIEF::PE::MsSpcNestedSignature::clone ( ) const
inlineoverridevirtual

◆ operator=()

MsSpcNestedSignature & LIEF::PE::MsSpcNestedSignature::operator= ( const MsSpcNestedSignature & )
default

◆ print()

std::string LIEF::PE::MsSpcNestedSignature::print ( ) const
overridevirtual

Print information about the attribute.

Implements LIEF::PE::Attribute.

◆ sig()

const Signature & LIEF::PE::MsSpcNestedSignature::sig ( ) const
inline

Underlying Signature object.

Referenced by MsSpcNestedSignature().


The documentation for this class was generated from the following file: