From: Ondřej Vašík Date: Mon, 27 Apr 2009 15:29:53 +0000 (+0200) Subject: tests: ensure that cp's -a doesn't silence --preserve=context X-Git-Tag: v7.3~12 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=cb9fd937437cf4f9347925f6b9c82f4e92bae6e5;p=thirdparty%2Fcoreutils.git tests: ensure that cp's -a doesn't silence --preserve=context * tests/cp/cp-a-selinux: Ensure that the -a option does not silence error diagnostics from --preserve=context, when preserving context is required. --- diff --git a/tests/cp/cp-a-selinux b/tests/cp/cp-a-selinux index 8b7cc4d305..b1359c098d 100755 --- a/tests/cp/cp-a-selinux +++ b/tests/cp/cp-a-selinux @@ -78,6 +78,14 @@ cp --preserve=context f g 2> out && fail=1 # Here, we *do* expect the destination to be empty. test -s g && fail=1 +rm -f g +echo > g +# Check if -a option doesn't silence --preserve=context option diagnostics +cp -a --preserve=context f g 2> out2 && fail=1 + +# Here, we *do* expect the destination to be empty. +test -s g && fail=1 + # An alternative to the current approach would be to run in a confined # domain (maybe creating/loading it) that lacks the required permissions # to the file type. @@ -87,11 +95,14 @@ test -s g && fail=1 # Operation not supported sed "s/ .g' to .*//" out > k mv k out +sed "s/ .g' to .*//" out2 > k +mv k out2 cat <<\EOF > exp || fail=1 cp: failed to set the security context of EOF compare out exp || fail=1 +compare out2 exp || fail=1 Exit $fail