From 15ad6ae7bd64d8d7319d75dbbb0827addd22fef2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Roman=20Smr=C5=BE?= Date: Tue, 23 May 2023 22:11:42 +0200 Subject: Message sending to identity or contact --- src/network.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'src/network.cpp') diff --git a/src/network.cpp b/src/network.cpp index 1eb33d0..929908a 100644 --- a/src/network.cpp +++ b/src/network.cpp @@ -73,6 +73,20 @@ PeerList & Server::peerList() const return p->plist; } +optional Server::peer(const Identity & identity) const +{ + scoped_lock lock(p->dataMutex); + + for (auto & peer : p->peers) { + const auto & pid = peer->identity; + if (holds_alternative(pid)) + if (std::get(pid).finalOwner().sameAs(identity)) + return peer->lpeer; + } + + return nullopt; +} + void Server::addPeer(const string & node) const { return addPeer(node, to_string(Priv::discoveryPort)); -- cgit v1.2.3