summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorent Le Coz <louiz@louiz.org>2014-06-19 01:04:40 +0200
committerFlorent Le Coz <louiz@louiz.org>2014-06-19 01:04:40 +0200
commit77fe8b89a3a1debe59051b21776c1c6cf67a6070 (patch)
treeaf2e4b7c17223a7dd100f93666702c589563c909
parent386ac4186a750feee12b7d9b89ca37c3d16ebff4 (diff)
downloadbiboumi-77fe8b89a3a1debe59051b21776c1c6cf67a6070.tar.gz
biboumi-77fe8b89a3a1debe59051b21776c1c6cf67a6070.tar.bz2
biboumi-77fe8b89a3a1debe59051b21776c1c6cf67a6070.tar.xz
biboumi-77fe8b89a3a1debe59051b21776c1c6cf67a6070.zip
Make the Botan rng, credential_manager etc be static
This actually makes the session_manager be useful, and saves a few octets of memory for the other ones
-rw-r--r--src/network/socket_handler.cpp13
-rw-r--r--src/network/socket_handler.hpp8
2 files changed, 10 insertions, 11 deletions
diff --git a/src/network/socket_handler.cpp b/src/network/socket_handler.cpp
index a2c22e4..43a63f0 100644
--- a/src/network/socket_handler.cpp
+++ b/src/network/socket_handler.cpp
@@ -20,6 +20,12 @@
#ifdef BOTAN_FOUND
# include <botan/hex.h>
+
+Botan::AutoSeeded_RNG SocketHandler::rng;
+Permissive_Credentials_Manager SocketHandler::credential_manager;
+Botan::TLS::Policy SocketHandler::policy;
+Botan::TLS::Session_Manager_In_Memory SocketHandler::session_manager(SocketHandler::rng);
+
#endif
#ifndef UIO_FASTIOV
@@ -37,13 +43,6 @@ SocketHandler::SocketHandler(std::shared_ptr<Poller> poller):
use_tls(false),
connected(false),
connecting(false)
-#ifdef BOTAN_FOUND
- ,
- rng(),
- credential_manager(),
- policy(),
- session_manager(rng)
-#endif
{}
void SocketHandler::init_socket(const struct addrinfo* rp)
diff --git a/src/network/socket_handler.hpp b/src/network/socket_handler.hpp
index 95e38bd..b4cb6f2 100644
--- a/src/network/socket_handler.hpp
+++ b/src/network/socket_handler.hpp
@@ -253,10 +253,10 @@ private:
/**
* Botan stuff to manipulate a TLS session.
*/
- Botan::AutoSeeded_RNG rng;
- Permissive_Credentials_Manager credential_manager;
- Botan::TLS::Policy policy;
- Botan::TLS::Session_Manager_In_Memory session_manager;
+ static Botan::AutoSeeded_RNG rng;
+ static Permissive_Credentials_Manager credential_manager;
+ static Botan::TLS::Policy policy;
+ static Botan::TLS::Session_Manager_In_Memory session_manager;
/**
* We use a unique_ptr because we may not want to create the object at
* all. The Botan::TLS::Client object generates a handshake message as