From: W.C.A. Wijngaards Date: Thu, 6 Feb 2020 11:22:15 +0000 (+0100) Subject: - Fix to lock zone before adding rpz qname trigger. X-Git-Tag: release-1.10.0rc1~13 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=18ea62e369944312af3a883077cc537c0840f211;p=thirdparty%2Funbound.git - Fix to lock zone before adding rpz qname trigger. --- diff --git a/doc/Changelog b/doc/Changelog index 4f272ecc1..31960264d 100644 --- a/doc/Changelog +++ b/doc/Changelog @@ -6,6 +6,7 @@ - Fix num_reply_addr counting in mesh and tcp drop due to size after serve_stale commit. - Fix to create and destroy rpz_lock in auth_zones structure. + - Fix to lock zone before adding rpz qname trigger. 5 February 2020: George - Added serve-stale functionality as described in diff --git a/services/rpz.c b/services/rpz.c index 1047852ad..643b20c91 100644 --- a/services/rpz.c +++ b/services/rpz.c @@ -523,8 +523,10 @@ rpz_insert_qname_trigger(struct rpz* r, uint8_t* dname, size_t dnamelen, lock_rw_unlock(&r->local_zones->lock); return; } + lock_rw_wrlock(&z->lock); local_zone_enter_rr(z, dname, dnamelen, dnamelabs, rrtype, rrclass, ttl, rdata, rdata_len, rrstr); + lock_rw_unlock(&z->lock); free(rrstr); } if(!newzone)