diff options
author | Pádraig Brady <P@draigBrady.com> | 2015-10-10 16:55:20 +0100 |
---|---|---|
committer | Pádraig Brady <P@draigBrady.com> | 2015-10-10 17:05:37 +0100 |
commit | 88eb88ee23ed05c08103225e41c180caeccb6918 (patch) | |
tree | dc976cb37a07fda12b394e2bacf2b28ee9c5d5aa | |
parent | 934940b561fbf6d1adff862c6294968fc7e55e8c (diff) | |
download | coreutils-88eb88ee23ed05c08103225e41c180caeccb6918.tar.xz |
tests: avoid false failure when restorecon is ineffective
* tests/cp/cp-a-selinux.sh: Ensure we skip the portion of the test
depending on restorecon to be effective. I.E. also skip when restorecon
warns, as it doesn't exit with error status when matchpathcon fails to
find a match for a file. This is the case in /tmp on Fedora for
example, in which case the new destination that cp creates will have the
default security context of the process, rather than the explicit
context we set on the source file.
Details at: http://bugzilla.redhat.com/1247641
-rwxr-xr-x | tests/cp/cp-a-selinux.sh | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/tests/cp/cp-a-selinux.sh b/tests/cp/cp-a-selinux.sh index d000ee8f1..a889ad0a8 100755 --- a/tests/cp/cp-a-selinux.sh +++ b/tests/cp/cp-a-selinux.sh @@ -73,7 +73,8 @@ old_type_d=$(get_selinux_type c_d) # and get the adjusted type for comparison cp -a c Z1 || fail=1 cp -a c_d Z1_d || fail=1 -if restorecon Z1 Z1_d 2>/dev/null; then +if restorecon Z1 Z1_d 2>restorecon.err \ + && compare /dev/null restorecon.err; then new_type_f=$(get_selinux_type Z1) new_type_d=$(get_selinux_type Z1_d) |