return cname if requested RR was not found and cname exists

This commit is contained in:
Yannik Sembritzki 2018-03-02 14:58:39 +01:00
parent 9a908d7d6b
commit 4d214d7f52

4
dns.go
View File

@ -51,9 +51,13 @@ func answer(q dns.Question) ([]dns.RR, int, error) {
var domain = strings.ToLower(q.Name)
var rtype = q.Qtype
r, ok := RR.Records[rtype][domain]
if !ok {
r, ok = RR.Records[dns.TypeCNAME][domain]
if !ok {
rcode = dns.RcodeNameError
}
}
log.WithFields(log.Fields{"qtype": dns.TypeToString[rtype], "domain": domain, "rcode": dns.RcodeToString[rcode]}).Debug("Answering question for domain")
return r, rcode, nil
}