From 2896e2485e44c04e73a0b7c9f7cbc9c8515d0800 Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Wed, 9 Jan 2019 15:12:34 +0000 Subject: [PATCH 26/32] Check for not(DS or DNSKEY) in is_outdated_cname_pointer() Previous check was _for_ IPV4, IPv6 CNAME, and I missed adding SRV. Signed-off-by: Kevin Darbyshire-Bryant --- src/cache.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/src/cache.c +++ b/src/cache.c @@ -312,7 +312,7 @@ static int is_outdated_cname_pointer(str /* NB. record may be reused as DS or DNSKEY, where uid is overloaded for something completely different */ if (crecp->addr.cname.target.cache && - (crecp->addr.cname.target.cache->flags & (F_IPV4 | F_IPV6 | F_CNAME)) && + !(crecp->addr.cname.target.cache->flags & (F_DNSKEY | F_DS)) && crecp->addr.cname.uid == crecp->addr.cname.target.cache->uid) return 0;