From 640ecede93a8463b6155bda0bd83414130adc6d3 Mon Sep 17 00:00:00 2001 From: Eric Sandeen Date: Wed, 3 Feb 2010 08:35:24 -0600 Subject: [PATCH] xfstests: filter selinux output in _acl_ls etc When selinux is on, ls -l gives us a "." to indicate selinux attrs, which breaks some tests: === Test minimal ACE === Setup file --rwxrw-r-- id1 id2 file1 +-rwxrw-r--. id1 id2 file1 so make an _ls_l helper to filter that out. Signed-off-by: Eric Sandeen Reviewed-by: Christoph Hellwig --- 105 | 4 ++-- common.attr | 2 +- common.rc | 8 ++++++++ 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/105 b/105 index e3163fd9..9544c663 100755 --- a/105 +++ b/105 @@ -76,7 +76,7 @@ chown $acl1 subdir # put a file in the directory echo data > subdir/file -ls -l subdir/file | awk '{ print $1, $3 }' +_ls_l subdir/file | awk '{ print $1, $3 }' # add an ACL with a user ACE which has no exec permission if [ "$HOSTOS" == "Linux" ]; then @@ -91,7 +91,7 @@ fi # With the bug this gives: `ls: subdir/file: Permission denied' # because one needs at least an exec perm somewhere in acl # However, this should not hold true for directories. -ls -l subdir/file | awk '{ print $1, $3 }' +_ls_l subdir/file | awk '{ print $1, $3 }' # With the bug this gives: `subdir/file2: Permission denied'. echo data2 > subdir/file2 diff --git a/common.attr b/common.attr index a6b9b3b5..d12cc02b 100644 --- a/common.attr +++ b/common.attr @@ -58,7 +58,7 @@ _acl_filter_id() # _acl_ls() { - ls -ln $* | awk '{ print $1, $3, $4, $NF }' | _acl_filter_id + _ls_l -n $* | awk '{ print $1, $3, $4, $NF }' | _acl_filter_id } # diff --git a/common.rc b/common.rc index 16855143..67128381 100644 --- a/common.rc +++ b/common.rc @@ -37,6 +37,14 @@ dd() fi } +# ls -l w/ selinux sometimes puts a dot at the end: +# -rwxrw-r--. id1 id2 file1 + +_ls_l() +{ + ls -l $* | sed "s/\(^[-rwxdlbcpsStT]*\)\. /\1 /" +} + _mount_opts() { case $FSTYP in -- 2.39.5