From 0d8cd83c608c9109be4f3a87ac77b5cf110acffa Mon Sep 17 00:00:00 2001 From: Remi Gacogne Date: Wed, 29 May 2019 14:19:27 +0200 Subject: [PATCH] dumresp: Use the correct return type for recvfrom() Otherwise we can't correctly process error codes. Reported by Coverity (CID 1401645). --- pdns/dumresp.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pdns/dumresp.cc b/pdns/dumresp.cc index 354eba7461..5d457dc47f 100644 --- a/pdns/dumresp.cc +++ b/pdns/dumresp.cc @@ -202,12 +202,12 @@ try auto dh = reinterpret_cast(buffer); for(;;) { - uint16_t len = recvfrom(s.getHandle(), buffer, sizeof(buffer), 0, reinterpret_cast(&rem), &socklen); + ssize_t len = recvfrom(s.getHandle(), buffer, sizeof(buffer), 0, reinterpret_cast(&rem), &socklen); if(len < 0) unixDie("recvfrom"); - if (len < sizeof(dnsheader)) + if (static_cast(len) < sizeof(dnsheader)) unixDie("too small " + std::to_string(len)); if(dh->qr) -- 2.47.2