diff --git a/CHANGES b/CHANGES index 2a2a763cd4..c17bfd81d0 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +2232. [bug] dns_adb_findaddrinfo() could fail and return + ISC_R_SUCCESS. [RT #17137] + 2230. [bug] We could INSIST reading a corrupted journal. [RT #17132] diff --git a/lib/dns/adb.c b/lib/dns/adb.c index 9a66ade406..0f01eed46a 100644 --- a/lib/dns/adb.c +++ b/lib/dns/adb.c @@ -15,7 +15,7 @@ * PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: adb.c,v 1.181.2.11.2.29 2007/08/28 07:19:13 tbox Exp $ */ +/* $Id: adb.c,v 1.181.2.11.2.30 2007/09/11 02:22:36 marka Exp $ */ /* * Implementation notes @@ -3459,7 +3459,9 @@ dns_adb_findaddrinfo(dns_adb_t *adb, isc_sockaddr_t *sa, port = isc_sockaddr_getport(sa); addr = new_adbaddrinfo(adb, entry, port); - if (addr != NULL) { + if (addr == NULL) { + result = ISC_R_NOMEMORY; + } else { inc_entry_refcnt(adb, entry, ISC_FALSE); *addrp = addr; }