25 #include "./internal/export.hpp"
27 #include <proton/ssl.h>
34 template <
class T>
class factory;
40 ssl(pn_ssl_t* s) : object_(s) {}
60 NEW = PN_SSL_RESUME_NEW,
68 PN_CPP_EXTERN std::string cipher()
const;
72 PN_CPP_EXTERN std::string protocol()
const;
75 PN_CPP_EXTERN
int ssf()
const;
78 PN_CPP_EXTERN std::string remote_subject()
const;
81 PN_CPP_EXTERN
void resume_session_id(
const std::string& session_id);
91 friend class internal::factory<
ssl>;
104 PN_CPP_EXTERN
ssl_certificate(
const std::string &certdb_main,
const std::string &certdb_extra);
107 PN_CPP_EXTERN
ssl_certificate(
const std::string &certdb_main,
const std::string &certdb_extra,
const std::string &passwd);
111 std::string certdb_main_;
112 std::string certdb_extra_;
122 class ssl_domain_impl;
129 PN_CPP_EXTERN ssl_domain(
const ssl_domain&);
130 PN_CPP_EXTERN ssl_domain& operator=(
const ssl_domain&);
131 PN_CPP_EXTERN ~ssl_domain();
134 ssl_domain(
bool is_server);
135 pn_ssl_domain_t *pn_domain();
138 ssl_domain_impl *impl_;
154 const std::string &advertise_db = std::string(),
164 using internal::ssl_domain::pn_domain;
189 using internal::ssl_domain::pn_domain;
198 #endif // PROTON_SSL_HPP