Skip to content

Commit 2b6c9d6

Browse files
authored
Fix botan provider (#289)
1 parent 16e2265 commit 2b6c9d6

File tree

4 files changed

+9
-7
lines changed

4 files changed

+9
-7
lines changed

trantor/net/inner/TLSProvider.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ struct TLSProvider
165165
MsgBuffer writeBuffer_;
166166
};
167167

168-
std::unique_ptr<TLSProvider> newTLSProvider(TcpConnection* conn,
168+
std::shared_ptr<TLSProvider> newTLSProvider(TcpConnection* conn,
169169
TLSPolicyPtr policy,
170170
SSLContextPtr ctx);
171-
} // namespace trantor
171+
} // namespace trantor

trantor/net/inner/TcpConnectionImpl.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -305,7 +305,7 @@ class TcpConnectionImpl : public TcpConnection,
305305
size_t bytesReceived_{0};
306306

307307
std::unique_ptr<std::vector<char>> fileBufferPtr_;
308-
std::unique_ptr<TLSProvider> tlsProviderPtr_;
308+
std::shared_ptr<TLSProvider> tlsProviderPtr_;
309309
std::function<void(const TcpConnectionPtr &)> upgradeCallback_;
310310

311311
bool closeOnEmpty_{false};

trantor/net/inner/tlsprovider/BotanTLSProvider.cc

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
#include <botan/certstor_flatfile.h>
1919
#include <botan/x509path.h>
2020
#include <botan/tls_session_manager_memory.h>
21+
#include <memory>
2122

2223
using namespace trantor;
2324
using namespace std::placeholders;
@@ -388,11 +389,11 @@ struct BotanTLSProvider : public TLSProvider,
388389
ssize_t lastWriteSize_ = 0;
389390
};
390391

391-
std::unique_ptr<TLSProvider> trantor::newTLSProvider(TcpConnection *conn,
392+
std::shared_ptr<TLSProvider> trantor::newTLSProvider(TcpConnection *conn,
392393
TLSPolicyPtr policy,
393394
SSLContextPtr ctx)
394395
{
395-
return std::make_unique<BotanTLSProvider>(conn,
396+
return std::make_shared<BotanTLSProvider>(conn,
396397
std::move(policy),
397398
std::move(ctx));
398399
}

trantor/net/inner/tlsprovider/OpenSSLProvider.cc

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
#include <openssl/x509v3.h>
1010

1111
#include <fstream>
12+
#include <memory>
1213
#include <mutex>
1314
#include <list>
1415
#include <unordered_map>
@@ -788,11 +789,11 @@ struct OpenSSLProvider : public TLSProvider, public NonCopyable
788789
bool processedSslError_{false};
789790
};
790791

791-
std::unique_ptr<TLSProvider> trantor::newTLSProvider(TcpConnection *conn,
792+
std::shared_ptr<TLSProvider> trantor::newTLSProvider(TcpConnection *conn,
792793
TLSPolicyPtr policy,
793794
SSLContextPtr ctx)
794795
{
795-
return std::make_unique<OpenSSLProvider>(conn,
796+
return std::make_shared<OpenSSLProvider>(conn,
796797
std::move(policy),
797798
std::move(ctx));
798799
}

0 commit comments

Comments
 (0)