Issue #466: Memory leak with retrying queries

(for examples with search paths).
Thanks doublez13.
This commit is contained in:
Willem Toorop 2020-03-13 22:31:01 +01:00
parent 2c51db610a
commit 3c6756d68b
3 changed files with 8 additions and 1 deletions

View File

@ -1,3 +1,7 @@
* 2020-0?-??: Version 1.6.1-rc.1
* Issue #466: Memory leak with retrying queries (for examples
with search paths). Thanks doublez13.
* 2020-02-28: Version 1.6.0 * 2020-02-28: Version 1.6.0
* Issues #457, #458, #461: New symbols with libnettle >= 3.4. * Issues #457, #458, #461: New symbols with libnettle >= 3.4.
Thanks hanvinke & kometchtech for testing & reporting. Thanks hanvinke & kometchtech for testing & reporting.

View File

@ -317,6 +317,9 @@ _getdns_netreq_reinit(getdns_network_req *netreq)
uint8_t *base_opt_backup; uint8_t *base_opt_backup;
size_t base_opt_rr_sz; size_t base_opt_rr_sz;
if (netreq->response && (netreq->response < netreq->wire_data ||
netreq->response > netreq->wire_data+ netreq->wire_data_sz))
GETDNS_NULL_FREE(netreq->owner->my_mf, netreq->response);
if (!netreq->query) { if (!netreq->query) {
(void) netreq_reset(netreq); (void) netreq_reset(netreq);
return; return;

View File

@ -1440,7 +1440,7 @@ static void request_cb(
dns_msg *msg = (dns_msg *)userarg; dns_msg *msg = (dns_msg *)userarg;
uint32_t qid; uint32_t qid;
getdns_return_t r = GETDNS_RETURN_GOOD; getdns_return_t r = GETDNS_RETURN_GOOD;
uint32_t n, rcode, dnssec_status; uint32_t n, rcode, dnssec_status = GETDNS_DNSSEC_INDETERMINATE;
#if defined(SERVER_DEBUG) && SERVER_DEBUG #if defined(SERVER_DEBUG) && SERVER_DEBUG
getdns_bindata *qname; getdns_bindata *qname;