aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/cert/x509/x509_ext.h
diff options
context:
space:
mode:
authorJack Lloyd <[email protected]>2016-03-06 05:55:23 -0500
committerJack Lloyd <[email protected]>2016-03-06 05:55:23 -0500
commitb73ecdcb0ad7199e95b4a06eb029edb49eef6a47 (patch)
treeb18b0580cc64d19f64853fb96013349c57866c73 /src/lib/cert/x509/x509_ext.h
parent27c9aeb85849b0b2808e95f50656d0a3c0aa6371 (diff)
parent6ab73e03710a93dbef18d65a84fbe1d702b7d795 (diff)
Merge GH #437 add X509_Certificate::v3_extensions
Makes it possible for an application to interpret some extension not supported by the library.
Diffstat (limited to 'src/lib/cert/x509/x509_ext.h')
-rw-r--r--src/lib/cert/x509/x509_ext.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/lib/cert/x509/x509_ext.h b/src/lib/cert/x509/x509_ext.h
index 0614b9a52..8d2dcb52b 100644
--- a/src/lib/cert/x509/x509_ext.h
+++ b/src/lib/cert/x509/x509_ext.h
@@ -67,16 +67,20 @@ class BOTAN_DLL Extensions : public ASN1_Object
void add(Certificate_Extension* extn, bool critical = false);
+ std::map<OID, std::pair<std::vector<byte>, bool>> extensions_raw() const;
+
Extensions& operator=(const Extensions&);
Extensions(const Extensions&);
+
explicit Extensions(bool st = true) : m_throw_on_unknown_critical(st) {}
- ~Extensions();
+
private:
static Certificate_Extension* get_extension(const OID&);
- std::vector<std::pair<Certificate_Extension*, bool> > m_extensions;
+ std::vector<std::pair<std::unique_ptr<Certificate_Extension>, bool>> m_extensions;
bool m_throw_on_unknown_critical;
+ std::map<OID, std::pair<std::vector<byte>, bool>> m_extensions_raw;
};
namespace Cert_Extension {