1
2
3
4
5
6
7
8 package unix
9
10 import (
11 "syscall"
12 "unsafe"
13 )
14
15 func seek(fd int, offset int64, whence int) (int64, syscall.Errno) {
16 var newoffset int64
17 offsetLow := uint32(offset & 0xffffffff)
18 offsetHigh := uint32((offset >> 32) & 0xffffffff)
19 _, _, err := Syscall6(SYS__LLSEEK, uintptr(fd), uintptr(offsetHigh), uintptr(offsetLow), uintptr(unsafe.Pointer(&newoffset)), uintptr(whence), 0)
20 return newoffset, err
21 }
22
23 func socketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (int, syscall.Errno) {
24 fd, _, err := Syscall(SYS_SOCKETCALL, uintptr(call), uintptr(unsafe.Pointer(&a0)), 0)
25 return int(fd), err
26 }
27
28 func rawsocketcall(call int, a0, a1, a2, a3, a4, a5 uintptr) (int, syscall.Errno) {
29 fd, _, err := RawSyscall(SYS_SOCKETCALL, uintptr(call), uintptr(unsafe.Pointer(&a0)), 0)
30 return int(fd), err
31 }
32
View as plain text