]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
2182. [bug] dns_dispatch_createtcp() and dispatch_createudp()
authorMark Andrews <marka@isc.org>
Fri, 18 May 2007 05:30:23 +0000 (05:30 +0000)
committerMark Andrews <marka@isc.org>
Fri, 18 May 2007 05:30:23 +0000 (05:30 +0000)
                        could return ISC_R_SUCCESS when they ran out of
                        memory. [RT #16365]

CHANGES
lib/dns/dispatch.c

diff --git a/CHANGES b/CHANGES
index 7deb52d8286ea8d645c3ff4bdeae698c232d7a1c..8dff7c385af42c01d955bf312aff76226c901f0f 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,7 @@
+2182.  [bug]           dns_dispatch_createtcp() and dispatch_createudp()
+                       could return ISC_R_SUCCESS when they ran out of
+                       memory. [RT #16365]
+
 2181.  [port]          sunos: libbind: add paths.h from BIND 8. [RT #16462]
 
 2180.  [cleanup]       Remove bit test from 'compress_test' as they
index 8e3e55912ff28f43227da67e293a0b913d08c4e0..56acb725a2ebf8a01b2b37a5391d6a1e68066e06 100644 (file)
@@ -15,7 +15,7 @@
  * PERFORMANCE OF THIS SOFTWARE.
  */
 
-/* $Id: dispatch.c,v 1.131 2007/02/13 02:49:08 marka Exp $ */
+/* $Id: dispatch.c,v 1.132 2007/05/18 05:30:23 marka Exp $ */
 
 /*! \file */
 
@@ -1643,8 +1643,10 @@ dns_dispatch_createtcp(dns_dispatchmgr_t *mgr, isc_socket_t *sock,
                                            DNS_EVENT_DISPATCHCONTROL,
                                            destroy_disp, disp,
                                            sizeof(isc_event_t));
-       if (disp->ctlevent == NULL)
+       if (disp->ctlevent == NULL) {
+               result = ISC_R_NOMEMORY;
                goto kill_task;
+       }
 
        isc_task_setname(disp->task, "tcpdispatch", disp);
 
@@ -1850,8 +1852,10 @@ dispatch_createudp(dns_dispatchmgr_t *mgr, isc_socketmgr_t *sockmgr,
                                            DNS_EVENT_DISPATCHCONTROL,
                                            destroy_disp, disp,
                                            sizeof(isc_event_t));
-       if (disp->ctlevent == NULL)
+       if (disp->ctlevent == NULL) {
+               result = ISC_R_NOMEMORY;
                goto kill_task;
+       }
 
        isc_task_setname(disp->task, "udpdispatch", disp);