]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
dnsdist: Better handling of XSK frames without any data
authorRemi Gacogne <remi.gacogne@powerdns.com>
Mon, 17 Nov 2025 11:17:30 +0000 (12:17 +0100)
committerRemi Gacogne <remi.gacogne@powerdns.com>
Mon, 17 Nov 2025 15:43:27 +0000 (16:43 +0100)
This might happen when we are creating a frame from scratch.

Signed-off-by: Remi Gacogne <remi.gacogne@powerdns.com>
pdns/dnsdistdist/xsk.cc

index 4411196594f74e02961bee459a717c9e97149542..6689335a28cb46a741b8464dc522cecff896b3c5 100644 (file)
@@ -551,6 +551,10 @@ XskSocket::XskUmem::~XskUmem()
 
 [[nodiscard]] size_t XskPacket::getDataSize() const noexcept
 {
+  const auto dataOffset = getDataOffset();
+  if (frameLength < dataOffset) {
+    return 0U;
+  }
   return frameLength - getDataOffset();
 }