From 40f98044996bbb299a4791d31b72c970727256cc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Adrien=20B=C3=A9raud?= <adrien.beraud@savoirfairelinux.com>
Date: Fri, 8 Dec 2023 15:04:50 -0500
Subject: [PATCH] account, swarm: use Manager::getSeededRandomEngine

Change-Id: Iab25376daa1925152063b59039dfe96765cf956f
---
 src/account.cpp                     |  2 +-
 src/jamidht/conversation.cpp        | 14 +++++++-------
 src/jamidht/swarm/swarm_manager.cpp |  2 +-
 src/jamidht/swarm/swarm_manager.h   |  4 ++--
 4 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/src/account.cpp b/src/account.cpp
index ded7046ca2..ca588b5326 100644
--- a/src/account.cpp
+++ b/src/account.cpp
@@ -72,7 +72,7 @@ namespace jami {
 const std::string Account::DEFAULT_USER_AGENT = Account::getDefaultUserAgent();
 
 Account::Account(const std::string& accountID)
-    : rand(dht::crypto::getSeededRandomEngine<std::mt19937_64>())
+    : rand(Manager::instance().getSeededRandomEngine())
     , accountID_(accountID)
     , systemCodecContainer_(getSystemCodecContainer())
 {
diff --git a/src/jamidht/conversation.cpp b/src/jamidht/conversation.cpp
index 187dbe0519..b54efd5cc0 100644
--- a/src/jamidht/conversation.cpp
+++ b/src/jamidht/conversation.cpp
@@ -166,13 +166,13 @@ public:
             ioContext_ = Manager::instance().ioContext();
             fallbackTimer_ = std::make_unique<asio::steady_timer>(*ioContext_);
             swarmManager_ = std::make_shared<SwarmManager>(NodeId(shared->currentDeviceId()),
-            shared->rand,
-            [account=account_](const DeviceId& deviceId) {
-                if (auto acc = account.lock()) {
-                    return acc->isConnectedWith(deviceId);
-                }
-                return false;
-            });
+                Manager::instance().getSeededRandomEngine(),
+                [account=account_](const DeviceId& deviceId) {
+                    if (auto acc = account.lock()) {
+                        return acc->isConnectedWith(deviceId);
+                    }
+                    return false;
+                });
             swarmManager_->setMobility(shared->isMobile());
             accountId_ = shared->getAccountID();
             transferManager_ = std::make_shared<TransferManager>(shared->getAccountID(),
diff --git a/src/jamidht/swarm/swarm_manager.cpp b/src/jamidht/swarm/swarm_manager.cpp
index 837e1f1ea2..8d042ca3e2 100644
--- a/src/jamidht/swarm/swarm_manager.cpp
+++ b/src/jamidht/swarm/swarm_manager.cpp
@@ -28,7 +28,7 @@ namespace jami {
 
 using namespace swarm_protocol;
 
-SwarmManager::SwarmManager(const NodeId& id, std::mt19937_64& rand, ToConnectCb&& toConnectCb)
+SwarmManager::SwarmManager(const NodeId& id, const std::mt19937_64& rand, ToConnectCb&& toConnectCb)
     : id_(id)
     , rd(rand)
     , toConnectCb_(toConnectCb)
diff --git a/src/jamidht/swarm/swarm_manager.h b/src/jamidht/swarm/swarm_manager.h
index f568397cc1..dfa3d0c2bf 100644
--- a/src/jamidht/swarm/swarm_manager.h
+++ b/src/jamidht/swarm/swarm_manager.h
@@ -38,7 +38,7 @@ class SwarmManager : public std::enable_shared_from_this<SwarmManager>
     using OnConnectionChanged = std::function<void(bool ok)>;
 
 public:
-    explicit SwarmManager(const NodeId&, std::mt19937_64& rand, ToConnectCb&& toConnectCb);
+    explicit SwarmManager(const NodeId&, const std::mt19937_64& rand, ToConnectCb&& toConnectCb);
     ~SwarmManager();
 
     NeedSocketCb needSocketCb_;
@@ -228,7 +228,7 @@ private:
 
     const NodeId id_;
     bool isMobile_ {false};
-    std::mt19937_64& rd;
+    std::mt19937_64 rd;
     mutable std::mutex mutex;
     RoutingTable routing_table;
 
-- 
GitLab