40 #ifndef LIBDCP_CERTIFICATE_H
41 #define LIBDCP_CERTIFICATE_H
46 #include <openssl/x509.h>
47 #include <boost/filesystem.hpp>
93 std::string
certificate (
bool with_begin_end =
false)
const;
95 std::string serial ()
const;
101 std::string
issuer ()
const;
102 std::string issuer_common_name()
const;
103 std::string issuer_organization_name()
const;
104 std::string issuer_organizational_unit_name()
const;
106 std::string subject ()
const;
107 std::string subject_common_name ()
const;
108 std::string subject_organization_name ()
const;
109 std::string subject_organizational_unit_name ()
const;
110 std::string subject_dn_qualifier()
const;
115 X509* x509 ()
const {
121 std::string public_key_digest()
const;
126 bool has_utf8_strings ()
const;
130 static std::string name_for_xml (X509_NAME *);
131 static std::string asn_to_utf8 (ASN1_STRING *);
132 static std::string get_name_part (X509_NAME *,
int);
134 X509* _certificate =
nullptr;
135 mutable RSA* _public_key =
nullptr;
141 std::ostream& operator<< (std::ostream&s,
Certificate const & c);
A wrapper for an X509 certificate.
std::string read_string(std::string)
std::string certificate(bool with_begin_end=false) const
std::string thumbprint() const
std::string issuer() const
A representation of a local time (down to the second), including its offset from GMT (equivalent to x...
Namespace for everything in libdcp.