envoyproxy/envoy
Ver no GitHubdns: use handles to prevent use-after-free problems between dns queries and callback targets
Open
#10.079 aberto em 17 de fev. de 2020
area/dnsenhancementhelp wanted
Métricas do repositório
- Stars
- (27.997 stars)
- Métricas de merge de PR
- (Mesclagem média 8d) (378 fundiu PRs em 30d)
Description
Description: ActiveDnsQueries have independent lifetimes from their callback targets (strict/logical dns cluster, dns cache). Right now there is an implicit contract where the callback target sets their query pointer to null once the query is resolved, and the query only fires callbacks if it has not been cancelled. However, this implicit contract can create problems when it's not adhered to (e.g #10006).
An enhancement would be to use handles with RAII constraints similar to how the init manager does with watchers and targets.