Botan  2.7.0
Crypto and TLS for C++11
Public Member Functions | Public Attributes | List of all members
Botan::Attribute Class Referencefinal

#include <asn1_attribute.h>

Inheritance diagram for Botan::Attribute:
Botan::ASN1_Object

Public Member Functions

 Attribute ()=default
 
 Attribute (const OID &, const std::vector< uint8_t > &)
 
 Attribute (const std::string &, const std::vector< uint8_t > &)
 
std::vector< uint8_t > BER_encode () const
 
void decode_from (class BER_Decoder &from) override
 
void encode_into (class DER_Encoder &to) const override
 
const OIDget_oid () const
 
const std::vector< uint8_t > & get_parameters () const
 

Public Attributes

BOTAN_DEPRECATED_PUBLIC_MEMBER_VARIABLES __pad0__: OID oid
 
std::vector< uint8_t > parameters
 

Detailed Description

Attribute

Definition at line 20 of file asn1_attribute.h.

Constructor & Destructor Documentation

◆ Attribute() [1/3]

Botan::Attribute::Attribute ( )
default

◆ Attribute() [2/3]

Botan::Attribute::Attribute ( const OID attr_oid,
const std::vector< uint8_t > &  attr_value 
)

Definition at line 18 of file asn1_attribute.cpp.

18  :
19  oid(attr_oid),
20  parameters(attr_value)
21  {}
std::vector< uint8_t > parameters

◆ Attribute() [3/3]

Botan::Attribute::Attribute ( const std::string &  attr_oid,
const std::vector< uint8_t > &  attr_value 
)

Definition at line 26 of file asn1_attribute.cpp.

27  :
28  oid(OIDS::lookup(attr_oid)),
29  parameters(attr_value)
30  {}
std::vector< uint8_t > parameters
std::string lookup(const OID &oid)
Definition: oids.cpp:113

Member Function Documentation

◆ BER_encode()

std::vector< uint8_t > Botan::ASN1_Object::BER_encode ( ) const
inherited

Return the encoding of this object. This is a convenience method when just one object needs to be serialized. Use DER_Encoder for complicated encodings.

Definition at line 16 of file asn1_obj.cpp.

References Botan::ASN1_Object::encode_into().

Referenced by Botan::PSSR::config_for_x509(), Botan::Certificate_Store_In_SQL::find_all_certs(), Botan::Certificate_Store_In_SQL::find_cert(), Botan::X509_Certificate::fingerprint(), Botan::Certificate_Store_In_SQL::insert_cert(), Botan::X509_Object::PEM_encode(), and Botan::Certificate_Store_In_SQL::revoke_cert().

17  {
18  std::vector<uint8_t> output;
19  DER_Encoder der(output);
20  this->encode_into(der);
21  return output;
22  }
virtual void encode_into(DER_Encoder &to) const =0

◆ decode_from()

void Botan::Attribute::decode_from ( class BER_Decoder from)
overridevirtual

Decode whatever this object is from from

Parameters
fromthe BER_Decoder that will be read from

Implements Botan::ASN1_Object.

Definition at line 48 of file asn1_attribute.cpp.

References Botan::BER_Decoder::decode(), Botan::BER_Decoder::end_cons(), parameters, Botan::BER_Decoder::raw_bytes(), Botan::SEQUENCE, Botan::SET, and Botan::BER_Decoder::start_cons().

49  {
50  codec.start_cons(SEQUENCE)
51  .decode(oid)
52  .start_cons(SET)
53  .raw_bytes(parameters)
54  .end_cons()
55  .end_cons();
56  }
std::vector< uint8_t > parameters

◆ encode_into()

void Botan::Attribute::encode_into ( class DER_Encoder to) const
overridevirtual

Encode whatever this object is into to

Parameters
tothe DER_Encoder that will be written to

Implements Botan::ASN1_Object.

Definition at line 35 of file asn1_attribute.cpp.

References Botan::DER_Encoder::encode(), Botan::DER_Encoder::end_cons(), parameters, Botan::DER_Encoder::raw_bytes(), Botan::SEQUENCE, Botan::SET, and Botan::DER_Encoder::start_cons().

36  {
37  codec.start_cons(SEQUENCE)
38  .encode(oid)
39  .start_cons(SET)
40  .raw_bytes(parameters)
41  .end_cons()
42  .end_cons();
43  }
std::vector< uint8_t > parameters

◆ get_oid()

const OID& Botan::Attribute::get_oid ( ) const
inline

Definition at line 30 of file asn1_attribute.h.

30 { return oid; }

◆ get_parameters()

const std::vector<uint8_t>& Botan::Attribute::get_parameters ( ) const
inline

Definition at line 32 of file asn1_attribute.h.

32 { return parameters; }
std::vector< uint8_t > parameters

Member Data Documentation

◆ __pad0__

BOTAN_DEPRECATED_PUBLIC_MEMBER_VARIABLES Botan::Attribute::__pad0__

Definition at line 39 of file asn1_attribute.h.

◆ parameters

std::vector<uint8_t> Botan::Attribute::parameters

Definition at line 40 of file asn1_attribute.h.

Referenced by decode_from(), and encode_into().


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