From 76f0672e633fc1a2754f24f97e933d4bb59b8aaa Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Adrien=20B=C3=A9raud?= <adrien.beraud@savoirfairelinux.com>
Date: Thu, 30 May 2019 19:30:52 -0400
Subject: [PATCH] context: add statusCallback, certificateStore

---
 include/opendht/dhtrunner.h | 2 ++
 src/dhtrunner.cpp           | 6 ++++++
 2 files changed, 8 insertions(+)

diff --git a/include/opendht/dhtrunner.h b/include/opendht/dhtrunner.h
index 84795263..ec7a07bb 100644
--- a/include/opendht/dhtrunner.h
+++ b/include/opendht/dhtrunner.h
@@ -66,6 +66,8 @@ public:
     struct Context {
         std::unique_ptr<Logger> logger {};
         std::shared_ptr<PeerDiscovery> peerDiscovery {};
+        StatusCallback statusChangedCallback {};
+        CertificateStoreQuery certificateStore {};
         Context() {}
     };
 
diff --git a/src/dhtrunner.cpp b/src/dhtrunner.cpp
index c22501ca..bd7816e4 100644
--- a/src/dhtrunner.cpp
+++ b/src/dhtrunner.cpp
@@ -114,6 +114,12 @@ DhtRunner::run(const SockAddr& local4, const SockAddr& local6, const DhtRunner::
     if (context.logger and dht_via_proxy_) {
         dht_via_proxy_->setLogger(*context.logger);
     }
+    statusCb = std::move(context.statusChangedCallback);
+    if (context.certificateStore) {
+        dht_->setLocalCertificateStore(std::move(context.certificateStore));
+        if (dht_via_proxy_)
+            dht_via_proxy_->setLocalCertificateStore(std::move(context.certificateStore));
+    }
 
     running = true;
     if (not config.threaded)
-- 
GitLab