From 1e96f42c2a80ca99c202409683ba5bd755bf3d85 Mon Sep 17 00:00:00 2001 From: Tobias Klauser <tklauser@distanz.ch> Date: Mon, 19 Sep 2022 10:52:27 +0200 Subject: [PATCH] syscall: drop compatibility for FreeBSD < 10.0 Change-Id: Idd8cee84215e61817a86915160c91242670798af Reviewed-on: https://go-review.googlesource.com/c/go/+/431663 Reviewed-by: Yuval Pavel Zholkover <paulzhol@gmail.com> Reviewed-by: Dmitri Goutnik <dgoutnik@gmail.com> Reviewed-by: Cherry Mui <cherryyz@google.com> Reviewed-by: Ian Lance Taylor <iant@google.com> TryBot-Result: Gopher Robot <gobot@golang.org> Auto-Submit: Tobias Klauser <tobias.klauser@gmail.com> Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com> --- src/syscall/route_freebsd_32bit.go | 11 ++++------- src/syscall/syscall_freebsd.go | 16 +--------------- 2 files changed, 5 insertions(+), 22 deletions(-) diff --git a/src/syscall/route_freebsd_32bit.go b/src/syscall/route_freebsd_32bit.go index c70f0bb0d3c..14373abd979 100644 --- a/src/syscall/route_freebsd_32bit.go +++ b/src/syscall/route_freebsd_32bit.go @@ -22,12 +22,9 @@ func (any *anyMessage) parseInterfaceMessage(b []byte) *InterfaceMessage { // FreeBSD 10 and beyond have a restructured mbuf // packet header view. // See https://svnweb.freebsd.org/base?view=revision&revision=254804. - if supportsABI(1000000) { - m := (*ifMsghdr)(unsafe.Pointer(any)) - p.Header.Data.Hwassist = uint32(m.Data.Hwassist) - p.Header.Data.Epoch = m.Data.Epoch - p.Header.Data.Lastchange = m.Data.Lastchange - return &InterfaceMessage{Header: p.Header, Data: b[int(unsafe.Offsetof(p.Header.Data))+int(p.Header.Data.Datalen) : any.Msglen]} - } + m := (*ifMsghdr)(unsafe.Pointer(any)) + p.Header.Data.Hwassist = uint32(m.Data.Hwassist) + p.Header.Data.Epoch = m.Data.Epoch + p.Header.Data.Lastchange = m.Data.Lastchange return &InterfaceMessage{Header: p.Header, Data: b[int(unsafe.Offsetof(p.Header.Data))+int(p.Header.Data.Datalen) : any.Msglen]} } diff --git a/src/syscall/syscall_freebsd.go b/src/syscall/syscall_freebsd.go index 0100f4cd149..0f3912644b8 100644 --- a/src/syscall/syscall_freebsd.go +++ b/src/syscall/syscall_freebsd.go @@ -12,27 +12,13 @@ package syscall -import ( - "sync" - "unsafe" -) +import "unsafe" func Syscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno) func Syscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno) func RawSyscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno) func RawSyscall6(trap, a1, a2, a3, a4, a5, a6 uintptr) (r1, r2 uintptr, err Errno) -// See https://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/versions.html. -var ( - osreldateOnce sync.Once - osreldate uint32 -) - -func supportsABI(ver uint32) bool { - osreldateOnce.Do(func() { osreldate, _ = SysctlUint32("kern.osreldate") }) - return osreldate >= ver -} - type SockaddrDatalink struct { Len uint8 Family uint8 -- GitLab