Skip to content

Commit

Permalink
Merge pull request #260 from wessels/fix-mem-leak-from-ldns_pkt_all
Browse files Browse the repository at this point in the history
ldns_pkt_all() clones RRs which need to be freed with ldns_rr_list_de…
  • Loading branch information
jelu authored Mar 7, 2022
2 parents 1c13b48 + a8925a7 commit ae04202
Showing 1 changed file with 6 additions and 6 deletions.
12 changes: 6 additions & 6 deletions src/network.c
Original file line number Diff line number Diff line change
Expand Up @@ -958,7 +958,7 @@ void network_pkt2(const char* descr, my_bpftimeval ts, const pcap_thread_packet_
for (i = 0, n = ldns_rr_list_rr_count(rrs); i < n; i++) {
ldns_rr* rr = ldns_rr_list_rr(rrs, i);
if (!rr) {
ldns_rr_list_free(rrs);
ldns_rr_list_deep_free(rrs);
ldns_pkt_free(lpkt);
ldns_buffer_free(buf);
tcpstate_discard(tcpstate, "failed to get RR");
Expand All @@ -967,7 +967,7 @@ void network_pkt2(const char* descr, my_bpftimeval ts, const pcap_thread_packet_

ldns_buffer_clear(buf);
if (ldns_rdf2buffer_str(buf, ldns_rr_owner(rr)) != LDNS_STATUS_OK) {
ldns_rr_list_free(rrs);
ldns_rr_list_deep_free(rrs);
ldns_pkt_free(lpkt);
ldns_buffer_free(buf);
tcpstate_discard(tcpstate, "failed to get RR");
Expand Down Expand Up @@ -1003,7 +1003,7 @@ void network_pkt2(const char* descr, my_bpftimeval ts, const pcap_thread_packet_
}
}
}
ldns_rr_list_free(rrs);
ldns_rr_list_deep_free(rrs);
ldns_buffer_free(buf);

/*
Expand Down Expand Up @@ -1623,15 +1623,15 @@ void network_pkt(const char* descr, my_bpftimeval ts, unsigned pf,
for (i = 0, n = ldns_rr_list_rr_count(rrs); i < n; i++) {
ldns_rr* rr = ldns_rr_list_rr(rrs, i);
if (!rr) {
ldns_rr_list_free(rrs);
ldns_rr_list_deep_free(rrs);
ldns_buffer_free(buf);
tcpstate_discard(tcpstate, "failed to get RR");
goto network_pkt_end;
}

ldns_buffer_clear(buf);
if (ldns_rdf2buffer_str(buf, ldns_rr_owner(rr)) != LDNS_STATUS_OK) {
ldns_rr_list_free(rrs);
ldns_rr_list_deep_free(rrs);
ldns_buffer_free(buf);
tcpstate_discard(tcpstate, "failed to get RR");
goto network_pkt_end;
Expand Down Expand Up @@ -1666,7 +1666,7 @@ void network_pkt(const char* descr, my_bpftimeval ts, unsigned pf,
}
}
}
ldns_rr_list_free(rrs);
ldns_rr_list_deep_free(rrs);
ldns_buffer_free(buf);

/*
Expand Down

0 comments on commit ae04202

Please sign in to comment.