- Change TransportLayer/ASIO to store std::shared_ptr<SSLManagerInterface>
- Change TransportLayer/ASIO to call getSSLManagerCoordinator() once per connection
- ServerStatus and InitializeGlobalServerState are permitted to call getSSLManagerCoordinator()
- Add a new class called getSSLManagerCoordinator in ssl_manager.h/cpp
class SSLManagerCoordinator {
|
static SSLManagerCoordinator* get()
|
std::shared_ptr<SSLManagerInterface> getSSLManager();
|
|
void rotate();
|
|
Mutex _lock;
|
synchronized_value<std::shared_ptr<SSLManagerInterface>> _manager;
|
};
|
- Note: In this change, rotate() is a noop and will be implemented in a later change
- Implement constructor and destructor of first SSLManagerInterace by calling SLManagerInterface::create using GlobalInitializerRegisterer
- Remove global initializers for existing SSLManagers in ssl_manager_<windows/apple/openssl>.cpp
- Remove theSSLManager
|