LogDnsLogThread *td = (LogDnsLogThread *)thread_data;
DNSTransaction *tx = txptr;
-
- json_t *js = CreateJSONHeader((Packet *)p, 1, "dns");//TODO const
- if (unlikely(js == NULL))
- return TM_ECODE_OK;
+ json_t *js;
DNSQueryEntry *query = NULL;
TAILQ_FOREACH(query, &tx->query_list, next) {
+ js = CreateJSONHeader((Packet *)p, 1, "dns");
+ if (unlikely(js == NULL))
+ return TM_ECODE_OK;
+
LogQuery(td, js, tx, query);
+
+ json_decref(js);
}
+ js = CreateJSONHeader((Packet *)p, 0, "dns");
+ if (unlikely(js == NULL))
+ return TM_ECODE_OK;
+
LogAnswers(td, js, tx);
json_decref(js);