From: Marek Vavrusa Date: Wed, 4 May 2016 00:17:53 +0000 (-0700) Subject: lib/validate: fixed memory bug X-Git-Tag: v1.0.0~26 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=797a6c43a0e7095f761a048fbf26c0f12d149acf;p=thirdparty%2Fknot-resolver.git lib/validate: fixed memory bug this code used memory pool of source packet instead of the answer, this could result in invalidated memory read if the memory occupied by source packet was rewritten --- diff --git a/lib/layer/validate.c b/lib/layer/validate.c index e7364ef90..bf5bafaf3 100644 --- a/lib/layer/validate.c +++ b/lib/layer/validate.c @@ -484,7 +484,7 @@ static int validate(knot_layer_t *ctx, knot_pkt_t *pkt) const knot_pktsection_t *auth = knot_pkt_section(pkt, KNOT_AUTHORITY); for (unsigned i = 0; i < auth->count; ++i) { const knot_rrset_t *rr = knot_pkt_rr(auth, i); - kr_rrarray_add(&req->authority, rr, &pkt->mm); + kr_rrarray_add(&req->authority, rr, &req->answer->mm); } }