]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
[master] handle failures from dns_rpz_add()
authorEvan Hunt <each@isc.org>
Mon, 25 Feb 2013 22:38:08 +0000 (14:38 -0800)
committerEvan Hunt <each@isc.org>
Mon, 25 Feb 2013 22:38:08 +0000 (14:38 -0800)
  - I noticed a problem after merge, vjs supplied a fix, I have
    reviewed it, no ticket number.

lib/dns/rbtdb.c

index 350eb74c35104cc42fb81c6e29ab093fe31cfe87..fca49a98c527b6516c2ea8b7a66cc229504bedba 100644 (file)
@@ -2690,6 +2690,10 @@ findnodeintree(dns_rbtdb_t *rbtdb, dns_rbt_t *tree, dns_name_t *name,
                                dns_rbt_fullnamefromnode(node, fname);
                                result = dns_rpz_add(rbtdb->rpzs,
                                                     rbtdb->rpz_num, fname);
+                               if (result != ISC_R_SUCCESS) {
+                                       RWUNLOCK(&rbtdb->tree_lock, locktype);
+                                       return (result);
+                               }
                        }
 #endif
                        dns_rbt_namefromnode(node, &nodename);