aboutsummaryrefslogtreecommitdiff
path: root/src/net/interface_bsd.go
diff options
context:
space:
mode:
authorMikio Hara <mikioh.mikioh@gmail.com>2015-04-19 22:17:08 +0900
committerMikio Hara <mikioh.mikioh@gmail.com>2015-04-21 04:16:14 +0000
commit456cf0f22c93e1a6654980f4a48a564555f6c8a2 (patch)
tree97bae5b777e64627aa33d05914759e95abbc6695 /src/net/interface_bsd.go
parent2173a27903897c481b0a0daf3ca3e0a0685701db (diff)
downloadgo-456cf0f22c93e1a6654980f4a48a564555f6c8a2.tar.xz
net: fix inconsistent error values on Interface
This change fixes inconsistent error values on Interfaces, InterfaceAddrs, InterfaceBy{Index,Name}, and Addrs and MulticastAddrs methods of Interface. Updates #4856. Change-Id: I09e65522a22f45c641792d774ebf7a0081b874ad Reviewed-on: https://go-review.googlesource.com/9140 Reviewed-by: Ian Lance Taylor <iant@golang.org>
Diffstat (limited to 'src/net/interface_bsd.go')
-rw-r--r--src/net/interface_bsd.go13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/net/interface_bsd.go b/src/net/interface_bsd.go
index 2f66e4fc31..01a67c69a1 100644
--- a/src/net/interface_bsd.go
+++ b/src/net/interface_bsd.go
@@ -7,7 +7,6 @@
package net
import (
- "os"
"syscall"
"unsafe"
)
@@ -18,11 +17,11 @@ import (
func interfaceTable(ifindex int) ([]Interface, error) {
tab, err := syscall.RouteRIB(syscall.NET_RT_IFLIST, ifindex)
if err != nil {
- return nil, os.NewSyscallError("route rib", err)
+ return nil, err
}
msgs, err := syscall.ParseRoutingMessage(tab)
if err != nil {
- return nil, os.NewSyscallError("route message", err)
+ return nil, err
}
return parseInterfaceTable(ifindex, msgs)
}
@@ -51,7 +50,7 @@ loop:
func newLink(m *syscall.InterfaceMessage) (*Interface, error) {
sas, err := syscall.ParseRoutingSockaddr(m)
if err != nil {
- return nil, os.NewSyscallError("route sockaddr", err)
+ return nil, err
}
ifi := &Interface{Index: int(m.Header.Index), Flags: linkFlags(m.Header.Flags)}
sa, _ := sas[syscall.RTAX_IFP].(*syscall.SockaddrDatalink)
@@ -104,11 +103,11 @@ func interfaceAddrTable(ifi *Interface) ([]Addr, error) {
}
tab, err := syscall.RouteRIB(syscall.NET_RT_IFLIST, index)
if err != nil {
- return nil, os.NewSyscallError("route rib", err)
+ return nil, err
}
msgs, err := syscall.ParseRoutingMessage(tab)
if err != nil {
- return nil, os.NewSyscallError("route message", err)
+ return nil, err
}
var ift []Interface
if index == 0 {
@@ -145,7 +144,7 @@ func interfaceAddrTable(ifi *Interface) ([]Addr, error) {
func newAddr(ifi *Interface, m *syscall.InterfaceAddrMessage) (*IPNet, error) {
sas, err := syscall.ParseRoutingSockaddr(m)
if err != nil {
- return nil, os.NewSyscallError("route sockaddr", err)
+ return nil, err
}
ifa := &IPNet{}
switch sa := sas[syscall.RTAX_NETMASK].(type) {