Orbit Framework
An ultra-modern, asynchronous, cross-platform C++ Web Framework.
Loading...
Searching...
No Matches
TlsContext.hpp
Go to the documentation of this file.
1#pragma once
2#include <string>
3#include <stdexcept>
4#include <openssl/ssl.h>
5#include <openssl/err.h>
7
8namespace network {
9
11public:
12 TlsContext(const std::string& cert_file, const std::string& key_file, config::HttpVersion http_version);
14
15 // Delete copy semantics
16 TlsContext(const TlsContext&) = delete;
17 TlsContext& operator=(const TlsContext&) = delete;
18
19 SSL_CTX* get() const { return ctx_; }
20 config::HttpVersion get_http_version() const { return http_version_; }
21
22private:
23 SSL_CTX* ctx_{nullptr};
25};
26
28public:
31
34
35 SSL_CTX* get() const { return ctx_; }
36
37private:
38 SSL_CTX* ctx_{nullptr};
39};
40
41} // namespace network
Definition TlsContext.hpp:27
~ClientTlsContext()
Definition TlsContext.cpp:92
SSL_CTX * get() const
Definition TlsContext.hpp:35
ClientTlsContext()
Definition TlsContext.cpp:80
ClientTlsContext & operator=(const ClientTlsContext &)=delete
ClientTlsContext(const ClientTlsContext &)=delete
Definition TlsContext.hpp:10
TlsContext & operator=(const TlsContext &)=delete
TlsContext(const TlsContext &)=delete
config::HttpVersion get_http_version() const
Definition TlsContext.hpp:20
~TlsContext()
Definition TlsContext.cpp:74
SSL_CTX * get() const
Definition TlsContext.hpp:19
HttpVersion
Definition Config.hpp:12
Definition ResponseWriter.hpp:7