Botan 2.1.0 Crypto and TLS for C++11

- Main Page
- Namespaces
- Classes
- Files

- File List
- File Members

asn1_alt_name.h
Go to the documentation of this file.
1 /*
2 * Common ASN.1 Objects
3 * (C) 1999-2007 Jack Lloyd
4 * 2007 Yves Jerschow
5 *
6 * Botan is released under the Simplified BSD License (see license.txt)
7 */
8
9 #ifndef BOTAN_ASN1_ALT_NAME_H__
10 #define BOTAN_ASN1_ALT_NAME_H__
11
12 #include <botan/asn1_obj.h>
13 #include <botan/asn1_str.h>
14 #include <botan/asn1_oid.h>
15 #include <map>
16
17 namespace Botan {
18
19 /**
20 * Alternative Name
21 */
22 class BOTAN_DLL AlternativeName final : public ASN1_Object
23 {
24 public:
25 void encode_into(class DER_Encoder&) const override;
26 void decode_from(class BER_Decoder&) override;
27
28 std::multimap<std::string, std::string> contents() const;
29
30 void add_attribute(const std::string&, const std::string&);
31 std::multimap<std::string, std::string> get_attributes() const;
32
33 void add_othername(const OID&, const std::string&, ASN1_Tag);
34 std::multimap<OID, ASN1_String> get_othernames() const;
35
36 bool has_items() const;
37
38 AlternativeName(const std::string& = "", const std::string& = "",
39 const std::string& = "", const std::string& = "");
40 private:
41 std::multimap<std::string, std::string> m_alt_info;
42 std::multimap<OID, ASN1_String> m_othernames;
43 };
44
45 }
46
47 #endif
Botan::ASN1_Object
Definition: asn1_obj.h:61
Botan::DER_Encoder
Definition: der_enc.h:22
Botan::ASN1_Tag
ASN1_Tag
Definition: asn1_obj.h:22
Botan
Definition: alg_id.cpp:13
Botan::OID
Definition: asn1_oid.h:20
Botan::BER_Decoder
Definition: ber_dec.h:19
Botan::AlternativeName
Definition: asn1_alt_name.h:22