mirror of
https://github.com/moby/moby.git
synced 2022-11-09 12:21:53 -05:00
19 lines
382 B
Go
19 lines
382 B
Go
|
package dmesg
|
||
|
|
||
|
import (
|
||
|
"unsafe"
|
||
|
|
||
|
"golang.org/x/sys/unix"
|
||
|
)
|
||
|
|
||
|
// Dmesg returns last messages from the kernel log, up to size bytes
|
||
|
func Dmesg(size int) []byte {
|
||
|
t := uintptr(3) // SYSLOG_ACTION_READ_ALL
|
||
|
b := make([]byte, size)
|
||
|
amt, _, err := unix.Syscall(unix.SYS_SYSLOG, t, uintptr(unsafe.Pointer(&b[0])), uintptr(len(b)))
|
||
|
if err != 0 {
|
||
|
return []byte{}
|
||
|
}
|
||
|
return b[:amt]
|
||
|
}
|