mirror of
https://github.com/autc04/Retro68.git
synced 2024-10-07 17:55:00 +00:00
26 lines
554 B
Go
26 lines
554 B
Go
// Copyright 2016 The Go Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
package unix
|
|
|
|
import (
|
|
"syscall"
|
|
"unsafe"
|
|
)
|
|
|
|
// getentropy(2)'s syscall number, from /usr/src/sys/kern/syscalls.master
|
|
const entropyTrap uintptr = 7
|
|
|
|
// GetEntropy calls the OpenBSD getentropy system call.
|
|
func GetEntropy(p []byte) error {
|
|
_, _, errno := syscall.Syscall(entropyTrap,
|
|
uintptr(unsafe.Pointer(&p[0])),
|
|
uintptr(len(p)),
|
|
0)
|
|
if errno != 0 {
|
|
return errno
|
|
}
|
|
return nil
|
|
}
|