#ifndef LIBDCP_CERTIFICATES_H #define LIBDCP_CERTIFICATES_H #include #include #include #include #include class certificates; namespace libdcp { class Certificate : public boost::noncopyable { public: Certificate (X509 *); ~Certificate (); std::string certificate () const; std::string issuer () const; std::string serial () const; std::string subject () const; static std::string name_for_xml (std::string const &); private: X509* _certificate; }; class CertificateChain { public: CertificateChain () {} CertificateChain (std::string const &); boost::shared_ptr root () const; boost::shared_ptr leaf () const; std::list > leaf_to_root () const; private: friend class ::certificates; std::list > _certificates; }; } #endif