add closest encloser stuff

This commit is contained in:
Miek Gieben
2016-03-30 16:45:02 +00:00
parent 3838eabda4
commit bf6d90600b
6 changed files with 62 additions and 18 deletions

View File

@@ -0,0 +1,16 @@
package file
import "github.com/miekg/dns"
// ClosestEncloser returns the closest encloser for rr.
func (z *Zone) ClosestEncloser(rr dns.RR) string {
elem := z.Tree.Prev(rr)
if elem == nil {
// SOA?
return ""
}
for _, r := range elem.All() {
return r.Header().Name
}
return ""
}