summaryrefslogtreecommitdiff
path: root/test/e2e/privileged_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'test/e2e/privileged_test.go')
-rw-r--r--test/e2e/privileged_test.go37
1 files changed, 37 insertions, 0 deletions
diff --git a/test/e2e/privileged_test.go b/test/e2e/privileged_test.go
index 1da9ed07e..b660e1b55 100644
--- a/test/e2e/privileged_test.go
+++ b/test/e2e/privileged_test.go
@@ -5,6 +5,7 @@ import (
. "github.com/onsi/ginkgo"
. "github.com/onsi/gomega"
+ "strings"
)
var _ = Describe("Podman privileged container tests", func() {
@@ -36,4 +37,40 @@ var _ = Describe("Podman privileged container tests", func() {
Expect(ok).To(BeTrue())
Expect(lines[0]).To(ContainSubstring("sysfs (rw,"))
})
+
+ It("podman privileged CapEff", func() {
+ cap := podmanTest.SystemExec("grep", []string{"CapEff", "/proc/self/status"})
+ cap.WaitWithDefaultTimeout()
+ Expect(cap.ExitCode()).To(Equal(0))
+
+ session := podmanTest.Podman([]string{"run", "--privileged", "busybox", "grep", "CapEff", "/proc/self/status"})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+ Expect(session.OutputToString()).To(Equal(cap.OutputToString()))
+ })
+
+ It("podman cap-add CapEff", func() {
+ cap := podmanTest.SystemExec("grep", []string{"CapEff", "/proc/self/status"})
+ cap.WaitWithDefaultTimeout()
+ Expect(cap.ExitCode()).To(Equal(0))
+
+ session := podmanTest.Podman([]string{"run", "--cap-add", "all", "busybox", "grep", "CapEff", "/proc/self/status"})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+ Expect(session.OutputToString()).To(Equal(cap.OutputToString()))
+ })
+
+ It("podman cap-drop CapEff", func() {
+ cap := podmanTest.SystemExec("grep", []string{"CapAmb", "/proc/self/status"})
+ cap.WaitWithDefaultTimeout()
+ Expect(cap.ExitCode()).To(Equal(0))
+ session := podmanTest.Podman([]string{"run", "--cap-drop", "all", "busybox", "grep", "CapEff", "/proc/self/status"})
+ session.WaitWithDefaultTimeout()
+ Expect(session.ExitCode()).To(Equal(0))
+
+ capAmp := strings.Split(cap.OutputToString(), " ")
+ capEff := strings.Split(session.OutputToString(), " ")
+ Expect(capAmp[1]).To(Equal(capEff[1]))
+ })
+
})