diff --git a/pkg/parsers/kernel/kernel_unix.go b/pkg/parsers/kernel/kernel_unix.go index 744d5e1f83..bd137dfb6f 100644 --- a/pkg/parsers/kernel/kernel_unix.go +++ b/pkg/parsers/kernel/kernel_unix.go @@ -1,4 +1,4 @@ -// +build linux freebsd solaris +// +build linux freebsd solaris openbsd // Package kernel provides helper function to get, parse and compare kernel // versions for different platforms. diff --git a/pkg/system/stat_openbsd.go b/pkg/system/stat_openbsd.go index 3c3b71fb21..1f55220df3 100644 --- a/pkg/system/stat_openbsd.go +++ b/pkg/system/stat_openbsd.go @@ -13,3 +13,15 @@ func fromStatT(s *syscall.Stat_t) (*StatT, error) { rdev: uint64(s.Rdev), mtim: s.Mtim}, nil } + +// Stat takes a path to a file and returns +// a system.Stat_t type pertaining to that file. +// +// Throws an error if the file does not exist +func Stat(path string) (*StatT, error) { + s := &syscall.Stat_t{} + if err := syscall.Stat(path, s); err != nil { + return nil, err + } + return fromStatT(s) +}