From 6e5a88bc7749b3fe4d9419b95a2ba2b596e3f837 Mon Sep 17 00:00:00 2001 From: Andinus Date: Wed, 15 Apr 2020 19:20:22 +0530 Subject: Rename func UnveilPath to Unveil UnveilPath is confusing, it's kept only for backwards compatibility & users should use Unveil & UnveilStrict instead of UnveilPath & UnveilPathStrict. --- unveil.go | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 unveil.go (limited to 'unveil.go') diff --git a/unveil.go b/unveil.go new file mode 100644 index 0000000..3069ec6 --- /dev/null +++ b/unveil.go @@ -0,0 +1,39 @@ +// +build openbsd + +package lynx + +import "golang.org/x/sys/unix" + +// Unveil takes a path, permission & unveils it, returning an +// error if unveil fails. "no such file or directory" error is +// ignored. +func Unveil(path string, flags string) (err error) { + err = unix.Unveil(path, flags) + + // "no such file or directory" error is ignored. + if err != nil && err.Error() != "no such file or directory" { + // Better error message could be returned like + // one that includes the path on which unveil + // failed. + return err + } + // Returning nil because err can be "no such file or + // directory" which needs to be ignored. + return nil +} + +// UnveilPath is kept for backwards compatibility, use Unveil instead. +func UnveilPath(path string, flags string) (err error) { + return Unveil(path, flags) +} + +// UnveilStrict is just a wrapper around unix.Unveil. +func UnveilStrict(path string, flags string) error { + return unix.Unveil(path, flags) +} + +// UnveilPathStrict is kept for backwards compatibility, use +// UnveilStrict instead. +func UnveilPathStrict(path string, flags string) error { + return UnveilStrict(path, flags) +} -- cgit 1.4.1-2-gfad0