From: Mark Andrews Date: Tue, 30 Oct 2001 01:56:13 +0000 (+0000) Subject: pullup: X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=845c6ab084d996a58992a9ee2296afa3eefec141;p=thirdparty%2Fbind9.git pullup: 1074. [bug] Running out of memory in dump_rdataset() could cause an assertion failure. [RT #1946] --- diff --git a/CHANGES b/CHANGES index 04a877417f8..bdaf878063a 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +1074. [bug] Running out of memory in dump_rdataset() could + cause an assertion failure. [RT #1946] + 1057. [bug] Reloading the server after adding a "file" clause to a zone statement could cause the server to crash due to a typo in change 1016. diff --git a/lib/dns/masterdump.c b/lib/dns/masterdump.c index 555abcb9881..82b08266c1d 100644 --- a/lib/dns/masterdump.c +++ b/lib/dns/masterdump.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: masterdump.c,v 1.38.2.3 2001/03/07 23:33:18 bwelling Exp $ */ +/* $Id: masterdump.c,v 1.38.2.4 2001/10/30 01:56:13 marka Exp $ */ #include @@ -616,11 +616,11 @@ dump_rdataset(isc_mem_t *mctx, dns_name_t *name, dns_rdataset_t *rdataset, if (result != ISC_R_NOSPACE) break; - isc_mem_put(mctx, buffer->base, buffer->length); newlength = buffer->length * 2; newmem = isc_mem_get(mctx, newlength); if (newmem == NULL) return (ISC_R_NOMEMORY); + isc_mem_put(mctx, buffer->base, buffer->length); isc_buffer_init(buffer, newmem, newlength); } if (result != ISC_R_SUCCESS)