From 1f7d1a00ff8c2610239819198deda8f0f6697acb Mon Sep 17 00:00:00 2001 From: "W.C.A. Wijngaards" Date: Thu, 10 Dec 2020 08:19:07 +0100 Subject: [PATCH] Fix for #368: dnstap does not log the DNS message ID for FORWARDER_QUERY --- services/outside_network.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/services/outside_network.c b/services/outside_network.c index 4315eaf1b..04a64d59f 100644 --- a/services/outside_network.c +++ b/services/outside_network.c @@ -2232,10 +2232,14 @@ pending_tcp_query(struct serviced_query* sq, sldns_buffer* packet, #ifdef USE_DNSTAP if(sq->outnet->dtenv && (sq->outnet->dtenv->log_resolver_query_messages || - sq->outnet->dtenv->log_forwarder_query_messages)) + sq->outnet->dtenv->log_forwarder_query_messages)) { + /* use w->pkt, because it has the ID value */ + sldns_buffer tmp; + sldns_buffer_init_frm_data(&tmp, w->pkt, w->pkt_len); dt_msg_send_outside_query(sq->outnet->dtenv, &sq->addr, &pend->pi->addr, comm_tcp, sq->zone, - sq->zonelen, packet); + sq->zonelen, &tmp); + } #endif } else { /* queue up */