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

Interface over PKCS #7 attribute. More...

#include <Attribute.hpp>

Inheritance diagram for LIEF::PE::Attribute:
Collaboration diagram for LIEF::PE::Attribute:

Public Types

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>>>
 

Public Member Functions

 Attribute ()=delete
 
 Attribute (const Attribute &)=default
 
Attributeoperator= (const Attribute &)=default
 
virtual std::unique_ptr< Attributeclone () const =0
 
virtual TYPE type () const
 Concrete type of the attribute.
 
virtual std::string print () const =0
 Print information about the underlying attribute.
 
void accept (Visitor &visitor) const override
 
 ~Attribute () override=default
 
template<class T >
const T * cast () const
 
template<class T >
T * cast ()
 
- Public Member Functions inherited from LIEF::Object
 Object ()
 
 Object (const Object &other)
 
Objectoperator= (const Object &other)
 
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 ()
 

Detailed Description

Interface over PKCS #7 attribute.

Member Enumeration Documentation

◆ TYPE

enum class LIEF::PE::Attribute::TYPE
strong
Enumerator
UNKNOWN 
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 

Constructor & Destructor Documentation

◆ Attribute() [1/2]

LIEF::PE::Attribute::Attribute ( )
delete

◆ Attribute() [2/2]

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

◆ ~Attribute()

LIEF::PE::Attribute::~Attribute ( )
overridedefault

Member Function Documentation

◆ accept()

◆ cast() [1/2]

template<class T >
T * LIEF::PE::Attribute::cast ( )
inline

◆ cast() [2/2]

template<class T >
const T * LIEF::PE::Attribute::cast ( ) const
inline

◆ clone()

◆ operator=()

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

◆ print()

◆ type()


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