test-capability: CAP_LINUX_IMMUTABLE is not available in unprivileged containers
authorLuca Boccassi <luca.boccassi@gmail.com>
Wed, 11 Dec 2024 18:31:08 +0000 (18:31 +0000)
committerLuca Boccassi <bluca@debian.org>
Wed, 11 Dec 2024 18:31:08 +0000 (18:31 +0000)
Origin: upstream, commit:058a07635f3ff70cc99943dcf4f2a079bc9c28b9
Forwarded: yes

Gbp-Pq: Name test-capability-CAP_LINUX_IMMUTABLE-is-not-available-in-u.patch

src/test/test-capability.c

index 51bd80634809d84e21cf3352b0ef6fcf3d4cda77..127f5e3d87213099483be8ea406397a388fb1e84 100644 (file)
@@ -254,6 +254,13 @@ static void test_capability_get_ambient(void) {
 
         ASSERT_OK(capability_get_ambient(&c));
 
+        r = prctl(PR_CAPBSET_READ, CAP_MKNOD);
+        if (r <= 0)
+                return (void) log_tests_skipped("Lacking CAP_MKNOD, skipping getambient test.");
+        r = prctl(PR_CAPBSET_READ, CAP_LINUX_IMMUTABLE);
+        if (r <= 0)
+                return (void) log_tests_skipped("Lacking CAP_LINUX_IMMUTABLE, skipping getambient test.");
+
         r = safe_fork("(getambient)", FORK_RESET_SIGNALS|FORK_DEATHSIG_SIGTERM|FORK_WAIT|FORK_LOG, NULL);
         ASSERT_OK(r);