all: use unsafe.SliceData where appropriate

This commit is contained in:
Ayke van Laethem
2026-05-11 10:04:00 +02:00
committed by Ron Evans
parent de83d67364
commit 70a0dee8c8
9 changed files with 10 additions and 10 deletions
+1 -1
View File
@@ -20,7 +20,7 @@ type reader struct {
func (r *reader) Read(b []byte) (n int, err error) { func (r *reader) Read(b []byte) (n int, err error) {
if len(b) != 0 { if len(b) != 0 {
libc_arc4random_buf(unsafe.Pointer(&b[0]), uint(len(b))) libc_arc4random_buf(unsafe.Pointer(unsafe.SliceData(b)), uint(len(b)))
} }
return len(b), nil return len(b), nil
} }
+1 -1
View File
@@ -25,7 +25,7 @@ func (r *reader) Read(b []byte) (n int, err error) {
// See for example: https://github.com/golang/go/issues/33542 // See for example: https://github.com/golang/go/issues/33542
// For Windows 7 and newer, we might switch to ProcessPrng in the future // For Windows 7 and newer, we might switch to ProcessPrng in the future
// (which is a documented function and might be a tiny bit faster). // (which is a documented function and might be a tiny bit faster).
ok := libc_RtlGenRandom(unsafe.Pointer(&b[0]), len(b)) ok := libc_RtlGenRandom(unsafe.Pointer(unsafe.SliceData(b)), len(b))
if !ok { if !ok {
return 0, errRandom return 0, errRandom
} }
+1 -1
View File
@@ -15,7 +15,7 @@ func GetRandom(p []byte, flags GetRandomFlag) (n int, err error) {
if len(p) == 0 { if len(p) == 0 {
return 0, nil return 0, nil
} }
libc_arc4random_buf(unsafe.Pointer(&p[0]), uint(len(p))) libc_arc4random_buf(unsafe.Pointer(unsafe.SliceData(p)), uint(len(p)))
return len(p), nil return len(p), nil
} }
+1 -1
View File
@@ -34,7 +34,7 @@ func execve(pathname string, argv []string, envv []string) error {
} }
env1[len(envv)] = nil env1[len(envv)] = nil
ret, _, err := syscall.Syscall(syscall.SYS_EXECVE, uintptr(unsafe.Pointer(&argv0[0])), uintptr(unsafe.Pointer(&argv1[0])), uintptr(unsafe.Pointer(&env1[0]))) ret, _, err := syscall.Syscall(syscall.SYS_EXECVE, uintptr(unsafe.Pointer(unsafe.SliceData(argv0))), uintptr(unsafe.Pointer(unsafe.SliceData(argv1))), uintptr(unsafe.Pointer(unsafe.SliceData(env1))))
if int(ret) != 0 { if int(ret) != 0 {
return err return err
} }
+1 -1
View File
@@ -39,7 +39,7 @@ var (
putcharBuffer = [putcharBufferSize]byte{} putcharBuffer = [putcharBufferSize]byte{}
putcharPosition uint = 0 putcharPosition uint = 0
putcharIOVec = __wasi_iovec_t{ putcharIOVec = __wasi_iovec_t{
buf: unsafe.Pointer(&putcharBuffer[0]), buf: unsafe.Pointer(unsafe.SliceData(putcharBuffer[:])),
} }
putcharNWritten uint putcharNWritten uint
) )
+1 -1
View File
@@ -35,7 +35,7 @@ func os_runtime_args() []string {
// Obtain the command line arguments // Obtain the command line arguments
argsSlice := make([]unsafe.Pointer, argc) argsSlice := make([]unsafe.Pointer, argc)
buf := make([]byte, argv_buf_size) buf := make([]byte, argv_buf_size)
args_get(&argsSlice[0], unsafe.Pointer(&buf[0])) args_get(&argsSlice[0], unsafe.Pointer(unsafe.SliceData(buf)))
// Convert the array of C strings to an array of Go strings. // Convert the array of C strings to an array of Go strings.
args = make([]string, argc) args = make([]string, argc)
+1 -1
View File
@@ -280,7 +280,7 @@ func cgo_GoBytes(ptr unsafe.Pointer, length uintptr) []byte {
// of upstream Go. // of upstream Go.
buf := make([]byte, length) buf := make([]byte, length)
if length != 0 { if length != 0 {
memcpy(unsafe.Pointer(&buf[0]), ptr, uintptr(length)) memcpy(unsafe.Pointer(unsafe.SliceData(buf)), ptr, uintptr(length))
} }
return buf return buf
} }
+2 -2
View File
@@ -229,7 +229,7 @@ func Mmap(fd int, offset int64, length int, prot int, flags int) (data []byte, e
} }
func Munmap(b []byte) (err error) { func Munmap(b []byte) (err error) {
errCode := libc_munmap(unsafe.Pointer(&b[0]), uintptr(len(b))) errCode := libc_munmap(unsafe.Pointer(unsafe.SliceData(b)), uintptr(len(b)))
if errCode != 0 { if errCode != 0 {
err = getErrno() err = getErrno()
} }
@@ -237,7 +237,7 @@ func Munmap(b []byte) (err error) {
} }
func Mprotect(b []byte, prot int) (err error) { func Mprotect(b []byte, prot int) (err error) {
errCode := libc_mprotect(unsafe.Pointer(&b[0]), uintptr(len(b)), int32(prot)) errCode := libc_mprotect(unsafe.Pointer(unsafe.SliceData(b)), uintptr(len(b)), int32(prot))
if errCode != 0 { if errCode != 0 {
err = getErrno() err = getErrno()
} }
+1 -1
View File
@@ -443,7 +443,7 @@ type RawSockaddrInet6 struct {
func RandomGet(b []byte) error { func RandomGet(b []byte) error {
if len(b) > 0 { if len(b) > 0 {
libc_arc4random_buf(unsafe.Pointer(&b[0]), uint(len(b))) libc_arc4random_buf(unsafe.Pointer(unsafe.SliceData(b)), uint(len(b)))
} }
return nil return nil
} }