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-20 21:58:31.000000000 +0000 +++ /var/lib/copr-rpmbuild/results/i2pd-git/srpm-unpacked/i2pd-openssl.tar.gz-extract/i2pd-openssl/libi2pd_client/TorrentsRPC.cpp 2026-08-20 20:49:12.000000000 +0000 @@ -271,48 +271,4 @@ } }, - { "files", [](std::shared_ptr torrent) - { - boost::json::array files; - const auto& torrentFiles = torrent->GetFiles (); - if (torrentFiles.empty ()) - { - boost::json::object file; - file["name"] = torrent->GetFullPath ().string (); - file["length"] = torrent->GetLength (); - file["bytes_completed"] = torrent->GetLength () - torrent->GetLeft (); - files.push_back (file); - } - else - for (const auto& [filePath, fileSize]: torrentFiles) - { - boost::json::object file; - file["name"] = filePath.string (); - file["length"] = fileSize; - file["bytes_completed"] = 0; // TODO: - files.push_back (file); - } - return files; - } - }, - { "wanted", [](std::shared_ptr torrent) - { - boost::json::array wanted; - size_t numFiles = torrent->GetFiles ().size (); - if (!numFiles) numFiles = 1; - wanted.resize (numFiles); - std::fill (wanted.begin(), wanted.end(), 1); - return wanted; - } - }, - { "priorities", [](std::shared_ptr torrent) - { - boost::json::array priorities; - size_t numFiles = torrent->GetFiles ().size (); - if (!numFiles) numFiles = 1; - priorities.resize (numFiles); - std::fill (priorities.begin(), priorities.end(), 0); - return priorities; - } - }, { "error", [](std::shared_ptr torrent) { return boost::json::value(0); } }, // no error { "eta", [](std::shared_ptr torrent) { return boost::json::value(600); } }, // TODO: @@ -342,8 +298,5 @@ { boost::json::object peer; - std::string flags; auto stream = it->GetStream (); - bool isIncoming = stream ? stream->IsIncoming () : false; - if (isIncoming) flags.push_back ('I'); peer["address"] = stream ? stream->GetRemoteIdentity ()->GetIdentHash ().ToBase64 ().substr (0,4) : ""; peer["port"] = TORRENT_PORT; @@ -353,10 +306,10 @@ peer["rate_to_client"] = it->GetDownloadRate (); peer["rate_to_peer"] = it->GetUploadRate (); - peer["is_incoming"] = isIncoming; + peer["is_incoming"] = stream ? stream->IsIncoming () : false; peer["client_is_choked"] = it->IsChoked (); peer["peer_is_choked"] = it->IsRemoteChoked (); peer["client_is_intersted"] = it->IsInterested (); peer["peer_is_interested"] = it->IsRemoteInterested (); - peer["flag_str"] = flags; + peer["flag_str"] = ""; // TODO: peer["progress"] = 0.5; // TODO: peers.push_back (peer);