]> 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:34:37 +0000 (05:34 +0000)
committerMark Andrews <marka@isc.org>
Fri, 18 May 2007 05:34:37 +0000 (05:34 +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 8d004e686ad7f5fca4f1fe9e43d03ab36e7951d0..b81d7a3651767ee92a2460aae6c4002df5a6780c 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 02accdf4c193abae9375f7cb2a4010066468bdd6..81ee1ec3b163cc0af67d14749dac29c596247f70 100644 (file)
@@ -15,7 +15,7 @@
  * PERFORMANCE OF THIS SOFTWARE.
  */
 
-/* $Id: dispatch.c,v 1.116.18.13 2007/02/07 23:57:58 marka Exp $ */
+/* $Id: dispatch.c,v 1.116.18.14 2007/05/18 05:34:37 marka Exp $ */
 
 /*! \file */
 
@@ -1622,8 +1622,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);
 
@@ -1804,8 +1806,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);