From: Jeff Layton <jlayton@kernel.org>
To: fstests@vger.kernel.org
Cc: Jeff Layton <jlayton@kernel.org>
Subject: [PATCH] common/attr: fix the _require_acl test
Date: Wed, 23 Aug 2023 06:33:20 -0400 [thread overview]
Message-ID: <20230823-require_acl-v1-1-cf24b72123dd@kernel.org> (raw)
_require_acl tests whether you're able to fetch the ACL from a file
using chacl. Unfortunately, filesystems like NFSv4 that don't support
POSIX ACLs return -ENODATA when someone calls getxattr for
system.posix_acl_access. chacl treats that as if there is no ACL
attached to the file and so doesn't return an error even though the
filesystem doesn't support ACLs.
Fix the test to have chacl set an ACL on the file instead, which should
reliably fail on filesystems that don't support them.
Signed-off-by: Jeff Layton <jlayton@kernel.org>
---
common/attr | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/common/attr b/common/attr
index cce4d1b201b2..3ebba682c894 100644
--- a/common/attr
+++ b/common/attr
@@ -163,13 +163,12 @@ _require_acls()
[ -n "$CHACL_PROG" ] || _notrun "chacl command not found"
#
- # Test if chacl is able to list ACLs on the target filesystems. On really
- # old kernels the system calls might not be implemented at all, but the
- # more common case is that the tested filesystem simply doesn't support
- # ACLs.
+ # Test if chacl is able to set an ACL on a file. On really old kernels
+ # the system calls might not be implemented at all, but the more common
+ # case is that the tested filesystem simply doesn't support ACLs.
#
touch $TEST_DIR/syscalltest
- chacl -l $TEST_DIR/syscalltest > $TEST_DIR/syscalltest.out 2>&1
+ chacl 'u::rw-,g::---,o::---' $TEST_DIR/syscalltest > $TEST_DIR/syscalltest.out 2>&1
cat $TEST_DIR/syscalltest.out >> $seqres.full
if grep -q 'Function not implemented' $TEST_DIR/syscalltest.out; then
---
base-commit: 8de535c53887bb49adae74a1b2e83e77d7e8457d
change-id: 20230823-require_acl-f8cb2b777822
Best regards,
--
Jeff Layton <jlayton@kernel.org>
reply other threads:[~2023-08-23 10:34 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230823-require_acl-v1-1-cf24b72123dd@kernel.org \
--to=jlayton@kernel.org \
--cc=fstests@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox