]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
3121. [security] An authoritative name server sending a negative
authorEvan Hunt <each@isc.org>
Thu, 26 May 2011 23:11:15 +0000 (23:11 +0000)
committerEvan Hunt <each@isc.org>
Thu, 26 May 2011 23:11:15 +0000 (23:11 +0000)
                        response containing a very large RRset could
                        trigger an off-by-one error in the ncache code
                        and crash named. [RT #24650]

CHANGES
lib/dns/ncache.c

diff --git a/CHANGES b/CHANGES
index 5106dda01f1c3654e78e77c0d86e8df63f849008..1f5e9f5973220a7ba6698958fb015bf609b8308a 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,8 @@
+3121.   [security]      An authoritative name server sending a negative
+                        response containing a very large RRset could
+                        trigger an off-by-one error in the ncache code
+                        and crash named. [RT #24650]
+
 3120.  [bug]           Named could fail to validate zones listed in a DLV
                        that validated insecure without using DLV and had
                        DS records in the parent zone. [RT #24631]
index 21f8bc058e0b178fc24039c85a65450b81b76112..c6aea3437921bf0ec45bba936819523f0181339a 100644 (file)
@@ -15,7 +15,7 @@
  * PERFORMANCE OF THIS SOFTWARE.
  */
 
-/* $Id: ncache.c,v 1.52 2011/02/03 12:18:11 tbox Exp $ */
+/* $Id: ncache.c,v 1.53 2011/05/26 23:11:15 each Exp $ */
 
 /*! \file */
 
@@ -186,7 +186,7 @@ dns_ncache_addoptout(dns_message_t *message, dns_db_t *cache,
                                         */
                                        isc_buffer_availableregion(&buffer,
                                                                   &r);
-                                       if (r.length < 2)
+                                       if (r.length < 3)
                                                return (ISC_R_NOSPACE);
                                        isc_buffer_putuint16(&buffer,
                                                             rdataset->type);