diff --git a/doc/Changelog b/doc/Changelog index 130aea84e..0a6f6d2ac 100644 --- a/doc/Changelog +++ b/doc/Changelog @@ -1,5 +1,6 @@ 9 April 2013: Wouter - updated iana portlist. + - Fix crash in previous private address fixup of 22 March. 28 March 2013: Wouter - Make reverse zones easier by documenting the nodefault statements diff --git a/iterator/iter_priv.c b/iterator/iter_priv.c index 8f60489c3..51f3e2ea2 100644 --- a/iterator/iter_priv.c +++ b/iterator/iter_priv.c @@ -225,7 +225,8 @@ remove_rr(const char* str, ldns_buffer* pkt, struct rrset_parse* rrset, rrset->rr_last = prev; rrset->rr_count --; rrset->size -= (*rr)->size; - (*rr) = (*rr)->next; + /* rr struct still exists, but is unlinked, so that in the for loop + * the rr->next works fine to continue. */ return rrset->rr_count == 0; } diff --git a/testdata/iter_privaddr.rpl b/testdata/iter_privaddr.rpl index 4b1780874..d0f63c9ab 100644 --- a/testdata/iter_privaddr.rpl +++ b/testdata/iter_privaddr.rpl @@ -173,6 +173,7 @@ toss.example.com. IN A SECTION ANSWER toss.example.com. IN A 10.20.30.40 toss.example.com. IN A 1.2.3.4 +toss.example.com. IN A 10.20.30.41 SECTION AUTHORITY example.com. IN NS ns.example.com. SECTION ADDITIONAL