tool/dnc: update dnc

Change-Id: I3c790221ed78af80f88a2bb54bf2319b27235be6
diff --git a/tools/dnc/dnc.h b/tools/dnc/dnc.h
index 620f940..b9545c1 100644
--- a/tools/dnc/dnc.h
+++ b/tools/dnc/dnc.h
@@ -1,5 +1,5 @@
 /*
- *  Copyright (C) 2004-2023 Savoir-faire Linux Inc.
+ *  Copyright (C) 2023 Savoir-faire Linux Inc.
  *
  *  This program is free software: you can redistribute it and/or modify
  *  it under the terms of the GNU General Public License as published by
@@ -34,22 +34,30 @@
     // Build a server
     Dnc(const std::filesystem::path& path,
         dht::crypto::Identity identity,
-        const std::string& bootstrap);
+        const std::string& bootstrap,
+        const std::string& turn_host,
+        const std::string& turn_user,
+        const std::string& turn_pass,
+        const std::string& turn_realm);
     // Build a client
     Dnc(const std::filesystem::path& path,
         dht::crypto::Identity identity,
         const std::string& bootstrap,
         dht::InfoHash peer_id,
         const std::string& remote_host,
-        int remote_port);
+        int remote_port,
+        const std::string& turn_host = "",
+        const std::string& turn_user = "",
+        const std::string& turn_pass = "",
+        const std::string& turn_realm = "");
     ~Dnc();
     void run();
 
 private:
     std::unique_ptr<ConnectionManager> connectionManager;
     std::shared_ptr<Logger> logger;
-    tls::CertificateStore certStore;
-    IceTransportFactory iceFactory;
+    std::shared_ptr<tls::CertificateStore> certStore;
+    std::shared_ptr<IceTransportFactory> iceFactory;
     std::shared_ptr<asio::io_context> ioContext;
     std::thread ioContextRunner;