Resolver uses net.IP
parent
d543a0147b
commit
33b28de3c3
10
resolver.go
10
resolver.go
|
@ -6,12 +6,16 @@ import (
|
||||||
|
|
||||||
// NameResolver is used to implement custom name resolution
|
// NameResolver is used to implement custom name resolution
|
||||||
type NameResolver interface {
|
type NameResolver interface {
|
||||||
Resolve(name string) (*net.IPAddr, error)
|
Resolve(name string) (net.IP, error)
|
||||||
}
|
}
|
||||||
|
|
||||||
// DNSResolver uses the system DNS to resolve host names
|
// DNSResolver uses the system DNS to resolve host names
|
||||||
type DNSResolver struct{}
|
type DNSResolver struct{}
|
||||||
|
|
||||||
func (d DNSResolver) Resolve(name string) (*net.IPAddr, error) {
|
func (d DNSResolver) Resolve(name string) (net.IP, error) {
|
||||||
return net.ResolveIPAddr("ip", name)
|
addr, err := net.ResolveIPAddr("ip", name)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return addr.IP, err
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,7 +12,7 @@ func TestDNSResolver(t *testing.T) {
|
||||||
t.Fatalf("err: %v", err)
|
t.Fatalf("err: %v", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
if !addr.IP.IsLoopback() {
|
if !addr.IsLoopback() {
|
||||||
t.Fatalf("expected loopback")
|
t.Fatalf("expected loopback")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue