aboutsummaryrefslogtreecommitdiff
path: root/cmd/resolver
diff options
context:
space:
mode:
authorShulhan <ms@kilabit.info>2018-08-30 12:18:32 +0700
committerShulhan <ms@kilabit.info>2018-08-30 16:43:20 +0700
commite6b2be55702aebfa848d28890db94bd108a0b697 (patch)
treec3701f875d3fa15fb08e12e93ffdf474f14e7b87 /cmd/resolver
parentb550f44ba2f2eda3bf7cf1e98c2b7939bbfc7f9f (diff)
downloadrescached-e6b2be55702aebfa848d28890db94bd108a0b697.tar.xz
cmd/resolver: fix counting number of minimum dots
Diffstat (limited to 'cmd/resolver')
-rw-r--r--cmd/resolver/main.go11
1 files changed, 9 insertions, 2 deletions
diff --git a/cmd/resolver/main.go b/cmd/resolver/main.go
index 14f5f3c..9a4918f 100644
--- a/cmd/resolver/main.go
+++ b/cmd/resolver/main.go
@@ -31,9 +31,16 @@ func parseNameServers(nameservers []string) (udpAddrs []*net.UDPAddr) {
}
func populateQueries(cr *libnet.ResolvConf, qname string) (queries []string) {
- names := strings.Split(qname, ".")
+ ndots := 0
- if len(names) == cr.NDots+1 {
+ for _, c := range qname {
+ if c == '.' {
+ ndots++
+ continue
+ }
+ }
+
+ if ndots >= cr.NDots {
queries = append(queries, qname)
} else {
if len(cr.Domain) > 0 {