]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
Deserialize bool variables as bool. 15864/head
authorMiod Vallat <miod.vallat@powerdns.com>
Mon, 18 Aug 2025 07:40:30 +0000 (09:40 +0200)
committerMiod Vallat <miod.vallat@powerdns.com>
Mon, 18 Aug 2025 08:16:03 +0000 (10:16 +0200)
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
modules/lmdbbackend/lmdbbackend.cc

index bfac4816b30c9510399e8f39aafce362b7e5cb28..eb111ae7dd743e9be704265b1cd780e23d976cd2 100644 (file)
@@ -1072,14 +1072,16 @@ static inline size_t deserializeRRFromBuffer(const string_view& str, LMDBBackend
   if (str.size() < serialize_prefix_size + len + serialize_trailing_size) {
     return 0;
   }
+  // NOLINTBEGIN(cppcoreguidelines-pro-bounds-pointer-arithmetic): due to the above size check, this is safe
   data += sizeof(len);
   lrr.content.assign(data, len); // len bytes
   data += len;
   memcpy(&lrr.ttl, data, sizeof(uint32_t));
   data += sizeof(uint32_t);
-  lrr.auth = *data++;
-  lrr.disabled = *data++;
+  lrr.auth = *data++ != 0;
+  lrr.disabled = *data++ != 0;
   lrr.hasOrderName = *data++ != 0;
+  // NOLINTEND(cppcoreguidelines-pro-bounds-pointer-arithmetic)
   lrr.wildcardname.clear();
 
   return data - str.data();