]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
dnsdist: protobuf, also set outgoingQueries field 15298/head
authorCharles-Henri Bruyand <charles-henri.bruyand@open-xchange.com>
Thu, 13 Mar 2025 12:26:57 +0000 (13:26 +0100)
committerCharles-Henri Bruyand <charles-henri.bruyand@open-xchange.com>
Thu, 13 Mar 2025 12:26:57 +0000 (13:26 +0100)
pdns/dnsdistdist/dnsdist-protobuf.cc
regression-tests.dnsdist/test_Protobuf.py

index 88824c70fbdd4aee3140a57cce3524e5d2f739f0..6c4c5092d9d047deab1bcfc6fc62966a7c4663fb 100644 (file)
@@ -182,6 +182,7 @@ void DNSDistProtoBufMessage::serialize(std::string& data) const
 
   if (d_dr != nullptr) {
     msg.setPacketCacheHit(d_dr->ids.cacheHit);
+    msg.setOutgoingQueries((d_dr->ids.cacheHit || d_dr->ids.selfGenerated) ? 0 : 1);
   }
   msg.startResponse();
   if (d_queryTime) {
index 8c255d114abb7d7dd1d909cf8f5f3cdd6b755065..77cc97d9417643bd1dd40c5f85c7b94bf75155c7 100644 (file)
@@ -591,6 +591,8 @@ class TestProtobufCacheHit(DNSDistProtobufTest):
         self.checkProtobufResponse(msg, dnsmessage_pb2.PBDNSMessage.UDP, response)
         self.assertTrue(msg.HasField('packetCacheHit'))
         self.assertFalse(msg.packetCacheHit)
+        self.assertTrue(msg.HasField('outgoingQueries'))
+        self.assertEqual(msg.outgoingQueries, 1)
 
         # now shoud be a cache hit
         (_, receivedResponse) = self.sendUDPQuery(query, response)
@@ -606,6 +608,8 @@ class TestProtobufCacheHit(DNSDistProtobufTest):
         self.checkProtobufResponse(msg, dnsmessage_pb2.PBDNSMessage.UDP, response)
         self.assertTrue(msg.HasField('packetCacheHit'))
         self.assertTrue(msg.packetCacheHit)
+        self.assertTrue(msg.HasField('outgoingQueries'))
+        self.assertEqual(msg.outgoingQueries, 0)
 
 class TestProtobufMetaDOH(DNSDistProtobufTest):