From a33c5aa5df48775143ad831b69ca656cd7adcca8 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Thu, 4 Aug 2022 18:22:33 -0700 Subject: [PATCH] route: import syscall rather than golang.org/x/sys/unix It happens that everything we need is already defined in syscall. This avoids problems when this package is vendored into the standard library. For golang/go#54259 Change-Id: I86bfe44f20c9db2ecfdb8dbb2ef798391da2bfa6 Reviewed-on: https://go-review.googlesource.com/c/net/+/421425 TryBot-Result: Gopher Robot Run-TryBot: Ian Lance Taylor Run-TryBot: Ian Lance Taylor Reviewed-by: Dmitri Shuralyov Auto-Submit: Ian Lance Taylor Reviewed-by: Dmitri Shuralyov Reviewed-by: Ian Lance Taylor --- route/address.go | 35 ++++++++++---------- route/address_darwin_test.go | 5 ++- route/address_test.go | 7 ++-- route/interface_classic.go | 9 +++-- route/interface_freebsd.go | 12 +++---- route/interface_openbsd.go | 8 ++--- route/message_darwin_test.go | 7 ++-- route/message_freebsd_test.go | 15 ++++----- route/message_test.go | 62 +++++++++++++++++------------------ route/route.go | 4 +-- route/route_openbsd.go | 4 +-- route/route_test.go | 25 +++++++------- route/sys.go | 5 ++- route/sys_darwin.go | 38 ++++++++++----------- route/sys_dragonfly.go | 32 +++++++++--------- route/sys_freebsd.go | 32 +++++++++--------- route/sys_netbsd.go | 28 ++++++++-------- route/sys_openbsd.go | 31 +++++++++--------- 18 files changed, 170 insertions(+), 189 deletions(-) diff --git a/route/address.go b/route/address.go index 930bdffb2e..5a3cc06549 100644 --- a/route/address.go +++ b/route/address.go @@ -9,8 +9,7 @@ package route import ( "runtime" - - "golang.org/x/sys/unix" + "syscall" ) // An Addr represents an address associated with packet routing. @@ -27,7 +26,7 @@ type LinkAddr struct { } // Family implements the Family method of Addr interface. -func (a *LinkAddr) Family() int { return unix.AF_LINK } +func (a *LinkAddr) Family() int { return syscall.AF_LINK } func (a *LinkAddr) lenAndSpace() (int, int) { l := 8 + len(a.Name) + len(a.Addr) @@ -44,7 +43,7 @@ func (a *LinkAddr) marshal(b []byte) (int, error) { return 0, errInvalidAddr } b[0] = byte(l) - b[1] = unix.AF_LINK + b[1] = syscall.AF_LINK if a.Index > 0 { nativeEndian.PutUint16(b[2:4], uint16(a.Index)) } @@ -66,7 +65,7 @@ func parseLinkAddr(b []byte) (Addr, error) { if len(b) < 8 { return nil, errInvalidAddr } - _, a, err := parseKernelLinkAddr(unix.AF_LINK, b[4:]) + _, a, err := parseKernelLinkAddr(syscall.AF_LINK, b[4:]) if err != nil { return nil, err } @@ -126,7 +125,7 @@ type Inet4Addr struct { } // Family implements the Family method of Addr interface. -func (a *Inet4Addr) Family() int { return unix.AF_INET } +func (a *Inet4Addr) Family() int { return syscall.AF_INET } func (a *Inet4Addr) lenAndSpace() (int, int) { return sizeofSockaddrInet, roundup(sizeofSockaddrInet) @@ -138,7 +137,7 @@ func (a *Inet4Addr) marshal(b []byte) (int, error) { return 0, errShortBuffer } b[0] = byte(l) - b[1] = unix.AF_INET + b[1] = syscall.AF_INET copy(b[4:8], a.IP[:]) return ll, nil } @@ -150,7 +149,7 @@ type Inet6Addr struct { } // Family implements the Family method of Addr interface. -func (a *Inet6Addr) Family() int { return unix.AF_INET6 } +func (a *Inet6Addr) Family() int { return syscall.AF_INET6 } func (a *Inet6Addr) lenAndSpace() (int, int) { return sizeofSockaddrInet6, roundup(sizeofSockaddrInet6) @@ -162,7 +161,7 @@ func (a *Inet6Addr) marshal(b []byte) (int, error) { return 0, errShortBuffer } b[0] = byte(l) - b[1] = unix.AF_INET6 + b[1] = syscall.AF_INET6 copy(b[8:24], a.IP[:]) if a.ZoneID > 0 { nativeEndian.PutUint32(b[24:28], uint32(a.ZoneID)) @@ -173,14 +172,14 @@ func (a *Inet6Addr) marshal(b []byte) (int, error) { // parseInetAddr parses b as an internet address for IPv4 or IPv6. func parseInetAddr(af int, b []byte) (Addr, error) { switch af { - case unix.AF_INET: + case syscall.AF_INET: if len(b) < sizeofSockaddrInet { return nil, errInvalidAddr } a := &Inet4Addr{} copy(a.IP[:], b[4:8]) return a, nil - case unix.AF_INET6: + case syscall.AF_INET6: if len(b) < sizeofSockaddrInet6 { return nil, errInvalidAddr } @@ -249,7 +248,7 @@ func parseKernelInetAddr(af int, b []byte) (int, Addr, error) { a := &Inet6Addr{} copy(a.IP[:], b[off6:off6+16]) return int(b[0]), a, nil - case af == unix.AF_INET6: + case af == syscall.AF_INET6: a := &Inet6Addr{} if l-1 < off6 { copy(a.IP[:], b[1:l]) @@ -369,15 +368,15 @@ func marshalAddrs(b []byte, as []Addr) (uint, error) { } func parseAddrs(attrs uint, fn func(int, []byte) (int, Addr, error), b []byte) ([]Addr, error) { - var as [unix.RTAX_MAX]Addr - af := int(unix.AF_UNSPEC) - for i := uint(0); i < unix.RTAX_MAX && len(b) >= roundup(0); i++ { + var as [syscall.RTAX_MAX]Addr + af := int(syscall.AF_UNSPEC) + for i := uint(0); i < syscall.RTAX_MAX && len(b) >= roundup(0); i++ { if attrs&(1<