aboutsummaryrefslogtreecommitdiff
path: root/middleware/file/tree
diff options
context:
space:
mode:
authorGravatar Miek Gieben <miek@miek.nl> 2016-03-30 16:45:02 +0000
committerGravatar Miek Gieben <miek@miek.nl> 2016-03-30 16:45:02 +0000
commitbf6d90600be7eac782e076b7c5f334e83ba9dea0 (patch)
tree00fb49c912673d00b7880577992353c46c44a5b9 /middleware/file/tree
parent3838eabda49f01290caac204683264adec158e6f (diff)
downloadcoredns-bf6d90600be7eac782e076b7c5f334e83ba9dea0.tar.gz
coredns-bf6d90600be7eac782e076b7c5f334e83ba9dea0.tar.zst
coredns-bf6d90600be7eac782e076b7c5f334e83ba9dea0.zip
add closest encloser stuff
Diffstat (limited to 'middleware/file/tree')
-rw-r--r--middleware/file/tree/tree.go19
1 files changed, 4 insertions, 15 deletions
diff --git a/middleware/file/tree/tree.go b/middleware/file/tree/tree.go
index 342bcefa8..05dfdfa7d 100644
--- a/middleware/file/tree/tree.go
+++ b/middleware/file/tree/tree.go
@@ -17,8 +17,7 @@ package tree
// TODO(miek): fix docs
import (
- "strings"
-
+ "github.com/miekg/coredns/middleware"
"github.com/miekg/dns"
)
@@ -112,21 +111,11 @@ func (e *Elem) Delete(rr dns.RR) (empty bool) {
return
}
-// TODO(miek): need case ignore compare that is more efficient.
func Less(a *Elem, rr dns.RR) int {
- aname := ""
- for _, ar := range a.m {
- aname = strings.ToLower(ar[0].Header().Name)
- break
- }
- rname := strings.ToLower(rr.Header().Name)
- if aname == rname {
- return 0
- }
- if aname < rname {
- return -1
+ for _, ar := range a.m { // Get first element in a
+ return middleware.Less(ar[0].Header().Name, rr.Header().Name)
}
- return 1
+ return 0
}
// Assuming the same type and name this will check if the rdata is equal as well.