From 38d854e6f47fd26bb7e047ade5bc1054c2f066ab Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Adrien=20B=C3=A9raud?= <adrien.beraud@savoirfairelinux.com>
Date: Thu, 25 Apr 2019 22:11:20 -0400
Subject: [PATCH] dhtrunner: read correct size from buffer

---
 src/dhtrunner.cpp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/dhtrunner.cpp b/src/dhtrunner.cpp
index d3ca82a0..7583db41 100644
--- a/src/dhtrunner.cpp
+++ b/src/dhtrunner.cpp
@@ -474,7 +474,7 @@ DhtRunner::loop_()
             if (clock::now() - pck.received > RX_QUEUE_MAX_DELAY)
                 dropped++;
             else
-                wakeup = dht->periodic(pck.data.data(), pck.data.size()-1, pck.from);
+                wakeup = dht->periodic(pck.data.data(), pck.data.size(), pck.from);
             received.pop();
         }
     } else {
@@ -634,7 +634,7 @@ DhtRunner::startNetwork(const SockAddr sin4, const SockAddr sin6)
                                 std::cerr << "Dropping packet: queue is full!" << std::endl;
                                 rcv.pop();
                             }
-                            rcv.emplace(ReceivedPacket {Blob {buf.begin(), buf.begin()+rc+1}, SockAddr(from, from_len), clock::now()});
+                            rcv.emplace(ReceivedPacket {Blob {buf.begin(), buf.begin()+rc}, SockAddr(from, from_len), clock::now()});
                         }
                         cv.notify_all();
                     } else if (rc == -1) {
-- 
GitLab