github.com/binkynet/BinkyNet@v1.12.1-0.20240421190447-da4e34c20be0/proto_vendor/golang.org/x/net/internal/socket/sys_linux.go (about) 1 // Copyright 2017 The Go Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style 3 // license that can be found in the LICENSE file. 4 5 // +build linux,!s390x,!386 6 7 package socket 8 9 import ( 10 "syscall" 11 "unsafe" 12 ) 13 14 func probeProtocolStack() int { 15 var p uintptr 16 return int(unsafe.Sizeof(p)) 17 } 18 19 func recvmmsg(s uintptr, hs []mmsghdr, flags int) (int, error) { 20 n, _, errno := syscall.Syscall6(sysRECVMMSG, s, uintptr(unsafe.Pointer(&hs[0])), uintptr(len(hs)), uintptr(flags), 0, 0) 21 return int(n), errnoErr(errno) 22 } 23 24 func sendmmsg(s uintptr, hs []mmsghdr, flags int) (int, error) { 25 n, _, errno := syscall.Syscall6(sysSENDMMSG, s, uintptr(unsafe.Pointer(&hs[0])), uintptr(len(hs)), uintptr(flags), 0, 0) 26 return int(n), errnoErr(errno) 27 }