mirror of
https://git.savannah.gnu.org/git/coreutils.git
synced 2025-09-10 07:59:52 +02:00
tests: skip tests upon failure to set SELinux context
On some setups the root:object_r:tmp_t context is invalid. This does indicate a limitation in the test framework, but for now we'll relax this to skipping the tests. The tests still run on a Fedora 25 system for example. * tests/cp/cp-a-selinux.sh: Upon chcon error, skip rather than ERROR. * tests/install/install-Z-selinux.sh: Likewise. * tests/misc/chcon.sh: Likewise. * tests/misc/runcon-no-reorder.sh: Likewise. * tests/misc/selinux.sh: Likewise. * tests/mkdir/restorecon.sh: Likewise.
This commit is contained in:
@@ -33,7 +33,7 @@ mls_enabled_ && ctx="$ctx:s0"
|
||||
|
||||
# Check basic functionality - before check on fixed context mount
|
||||
touch c || framework_failure_
|
||||
chcon $ctx c || framework_failure_
|
||||
chcon $ctx c || skip "Failed to set context: $ctx"
|
||||
cp -a c d 2>err || framework_failure_
|
||||
cp --preserve=context c e || framework_failure_
|
||||
cp --preserve=all c f || framework_failure_
|
||||
|
||||
@@ -24,7 +24,7 @@ require_selinux_
|
||||
mkdir subdir || framework_failure_
|
||||
ctx='root:object_r:tmp_t'
|
||||
mls_enabled_ && ctx="$ctx:s0"
|
||||
chcon "$ctx" subdir || framework_failure_
|
||||
chcon "$ctx" subdir || skip "Failed to set context: $ctx"
|
||||
cd subdir
|
||||
|
||||
# Since in a tmp_t dir, dirs can be created as user_tmp_t ...
|
||||
|
||||
@@ -35,7 +35,7 @@ r1=object_r
|
||||
t1=tmp_t
|
||||
range=s0
|
||||
ctx=$u1:$r1:$t1:$range
|
||||
chcon $ctx f || fail=1
|
||||
chcon $ctx f || skip "Failed to set context: $ctx"
|
||||
stat --printf='f|%C\n' f > out || fail=1
|
||||
|
||||
# Use --reference.
|
||||
|
||||
@@ -30,7 +30,7 @@ echo "$diag" > exp || framework_failure_
|
||||
runcon $(id -Z) true -j 2> out && > exp
|
||||
|
||||
# When run on a system with no /selinux/context (i.e., in a chroot),
|
||||
# it chcon fails with this: "runcon: invalid context: \
|
||||
# it fails with this: "runcon: invalid context: \
|
||||
# root:system_r:unconfined_t:s0-s0:c0.c1023: No such file or directory"
|
||||
# That diagnostic is ok, too, so map it to the more common one.
|
||||
case $(cat out) in
|
||||
|
||||
@@ -33,8 +33,7 @@ mkfifo_or_skip_ p
|
||||
ctx='root:object_r:tmp_t'
|
||||
mls_enabled_ && ctx="$ctx:s0"
|
||||
|
||||
chcon $ctx f d p ||
|
||||
skip_ '"chcon '$ctx' ..." failed'
|
||||
chcon $ctx f d p || skip "Failed to set context: $ctx"
|
||||
|
||||
# inspect that context with both ls -Z and stat.
|
||||
for i in d f p; do
|
||||
|
||||
@@ -23,7 +23,7 @@ require_selinux_
|
||||
mkdir subdir || framework_failure_
|
||||
ctx='root:object_r:tmp_t'
|
||||
mls_enabled_ && ctx="$ctx:s0"
|
||||
chcon "$ctx" subdir || framework_failure_
|
||||
chcon "$ctx" subdir || skip "Failed to set context: $ctx"
|
||||
cd subdir
|
||||
|
||||
# --- mkdir -Z ---
|
||||
|
||||
Reference in New Issue
Block a user