From af0bd5b0b48ec753bcd1809acdfbdfc53cb7d04f Mon Sep 17 00:00:00 2001 From: Willem Toorop Date: Mon, 30 Mar 2020 12:19:17 +0200 Subject: [PATCH] Send tcp_req_info->spool_buffer as dnstap CLIENT_RESPONSE When tcp_req_info exists. This fixes that dnstap CLIENT_RESPONSE messages did not contain the response message when answering on statful transport for uncached responses. --- util/netevent.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/util/netevent.c b/util/netevent.c index e90987549..f7bb9b897 100644 --- a/util/netevent.c +++ b/util/netevent.c @@ -3153,18 +3153,21 @@ comm_point_send_reply(struct comm_reply *repinfo) &repinfo->addr, repinfo->c->type, repinfo->c->buffer); #endif } else { +#ifdef USE_DNSTAP + if(repinfo->c->tcp_parent->dtenv != NULL && + repinfo->c->tcp_parent->dtenv->log_client_response_messages) + dt_msg_send_client_response(repinfo->c->tcp_parent->dtenv, + &repinfo->addr, repinfo->c->type, + ( repinfo->c->tcp_req_info + ? repinfo->c->tcp_req_info->spool_buffer + : repinfo->c->buffer )); +#endif if(repinfo->c->tcp_req_info) { tcp_req_info_send_reply(repinfo->c->tcp_req_info); } else { comm_point_start_listening(repinfo->c, -1, repinfo->c->tcp_timeout_msec); } -#ifdef USE_DNSTAP - if(repinfo->c->tcp_parent->dtenv != NULL && - repinfo->c->tcp_parent->dtenv->log_client_response_messages) - dt_msg_send_client_response(repinfo->c->tcp_parent->dtenv, - &repinfo->addr, repinfo->c->type, repinfo->c->buffer); -#endif } } -- 2.47.2