Skip to content
Snippets Groups Projects
Commit 1e96f42c authored by Tobias Klauser's avatar Tobias Klauser Committed by Gopher Robot
Browse files

syscall: drop compatibility for FreeBSD < 10.0

Change-Id: Idd8cee84215e61817a86915160c91242670798af
Reviewed-on: https://go-review.googlesource.com/c/go/+/431663


Reviewed-by: default avatarYuval Pavel Zholkover <paulzhol@gmail.com>
Reviewed-by: default avatarDmitri Goutnik <dgoutnik@gmail.com>
Reviewed-by: default avatarCherry Mui <cherryyz@google.com>
Reviewed-by: default avatarIan 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>
parent b5fcb35b
No related branches found
No related tags found
No related merge requests found
...@@ -22,12 +22,9 @@ func (any *anyMessage) parseInterfaceMessage(b []byte) *InterfaceMessage { ...@@ -22,12 +22,9 @@ func (any *anyMessage) parseInterfaceMessage(b []byte) *InterfaceMessage {
// FreeBSD 10 and beyond have a restructured mbuf // FreeBSD 10 and beyond have a restructured mbuf
// packet header view. // packet header view.
// See https://svnweb.freebsd.org/base?view=revision&revision=254804. // See https://svnweb.freebsd.org/base?view=revision&revision=254804.
if supportsABI(1000000) { m := (*ifMsghdr)(unsafe.Pointer(any))
m := (*ifMsghdr)(unsafe.Pointer(any)) p.Header.Data.Hwassist = uint32(m.Data.Hwassist)
p.Header.Data.Hwassist = uint32(m.Data.Hwassist) p.Header.Data.Epoch = m.Data.Epoch
p.Header.Data.Epoch = m.Data.Epoch p.Header.Data.Lastchange = m.Data.Lastchange
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]}
}
return &InterfaceMessage{Header: p.Header, Data: b[int(unsafe.Offsetof(p.Header.Data))+int(p.Header.Data.Datalen) : any.Msglen]} return &InterfaceMessage{Header: p.Header, Data: b[int(unsafe.Offsetof(p.Header.Data))+int(p.Header.Data.Datalen) : any.Msglen]}
} }
...@@ -12,27 +12,13 @@ ...@@ -12,27 +12,13 @@
package syscall package syscall
import ( import "unsafe"
"sync"
"unsafe"
)
func Syscall(trap, a1, a2, a3 uintptr) (r1, r2 uintptr, err Errno) 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 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 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) 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 { type SockaddrDatalink struct {
Len uint8 Len uint8
Family uint8 Family uint8
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment