]> git.ipfire.org Git - thirdparty/bind9.git/commit
check for validator/fetch dependency loops
authorEvan Hunt <each@isc.org>
Tue, 30 Nov 2021 19:17:01 +0000 (11:17 -0800)
committerEvan Hunt <each@isc.org>
Wed, 8 Dec 2021 18:56:25 +0000 (10:56 -0800)
commit69c74bf6bb5e52633d6e826f806e09a35622ecae
tree2b4b3bd91b39698a527e7b163f44518105691654
parent56ae95e79e962cf2681032d760047f95dae0db44
check for validator/fetch dependency loops

It was possible for a deadlock to occur when a fetch started
a validator which started another fetch for the same name.
To address this, we now store pointers from the valdiator object
to the originating fetch, and from the fetch object to the originating
validator (if any), so that potential loops can be detected.
lib/dns/include/dns/resolver.h
lib/dns/include/dns/validator.h
lib/dns/resolver.c
lib/dns/validator.c