]> git.ipfire.org Git - thirdparty/bind9.git/commit
Record the 'edns-udp-size' in the view, not in the resolver
authorOndřej Surý <ondrej@isc.org>
Tue, 4 Oct 2022 15:07:19 +0000 (17:07 +0200)
committerEvan Hunt <each@isc.org>
Wed, 5 Oct 2022 18:59:36 +0000 (11:59 -0700)
commit0dcbc6274be6e6100daf9d754193c0421fc538d2
treececfaa6cc329c7287a62328040c2482d93f83a8c
parentbff30253960263c5530e62dd7e27c20484e5cc26
Record the 'edns-udp-size' in the view, not in the resolver

Getting the recorded value of 'edns-udp-size' from the resolver requires
strong attach to the dns_view because we are accessing `view->resolver`.
This is not the case in places (f.e. dns_zone unit) where `.udpsize` is
accessed.  By moving the .udpsize field from `struct dns_resolver` to
`struct dns_view`, we can access the value directly even with weakly
attached dns_view without the need to lock the view because `.udpsize`
can be accessed after the dns_view object has been shut down.
bin/named/server.c
lib/dns/include/dns/resolver.h
lib/dns/include/dns/view.h
lib/dns/resolver.c
lib/dns/view.c
lib/dns/zone.c
lib/ns/client.c