diff -U2 -r /var/lib/copr-rpmbuild/results/i2pd-git/upstream-unpacked/Source0/i2pd-openssl/libi2pd/Streaming.cpp /var/lib/copr-rpmbuild/results/i2pd-git/srpm-unpacked/i2pd-openssl.tar.gz-extract/i2pd-openssl/libi2pd/Streaming.cpp --- /var/lib/copr-rpmbuild/results/i2pd-git/upstream-unpacked/Source0/i2pd-openssl/libi2pd/Streaming.cpp 2026-08-17 01:33:50.000000000 +0000 +++ /var/lib/copr-rpmbuild/results/i2pd-git/srpm-unpacked/i2pd-openssl.tar.gz-extract/i2pd-openssl/libi2pd/Streaming.cpp 2026-08-17 00:39:54.000000000 +0000 @@ -2163,5 +2163,5 @@ m_PendingIncomingStreams.clear (); { - std::lock_guard l(m_StreamsMutex); + std::unique_lock l(m_StreamsMutex); for (auto it: m_Streams) it.second->Terminate (false); // we delete here @@ -2327,5 +2327,5 @@ { auto s = std::make_shared (m_Owner->GetService (), *this, remote, port); - std::lock_guard l(m_StreamsMutex); + std::unique_lock l(m_StreamsMutex); m_Streams.emplace (s->GetRecvStreamID (), s); return s; @@ -2341,5 +2341,5 @@ { auto s = std::make_shared (m_Owner->GetService (), *this); - std::lock_guard l(m_StreamsMutex); + std::unique_lock l(m_StreamsMutex); m_Streams.emplace (s->GetRecvStreamID (), s); m_IncomingStreams.emplace (receiveStreamID, s); @@ -2351,5 +2351,5 @@ if (stream) { - std::lock_guard l(m_StreamsMutex); + std::unique_lock l(m_StreamsMutex); m_Streams.erase (stream->GetRecvStreamID ()); if (stream->IsIncoming ()) diff -U2 -r /var/lib/copr-rpmbuild/results/i2pd-git/upstream-unpacked/Source0/i2pd-openssl/libi2pd_client/ClientContext.cpp /var/lib/copr-rpmbuild/results/i2pd-git/srpm-unpacked/i2pd-openssl.tar.gz-extract/i2pd-openssl/libi2pd_client/ClientContext.cpp --- /var/lib/copr-rpmbuild/results/i2pd-git/upstream-unpacked/Source0/i2pd-openssl/libi2pd_client/ClientContext.cpp 2026-08-17 01:33:50.000000000 +0000 +++ /var/lib/copr-rpmbuild/results/i2pd-git/srpm-unpacked/i2pd-openssl.tar.gz-extract/i2pd-openssl/libi2pd_client/ClientContext.cpp 2026-08-17 00:39:54.000000000 +0000 @@ -1027,6 +1027,5 @@ if (port) { - auto address = section.second.get (TORRENTS_TUNNEL_RPC_ADDRESS, "127.0.0.1"); - auto server = CreateTorrentsRPCServer (address, port); + auto server = CreateTorrentsRPCServer (port); if (server) { @@ -1236,11 +1235,10 @@ } - std::shared_ptr ClientContext::CreateTorrentsRPCServer ( - std::string_view address, uint16_t port) + std::shared_ptr ClientContext::CreateTorrentsRPCServer (uint16_t port) { std::shared_ptr server; try { - server = std::make_shared(address, port); + server = std::make_shared(port); } catch(std::exception& ex) diff -U2 -r /var/lib/copr-rpmbuild/results/i2pd-git/upstream-unpacked/Source0/i2pd-openssl/libi2pd_client/ClientContext.h /var/lib/copr-rpmbuild/results/i2pd-git/srpm-unpacked/i2pd-openssl.tar.gz-extract/i2pd-openssl/libi2pd_client/ClientContext.h --- /var/lib/copr-rpmbuild/results/i2pd-git/upstream-unpacked/Source0/i2pd-openssl/libi2pd_client/ClientContext.h 2026-08-17 01:33:50.000000000 +0000 +++ /var/lib/copr-rpmbuild/results/i2pd-git/srpm-unpacked/i2pd-openssl.tar.gz-extract/i2pd-openssl/libi2pd_client/ClientContext.h 2026-08-17 00:39:54.000000000 +0000 @@ -78,5 +78,4 @@ const char TORRENTS_TUNNEL_RPC_PORT[] = "rpcport"; const char TORRENTS_TUNNEL_RPC_PATH[] = "rpcpath"; - const char TORRENTS_TUNNEL_RPC_ADDRESS[] = "rpcaddress"; class ClientContext @@ -153,5 +152,5 @@ void AddLocalDestination (std::shared_ptr localDestination); - std::shared_ptr CreateTorrentsRPCServer (std::string_view address, uint16_t port); + std::shared_ptr CreateTorrentsRPCServer (uint16_t port); private: diff -U2 -r /var/lib/copr-rpmbuild/results/i2pd-git/upstream-unpacked/Source0/i2pd-openssl/libi2pd_client/TorrentsRPC.cpp /var/lib/copr-rpmbuild/results/i2pd-git/srpm-unpacked/i2pd-openssl.tar.gz-extract/i2pd-openssl/libi2pd_client/TorrentsRPC.cpp --- /var/lib/copr-rpmbuild/results/i2pd-git/upstream-unpacked/Source0/i2pd-openssl/libi2pd_client/TorrentsRPC.cpp 2026-08-17 01:33:50.000000000 +0000 +++ /var/lib/copr-rpmbuild/results/i2pd-git/srpm-unpacked/i2pd-openssl.tar.gz-extract/i2pd-openssl/libi2pd_client/TorrentsRPC.cpp 2026-08-17 00:39:54.000000000 +0000 @@ -186,7 +186,7 @@ } - TorrentsRPCServer::TorrentsRPCServer (std::string_view address, uint16_t port): + TorrentsRPCServer::TorrentsRPCServer (uint16_t port): RunnableServiceWithWork ("TRPC"), m_Acceptor (GetService (), - boost::asio::ip::tcp::endpoint (boost::asio::ip::make_address (address), port)) + boost::asio::ip::tcp::endpoint (boost::asio::ip::make_address ("127.0.0.1"), port)) { } diff -U2 -r /var/lib/copr-rpmbuild/results/i2pd-git/upstream-unpacked/Source0/i2pd-openssl/libi2pd_client/TorrentsRPC.h /var/lib/copr-rpmbuild/results/i2pd-git/srpm-unpacked/i2pd-openssl.tar.gz-extract/i2pd-openssl/libi2pd_client/TorrentsRPC.h --- /var/lib/copr-rpmbuild/results/i2pd-git/upstream-unpacked/Source0/i2pd-openssl/libi2pd_client/TorrentsRPC.h 2026-08-17 01:33:50.000000000 +0000 +++ /var/lib/copr-rpmbuild/results/i2pd-git/srpm-unpacked/i2pd-openssl.tar.gz-extract/i2pd-openssl/libi2pd_client/TorrentsRPC.h 2026-08-17 00:39:54.000000000 +0000 @@ -51,5 +51,5 @@ public: - TorrentsRPCServer (std::string_view address, uint16_t port); + TorrentsRPCServer (uint16_t port); auto& GetService () { return GetIOService (); }