From 0caa0d87c6be593f5903fe2876364c2f763bf947 Mon Sep 17 00:00:00 2001 From: Jan Kadlec <jan.kadlec@nic.cz> Date: Wed, 13 Feb 2013 15:07:14 +0100 Subject: [PATCH] Fixed wrong return value check in knot_response_try_add_rrset. --- src/libknot/packet/response.c | 14 ++++++++++---- src/libknot/rrset.c | 2 +- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/src/libknot/packet/response.c b/src/libknot/packet/response.c index 2a9024f75..91e79d016 100644 --- a/src/libknot/packet/response.c +++ b/src/libknot/packet/response.c @@ -525,14 +525,20 @@ dbg_response_exec( param.wire_pos = 0; uint16_t rr_count = 0; //TODO size - int rrs = knot_rrset_to_wire(rrset, pos, &size, max_size, + int ret = knot_rrset_to_wire(rrset, pos, &size, max_size, &rr_count, ¶m); + + if (ret != KNOT_EOK) { + dbg_response("Failed to convert RRSet to wire. (%s).\n,", + knot_strerror(ret)); + return ret; + } - if (rrs >= 0) { + if (rr_count >= 0) { rrsets[(*rrset_count)++] = rrset; resp->size += size; dbg_response_verb("RRset added, size: %zu, RRs: %d, total " - "size of response: %zu\n\n", size, rrs, + "size of response: %zu\n\n", size, rr_count, resp->size); } else if (tc) { dbg_response_verb("Setting TC bit.\n"); @@ -540,7 +546,7 @@ dbg_response_exec( knot_wire_set_tc(resp->wireformat); } - return rrs; + return rr_count; } /*----------------------------------------------------------------------------*/ diff --git a/src/libknot/rrset.c b/src/libknot/rrset.c index 355104097..dd76fbfd2 100644 --- a/src/libknot/rrset.c +++ b/src/libknot/rrset.c @@ -874,7 +874,7 @@ dbg_rrset_exec_detail( dbg_rrset_detail("Size after: %zu\n", *size); *rr_count = rrset->rdata_count; - + return KNOT_EOK; } -- GitLab