diff options
| author | Shulhan <ms@kilabit.info> | 2018-08-30 12:18:32 +0700 |
|---|---|---|
| committer | Shulhan <ms@kilabit.info> | 2018-08-30 16:43:20 +0700 |
| commit | e6b2be55702aebfa848d28890db94bd108a0b697 (patch) | |
| tree | c3701f875d3fa15fb08e12e93ffdf474f14e7b87 /cmd | |
| parent | b550f44ba2f2eda3bf7cf1e98c2b7939bbfc7f9f (diff) | |
| download | rescached-e6b2be55702aebfa848d28890db94bd108a0b697.tar.xz | |
cmd/resolver: fix counting number of minimum dots
Diffstat (limited to 'cmd')
| -rw-r--r-- | cmd/resolver/main.go | 11 |
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 { |
