summaryrefslogtreecommitdiffstats
path: root/llgo/third_party/gofrontend/libgo/go/net/lookup_plan9.go
diff options
context:
space:
mode:
Diffstat (limited to 'llgo/third_party/gofrontend/libgo/go/net/lookup_plan9.go')
-rw-r--r--llgo/third_party/gofrontend/libgo/go/net/lookup_plan9.go21
1 files changed, 11 insertions, 10 deletions
diff --git a/llgo/third_party/gofrontend/libgo/go/net/lookup_plan9.go b/llgo/third_party/gofrontend/libgo/go/net/lookup_plan9.go
index b80ac10e0d9..c6274640bb7 100644
--- a/llgo/third_party/gofrontend/libgo/go/net/lookup_plan9.go
+++ b/llgo/third_party/gofrontend/libgo/go/net/lookup_plan9.go
@@ -101,19 +101,18 @@ func lookupProtocol(name string) (proto int, err error) {
if err != nil {
return 0, err
}
- unknownProtoError := errors.New("unknown IP protocol specified: " + name)
if len(lines) == 0 {
- return 0, unknownProtoError
+ return 0, UnknownNetworkError(name)
}
f := getFields(lines[0])
if len(f) < 2 {
- return 0, unknownProtoError
+ return 0, UnknownNetworkError(name)
}
s := f[1]
if n, _, ok := dtoi(s, byteIndex(s, '=')+1); ok {
return n, nil
}
- return 0, unknownProtoError
+ return 0, UnknownNetworkError(name)
}
func lookupHost(host string) (addrs []string, err error) {
@@ -147,14 +146,16 @@ loop:
return
}
-func lookupIP(host string) (ips []IP, err error) {
- addrs, err := LookupHost(host)
+func lookupIP(host string) (addrs []IPAddr, err error) {
+ lits, err := LookupHost(host)
if err != nil {
return
}
- for _, addr := range addrs {
- if ip := ParseIP(addr); ip != nil {
- ips = append(ips, ip)
+ for _, lit := range lits {
+ host, zone := splitHostZone(lit)
+ if ip := ParseIP(host); ip != nil {
+ addr := IPAddr{IP: ip, Zone: zone}
+ addrs = append(addrs, addr)
}
}
return
@@ -171,7 +172,7 @@ func lookupPort(network, service string) (port int, err error) {
if err != nil {
return
}
- unknownPortError := &AddrError{"unknown port", network + "/" + service}
+ unknownPortError := &AddrError{Err: "unknown port", Addr: network + "/" + service}
if len(lines) == 0 {
return 0, unknownPortError
}
OpenPOWER on IntegriCloud