[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#22631: [PATCH] tests: support non-MLS SELinux systems in mkdir tests
From: |
Pádraig Brady |
Subject: |
bug#22631: [PATCH] tests: support non-MLS SELinux systems in mkdir tests |
Date: |
Thu, 11 Feb 2016 20:33:10 -0800 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 |
On 11/02/16 06:07, Nicolas Iooss wrote:
> 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.
>
> * tests/mkdir/restorecon.sh: detect non-MLS SELinux configurations by
> using sestatus and in this case use a valid context when calling
> runcon. Update the sed pattern of get_selinux_type to always grab the
> SELinux type from the output of "ls -Zd" even with a non-MLS policy.
> ---
> tests/mkdir/restorecon.sh | 8 ++++++--
> 1 file changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/tests/mkdir/restorecon.sh b/tests/mkdir/restorecon.sh
> index 0e7f03bc93db..cfd3bdda9637 100755
> --- a/tests/mkdir/restorecon.sh
> +++ b/tests/mkdir/restorecon.sh
> @@ -21,10 +21,14 @@ print_ver_ mkdir mknod mkfifo
> require_selinux_
>
>
> -get_selinux_type() { ls -Zd "$1" | sed -n 's/.*:\(.*_t\):.*/\1/p'; }
> +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_
> +if sestatus 2>&1 |grep 'Policy MLS status:.*enabled' > /dev/null; then
> + chcon 'root:object_r:tmp_t:s0' subdir || framework_failure_
> +else
> + chcon 'root:object_r:tmp_t' subdir || framework_failure_
> +fi
> cd subdir
>
> # --- mkdir -Z ---
>
+1
thanks!
Pádraig