From 859d8dc9cf916a1c0da6e49aa766aba0fbe2436a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrien=20B=C3=A9raud?= <adrien.beraud@savoirfairelinux.com> Date: Fri, 24 Jan 2020 00:17:32 -0500 Subject: [PATCH] proxy server: check clientId for merging put --- src/dht_proxy_server.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/dht_proxy_server.cpp b/src/dht_proxy_server.cpp index 105c6f0d..78723117 100644 --- a/src/dht_proxy_server.cpp +++ b/src/dht_proxy_server.cpp @@ -946,7 +946,10 @@ DhtProxyServer::put(restinio::request_handle_t request, auto& sPuts = puts_[infoHash]; if (value->id == Value::INVALID_ID) { for (auto& pp : sPuts.puts) { - if (pp.second.pushToken == pushToken and pp.second.value->contentEquals(*value)) { + if (pp.second.pushToken == pushToken + and pp.second.clientId == clientId + and pp.second.value->contentEquals(*value)) + { pp.second.expireTimer->expires_at(timeout); pp.second.expireTimer->async_wait(std::bind(&DhtProxyServer::handleCancelPermamentPut, this, std::placeholders::_1, infoHash, pp.second.value->id)); -- GitLab