diff options
Diffstat (limited to 'plugin')
-rw-r--r-- | plugin/etcd/cname_test.go | 7 | ||||
-rw-r--r-- | plugin/etcd/etcd.go | 2 |
2 files changed, 8 insertions, 1 deletions
diff --git a/plugin/etcd/cname_test.go b/plugin/etcd/cname_test.go index bf27573cc..48766c793 100644 --- a/plugin/etcd/cname_test.go +++ b/plugin/etcd/cname_test.go @@ -57,6 +57,7 @@ var servicesCname = []*msg.Service{ {Host: "cname5.region2.skydns.test", Key: "cname4.region2.skydns.test."}, {Host: "cname6.region2.skydns.test", Key: "cname5.region2.skydns.test."}, {Host: "endpoint.region2.skydns.test", Key: "cname6.region2.skydns.test."}, + {Host: "mainendpoint.region2.skydns.test", Key: "region2.skydns.test."}, {Host: "10.240.0.1", Key: "endpoint.region2.skydns.test."}, } @@ -76,4 +77,10 @@ var dnsTestCasesCname = []test.Case{ test.A("endpoint.region2.skydns.test. 300 IN A 10.240.0.1"), }, }, + { + Qname: "region2.skydns.test.", Qtype: dns.TypeCNAME, + Answer: []dns.RR{ + test.CNAME("region2.skydns.test. 300 IN CNAME mainendpoint.region2.skydns.test."), + }, + }, } diff --git a/plugin/etcd/etcd.go b/plugin/etcd/etcd.go index 493764f0b..5d258507c 100644 --- a/plugin/etcd/etcd.go +++ b/plugin/etcd/etcd.go @@ -75,7 +75,7 @@ func (e *Etcd) Records(state request.Request, exact bool) ([]msg.Service, error) name := state.Name() path, star := msg.PathWithWildcard(name, e.PathPrefix) - r, err := e.get(path, true) + r, err := e.get(path, !exact) if err != nil { return nil, err } |