aboutsummaryrefslogtreecommitdiff
path: root/test/checkseccomp/checkseccomp.go
blob: 9046e09556d032627214adfa73ead3ec48f0805b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// +build seccomp

package main

import (
	"os"

	"golang.org/x/sys/unix"
)

func main() {
	// Check if Seccomp is supported, via CONFIG_SECCOMP.
	if err := unix.Prctl(unix.PR_GET_SECCOMP, 0, 0, 0, 0); err != unix.EINVAL {
		// Make sure the kernel has CONFIG_SECCOMP_FILTER.
		if err := unix.Prctl(unix.PR_SET_SECCOMP, unix.SECCOMP_MODE_FILTER, 0, 0, 0); err != unix.EINVAL {
			os.Exit(0)
		}
	}
	os.Exit(1)
}