]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Searching catzs->zones requires a read lock
authorAram Sargsyan <aram@isc.org>
Fri, 27 Jan 2023 18:04:41 +0000 (18:04 +0000)
committerAram Sargsyan <aram@isc.org>
Tue, 28 Feb 2023 14:40:17 +0000 (14:40 +0000)
Lock the catzs->lock mutex before searching in the catzs->zones
hash table.

(cherry picked from commit 0ef0c86632c838c3f342fe1c6d8cdef1b327cde6)

lib/dns/catz.c

index 9a9ecd0dc9272830b5b835c05daf641c93b4208e..eef688a1d01ceb18ff48b548de24ecbc2da7115f 100644 (file)
@@ -752,8 +752,10 @@ dns_catz_get_zone(dns_catz_zones_t *catzs, const dns_name_t *name) {
        REQUIRE(DNS_CATZ_ZONES_VALID(catzs));
        REQUIRE(ISC_MAGIC_VALID(name, DNS_NAME_MAGIC));
 
+       LOCK(&catzs->lock);
        result = isc_ht_find(catzs->zones, name->ndata, name->length,
                             (void **)&found);
+       UNLOCK(&catzs->lock);
        if (result != ISC_R_SUCCESS) {
                return (NULL);
        }