From: Mark Karpilovskij Date: Mon, 12 Mar 2018 13:44:48 +0000 (+0100) Subject: nameserver: do not solve answer if it was already solved X-Git-Tag: v2.7.0~161 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bc52efb7b8d6de62d1c33092dbb8890bd2e00f0a;p=thirdparty%2Fknot-dns.git nameserver: do not solve answer if it was already solved --- diff --git a/src/knot/nameserver/internet.c b/src/knot/nameserver/internet.c index 557689c11f..56efa08852 100644 --- a/src/knot/nameserver/internet.c +++ b/src/knot/nameserver/internet.c @@ -418,6 +418,11 @@ static int solve_name(int state, knot_pkt_t *pkt, knotd_qdata_t *qdata) static int solve_answer(int state, knot_pkt_t *pkt, knotd_qdata_t *qdata, void *ctx) { + /* Do not solve if already solved, e.g. in a module. */ + if (state == KNOTD_IN_STATE_HIT) { + return state; + } + /* Get answer to QNAME. */ state = solve_name(state, pkt, qdata);