Check for not(DS or DNSKEY) in is_outdated_cname_pointer()

Previous check was _for_ IPV4, IPv6 CNAME, and I missed adding SRV.
This commit is contained in:
Simon Kelley
2019-01-09 15:12:34 +00:00
parent a90f09db4c
commit 2896e2485e

View File

@@ -312,7 +312,7 @@ static int is_outdated_cname_pointer(struct crec *crecp)
/* 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;