Botan
1.10.16
|
#include <ber_dec.h>
Botan::BER_Decoder::BER_Decoder | ( | DataSource & | src | ) |
Botan::BER_Decoder::BER_Decoder | ( | const byte | data[], |
size_t | length | ||
) |
Botan::BER_Decoder::BER_Decoder | ( | const MemoryRegion< byte > & | data | ) |
Botan::BER_Decoder::BER_Decoder | ( | const BER_Decoder & | other | ) |
Botan::BER_Decoder::~BER_Decoder | ( | ) |
Definition at line 313 of file ber_dec.cpp.
BER_Decoder & Botan::BER_Decoder::decode | ( | bool & | out | ) |
Definition at line 344 of file ber_dec.cpp.
References Botan::BOOLEAN, Botan::PEM_Code::decode(), and Botan::UNIVERSAL.
Referenced by Botan::DL_Group::BER_decode(), Botan::CMS_Encoder::can_compress_with(), Botan::Certificate_Req::Certificate_Req(), Botan::PK_Verifier::check_signature(), Botan::Cert_Extension::CRL_Number::copy(), Botan::CRL_Entry::decode_from(), Botan::X509_DN::decode_from(), Botan::AlgorithmIdentifier::decode_from(), Botan::Attribute::decode_from(), Botan::Extensions::decode_from(), Botan::AlternativeName::decode_from(), Botan::EAC1_1_gen_CVC< EAC1_1_Req >::decode_info(), decode_optional(), Botan::DL_Scheme_PrivateKey::DL_Scheme_PrivateKey(), Botan::DL_Scheme_PublicKey::DL_Scheme_PublicKey(), Botan::EAC1_1_ADO::EAC1_1_ADO(), Botan::EC_Group::EC_Group(), Botan::ECDSA_Signature::ECDSA_Signature(), Botan::EAC1_1_ADO::get_car(), Botan::EAC1_1_CVC::get_chat_value(), Botan::IF_Scheme_PublicKey::IF_Scheme_PublicKey(), Botan::CMS_Decoder::layer_info(), Botan::X509::load_key(), Botan::EAC1_1_Req::operator==(), Botan::PKCS10_Request::PKCS10_Request(), Botan::Cert_Extension::Subject_Key_ID::Subject_Key_ID(), Botan::X509_Certificate::X509_Certificate(), Botan::X509_CRL::X509_CRL(), and Botan::X509_Object::X509_Object().
BER_Decoder & Botan::BER_Decoder::decode | ( | size_t & | out | ) |
Definition at line 352 of file ber_dec.cpp.
References Botan::PEM_Code::decode(), Botan::INTEGER, and Botan::UNIVERSAL.
BER_Decoder & Botan::BER_Decoder::decode | ( | class BigInt & | out | ) |
Definition at line 360 of file ber_dec.cpp.
References Botan::PEM_Code::decode(), Botan::INTEGER, and Botan::UNIVERSAL.
BER_Decoder & Botan::BER_Decoder::decode | ( | MemoryRegion< byte > & | out, |
ASN1_Tag | real_type | ||
) |
Definition at line 444 of file ber_dec.cpp.
References Botan::PEM_Code::decode(), and Botan::UNIVERSAL.
BER_Decoder & Botan::BER_Decoder::decode | ( | bool & | out, |
ASN1_Tag | type_tag, | ||
ASN1_Tag | class_tag = CONTEXT_SPECIFIC |
||
) |
Definition at line 376 of file ber_dec.cpp.
References Botan::BER_Object::assert_is_a(), Botan::MemoryRegion< T >::size(), and Botan::BER_Object::value.
BER_Decoder & Botan::BER_Decoder::decode | ( | size_t & | out, |
ASN1_Tag | type_tag, | ||
ASN1_Tag | class_tag = CONTEXT_SPECIFIC |
||
) |
Definition at line 392 of file ber_dec.cpp.
References Botan::BigInt::bits(), Botan::BigInt::byte_at(), and Botan::PEM_Code::decode().
BER_Decoder & Botan::BER_Decoder::decode | ( | class BigInt & | out, |
ASN1_Tag | type_tag, | ||
ASN1_Tag | class_tag = CONTEXT_SPECIFIC |
||
) |
Definition at line 411 of file ber_dec.cpp.
References Botan::BER_Object::assert_is_a(), Botan::MemoryRegion< T >::empty(), Botan::BigInt::flip_sign(), Botan::MemoryRegion< T >::size(), and Botan::BER_Object::value.
BER_Decoder & Botan::BER_Decoder::decode | ( | MemoryRegion< byte > & | buffer, |
ASN1_Tag | real_type, | ||
ASN1_Tag | type_tag, | ||
ASN1_Tag | class_tag = CONTEXT_SPECIFIC |
||
) |
Definition at line 452 of file ber_dec.cpp.
References Botan::BER_Object::assert_is_a(), Botan::BIT_STRING, Botan::copy_mem(), Botan::MemoryRegion< T >::empty(), Botan::OCTET_STRING, Botan::MemoryRegion< T >::resize(), Botan::MemoryRegion< T >::size(), and Botan::BER_Object::value.
BER_Decoder & Botan::BER_Decoder::decode | ( | class ASN1_Object & | obj | ) |
Definition at line 323 of file ber_dec.cpp.
References Botan::ASN1_Object::decode_from().
|
inline |
Definition at line 62 of file ber_dec.h.
References Botan::PEM_Code::decode().
Referenced by Botan::EC_Group::EC_Group(), and Botan::EC_PrivateKey::EC_PrivateKey().
BER_Decoder & Botan::BER_Decoder::decode_list | ( | std::vector< T > & | out, |
bool | clear_out = true |
||
) |
Definition at line 125 of file ber_dec.h.
References Botan::PEM_Code::decode().
Referenced by Botan::Cert_Extension::Issuer_Alternative_Name::Issuer_Alternative_Name().
BER_Decoder & Botan::BER_Decoder::decode_null | ( | ) |
Definition at line 332 of file ber_dec.cpp.
References Botan::BER_Object::assert_is_a(), Botan::NULL_TAG, Botan::MemoryRegion< T >::size(), Botan::UNIVERSAL, and Botan::BER_Object::value.
BER_Decoder & Botan::BER_Decoder::decode_octet_string_bigint | ( | class BigInt & | out | ) |
Definition at line 365 of file ber_dec.cpp.
References Botan::PEM_Code::decode(), Botan::BigInt::decode(), Botan::OCTET_STRING, and Botan::MemoryRegion< T >::size().
Referenced by Botan::EC_Group::EC_Group().
BER_Decoder & Botan::BER_Decoder::decode_optional | ( | T & | out, |
ASN1_Tag | type_tag, | ||
ASN1_Tag | class_tag, | ||
const T & | default_value = T() |
||
) |
Definition at line 95 of file ber_dec.h.
References Botan::BER_Object::class_tag, Botan::CONSTRUCTED, decode(), Botan::PEM_Code::decode(), Botan::BER_Object::type_tag, Botan::BER_Object::value, and verify_end().
Referenced by Botan::Extensions::decode_from(), Botan::X509_Certificate::X509_Certificate(), and Botan::X509_CRL::X509_CRL().
BER_Decoder & Botan::BER_Decoder::decode_optional_string | ( | MemoryRegion< byte > & | out, |
ASN1_Tag | real_type, | ||
u16bit | type_no | ||
) |
Definition at line 480 of file ber_dec.cpp.
References Botan::BER_Object::class_tag, Botan::MemoryRegion< T >::clear(), Botan::CONTEXT_SPECIFIC, Botan::PEM_Code::decode(), and Botan::BER_Object::type_tag.
Referenced by Botan::Cert_Extension::Subject_Key_ID::Subject_Key_ID(), and Botan::X509_Certificate::X509_Certificate().
BER_Decoder & Botan::BER_Decoder::discard_remaining | ( | ) |
BER_Decoder & Botan::BER_Decoder::end_cons | ( | ) |
Definition at line 252 of file ber_dec.cpp.
Referenced by Botan::CMS_Encoder::can_compress_with(), Botan::CRL_Entry::decode_from(), Botan::X509_DN::decode_from(), Botan::AlgorithmIdentifier::decode_from(), Botan::Attribute::decode_from(), Botan::Extensions::decode_from(), Botan::EAC1_1_gen_CVC< EAC1_1_Req >::decode_info(), Botan::EAC1_1_ADO::EAC1_1_ADO(), Botan::EC_Group::EC_Group(), Botan::ECDSA_Signature::ECDSA_Signature(), Botan::DER_Encoder::end_explicit(), Botan::EAC1_1_ADO::get_car(), Botan::EAC1_1_CVC::get_chat_value(), Botan::IF_Scheme_PublicKey::IF_Scheme_PublicKey(), Botan::Cert_Extension::Issuer_Alternative_Name::Issuer_Alternative_Name(), Botan::X509::load_key(), Botan::EAC1_1_Req::operator==(), Botan::X509_Certificate::X509_Certificate(), and Botan::X509_Object::X509_Object().
BER_Object Botan::BER_Decoder::get_next_object | ( | ) |
Definition at line 196 of file ber_dec.cpp.
References Botan::BER_Object::class_tag, Botan::EOC, Botan::NO_OBJECT, Botan::MemoryRegion< T >::resize(), Botan::BER_Object::type_tag, Botan::UNIVERSAL, and Botan::BER_Object::value.
Referenced by Botan::BER::decode(), Botan::ASN1_String::decode_from(), Botan::OID::decode_from(), Botan::EAC_Time::decode_from(), Botan::X509_Time::decode_from(), Botan::AlternativeName::decode_from(), Botan::ASN1_EAC_String::decode_from(), Botan::EC_Group::EC_Group(), Botan::PKCS10_Request::PKCS10_Request(), Botan::X509_Certificate::X509_Certificate(), and Botan::X509_CRL::X509_CRL().
bool Botan::BER_Decoder::more_items | ( | ) | const |
Definition at line 153 of file ber_dec.cpp.
References Botan::NO_OBJECT.
Referenced by Botan::Certificate_Req::Certificate_Req(), Botan::PK_Verifier::check_signature(), Botan::CRL_Entry::decode_from(), Botan::X509_DN::decode_from(), Botan::Extensions::decode_from(), Botan::AlternativeName::decode_from(), Botan::PKCS10_Request::PKCS10_Request(), Botan::X509_Certificate::X509_Certificate(), and Botan::X509_CRL::X509_CRL().
void Botan::BER_Decoder::push_back | ( | const BER_Object & | obj | ) |
BER_Decoder & Botan::BER_Decoder::raw_bytes | ( | MemoryRegion< byte > & | out | ) |
Definition at line 173 of file ber_dec.cpp.
References Botan::MemoryRegion< T >::clear(), and Botan::MemoryRegion< T >::push_back().
Referenced by Botan::DER_Encoder::add_object(), Botan::X509_DN::decode_from(), Botan::AlgorithmIdentifier::decode_from(), Botan::Attribute::decode_from(), Botan::EAC1_1_gen_CVC< EAC1_1_Req >::decode_info(), Botan::EAC1_1_ADO::EAC1_1_ADO(), Botan::DER_Encoder::encode_if(), Botan::DER_Encoder::end_cons(), Botan::EAC1_1_ADO::get_car(), Botan::EAC1_1_CVC::get_chat_value(), Botan::EAC1_1_Req::operator==(), Botan::DER_Encoder::raw_bytes(), and Botan::X509_Object::X509_Object().
BER_Decoder Botan::BER_Decoder::start_cons | ( | ASN1_Tag | type_tag, |
ASN1_Tag | class_tag = UNIVERSAL |
||
) |
Definition at line 238 of file ber_dec.cpp.
References Botan::BER_Object::assert_is_a(), Botan::CONSTRUCTED, Botan::MemoryRegion< T >::size(), and Botan::BER_Object::value.
Referenced by Botan::DL_Group::BER_decode(), Botan::CMS_Encoder::can_compress_with(), Botan::PK_Verifier::check_signature(), Botan::CRL_Entry::decode_from(), Botan::X509_DN::decode_from(), Botan::AlgorithmIdentifier::decode_from(), Botan::Attribute::decode_from(), Botan::Extensions::decode_from(), Botan::AlternativeName::decode_from(), Botan::EAC1_1_gen_CVC< EAC1_1_Req >::decode_info(), Botan::EAC1_1_ADO::EAC1_1_ADO(), Botan::EC_Group::EC_Group(), Botan::EC_PrivateKey::EC_PrivateKey(), Botan::ECDSA_Signature::ECDSA_Signature(), Botan::EAC1_1_ADO::get_car(), Botan::EAC1_1_CVC::get_chat_value(), Botan::IF_Scheme_PublicKey::IF_Scheme_PublicKey(), Botan::Cert_Extension::Issuer_Alternative_Name::Issuer_Alternative_Name(), Botan::CMS_Decoder::layer_info(), Botan::X509::load_key(), Botan::EAC1_1_Req::operator==(), Botan::DER_Encoder::start_explicit(), Botan::Cert_Extension::Subject_Key_ID::Subject_Key_ID(), Botan::X509_Certificate::X509_Certificate(), and Botan::X509_Object::X509_Object().
BER_Decoder & Botan::BER_Decoder::verify_end | ( | ) |
Definition at line 163 of file ber_dec.cpp.
References Botan::NO_OBJECT.
Referenced by Botan::DL_Group::BER_decode(), Botan::X509_DN::decode_from(), Botan::Extensions::decode_from(), Botan::AlternativeName::decode_from(), decode_optional(), Botan::EAC1_1_ADO::EAC1_1_ADO(), Botan::EC_Group::EC_Group(), Botan::ECDSA_Signature::ECDSA_Signature(), Botan::EAC1_1_CVC::get_chat_value(), Botan::IF_Scheme_PublicKey::IF_Scheme_PublicKey(), Botan::X509::load_key(), Botan::EAC1_1_Req::operator==(), Botan::PKCS10_Request::PKCS10_Request(), Botan::X509_Certificate::X509_Certificate(), Botan::X509_CRL::X509_CRL(), and Botan::X509_Object::X509_Object().