diff options
author | Nicolas Iooss <nicolas.iooss@m4x.org> | 2016-02-11 15:07:52 +0100 |
---|---|---|
committer | Pádraig Brady <P@draigBrady.com> | 2016-12-18 20:03:59 +0000 |
commit | be2f82f670b914e26ffcbbff0378a0452d432d1c (patch) | |
tree | 5b00c4a1b0c0547351683ec5c4d94cd2ac78a46f /tests/install | |
parent | ca52f3bf3f48a1a296e70bff5fd77ff789c570f5 (diff) | |
download | coreutils-be2f82f670b914e26ffcbbff0378a0452d432d1c.tar.xz |
tests: support non-MLS enabled SELinux systems
When running "make check" on a Linux system running SELinux with a
non-MLS policy, tests/mkdir/restorecon.sh test fails with:
chcon: invalid context: root:object_r:tmp_t:s0: Invalid argument
Indeed in such a configuration, contexts cannot have ":s0" suffix.
* init.cfg (get_selinux_type): Refactor this function to here
from various tests. Update to work with a non-MLS policy.
(mls_enabled_): A new function to detect if MLS is enabled.
(skip_if_mcstransd_is_running_): Update to not skip when
MLS is not enabled.
* tests/mkdir/restorecon.sh: Use a valid non-MLS context when needed.
* tests/install/install-Z-selinux.sh: Likewise.
* tests/cp/cp-a-selinux.sh: Likewise.
* tests/misc/selinux.sh: Likewise.
* tests/misc/chcon.sh: Skip if non-MLS as --range used throughout.
Fixes http://bugs.gnu.org/22631
Diffstat (limited to 'tests/install')
-rwxr-xr-x | tests/install/install-Z-selinux.sh | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/tests/install/install-Z-selinux.sh b/tests/install/install-Z-selinux.sh index 9c3b6420b..c63a47862 100755 --- a/tests/install/install-Z-selinux.sh +++ b/tests/install/install-Z-selinux.sh @@ -21,11 +21,10 @@ print_ver_ ginstall require_selinux_ - -get_selinux_type() { ls -Zd "$1" | sed -n 's/.*:\(.*_t\):.*/\1/p'; } - mkdir subdir || framework_failure_ -chcon 'root:object_r:tmp_t:s0' subdir || framework_failure_ +ctx='root:object_r:tmp_t' +mls_enabled_ && ctx="$ctx:s0" +chcon "$ctx" subdir || framework_failure_ cd subdir # Since in a tmp_t dir, dirs can be created as user_tmp_t ... |