]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
pullup:
authorAndreas Gustafsson <source@isc.org>
Tue, 20 Mar 2001 18:50:39 +0000 (18:50 +0000)
committerAndreas Gustafsson <source@isc.org>
Tue, 20 Mar 2001 18:50:39 +0000 (18:50 +0000)
 783.   [bug]           Following CNAMEs could cause an assertion failure
                        when either using an sdb database or under very
                        rare conditions.

CHANGES
bin/named/query.c

diff --git a/CHANGES b/CHANGES
index d00bb124eee70f96f55bcfad93e45c152108c096..d3fe7da73521dd574f329098efd55619f1d5bf02 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,4 +1,8 @@
 
+ 783.  [bug]           Following CNAMEs could cause an assertion failure
+                       when either using an sdb database or under very
+                       rare conditions.
+
  780.  [bug]           Error handling code dealing with out of memory or
                        other rare errors could lead to assertion failures
                        by calling functions on unitialized names. [RT #1065]
index c65309a36126aa442b7675ee7f05f9b89ab1522f..9bd480856aa96f9ca5b8bc605213af083ba0b56c 100644 (file)
@@ -15,7 +15,7 @@
  * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  */
 
-/* $Id: query.c,v 1.163.2.3 2001/03/06 01:28:42 bwelling Exp $ */
+/* $Id: query.c,v 1.163.2.4 2001/03/20 18:50:39 gson Exp $ */
 
 #include <config.h>
 
@@ -2904,7 +2904,12 @@ query_find(ns_client_t *client, dns_fetchevent_t *event) {
                if (result != ISC_R_SUCCESS)
                        goto cleanup;
                dns_name_init(tname, NULL);
-               dns_name_clone(&cname.cname, tname);
+               result = dns_name_dup(&cname.cname, client->mctx, tname);
+               if (result != ISC_R_SUCCESS) {
+                       dns_message_puttempname(client->message, &tname);
+                       dns_rdata_freestruct(&cname);
+                       goto cleanup;
+               }
                dns_rdata_freestruct(&cname);
                query_maybeputqname(client);
                client->query.qname = tname;