diff options
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 { |
