]> www.infradead.org Git - users/hch/xfstests-dev.git/commitdiff
acl and exec perms test
authorTim Shimmin <tes@sgi.com>
Wed, 2 Mar 2005 04:59:50 +0000 (04:59 +0000)
committerTim Shimmin <tes@sgi.com>
Wed, 2 Mar 2005 04:59:50 +0000 (04:59 +0000)
Merge of master-melb:xfs-cmds:21690a by kenmcd.

  acl and exec perms test

105 [new file with mode: 0755]
105.out [new file with mode: 0644]
group

diff --git a/105 b/105
new file mode 100755 (executable)
index 0000000..fbc573c
--- /dev/null
+++ b/105
@@ -0,0 +1,108 @@
+#! /bin/sh
+# FS QA Test No. 105
+#
+# Test fix of bug: 
+#   930290 - xfs directory with no exec perm in ACL denies access 
+#            and breaks CAPP evaluation
+#   which pulls out an earlier mod
+#
+#-----------------------------------------------------------------------
+# Copyright (c) 2000-2004 Silicon Graphics, Inc.  All Rights Reserved.
+# 
+# This program is free software; you can redistribute it and/or modify it
+# under the terms of version 2 of the GNU General Public License as
+# published by the Free Software Foundation.
+# 
+# This program is distributed in the hope that it would be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+# 
+# Further, this software is distributed without any warranty that it is
+# free of the rightful claim of any third person regarding infringement
+# or the like.  Any license provided herein, whether implied or
+# otherwise, applies only to this software file.  Patent licenses, if
+# any, provided herein do not apply to combinations of this program with
+# other software, or any other product whatsoever.
+# 
+# You should have received a copy of the GNU General Public License along
+# with this program; if not, write the Free Software Foundation, Inc., 59
+# Temple Place - Suite 330, Boston MA 02111-1307, USA.
+# 
+# Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pkwy,
+# Mountain View, CA  94043, or:
+# 
+# http://www.sgi.com 
+# 
+# For further information regarding this notice, see: 
+# 
+# http://oss.sgi.com/projects/GenInfo/SGIGPLNoticeExplan/
+#-----------------------------------------------------------------------
+#
+# creator
+owner=fsgqa@snap.melbourne.sgi.com
+
+seq=`basename $0`
+echo "QA output created by $seq"
+
+here=`pwd`
+tmp=/tmp/$$
+status=1       # failure is the default!
+trap "_cleanup; exit \$status" 0 1 2 3 15
+
+_cleanup()
+{
+    cd /
+}
+
+# get standard environment, filters and checks
+. ./common.rc
+. ./common.filter
+. ./common.attr
+
+# Modify as appropriate.
+_supported_fs xfs udf
+_supported_os IRIX Linux
+
+# real QA test starts here
+
+rm -f $seq.full
+
+_require_scratch
+
+_acl_setup_ids
+_acl_requirements
+
+umount $SCRATCH_DEV >/dev/null 2>&1
+echo "*** MKFS ***"                         >>$seq.full
+echo ""                                     >>$seq.full
+_scratch_mkfs                               >>$seq.full 2>&1 \
+       || _fail "mkfs failed"
+_scratch_mount                              >>$seq.full 2>&1 \
+       || _fail "mount failed"
+
+cd $SCRATCH_MNT
+
+# create a dir with out execute perms
+mkdir -m 600 subdir
+
+# make it owned by $acl1
+chown $acl1 subdir
+
+# put a file in the directory
+echo data > subdir/file
+ls -l subdir/file | awk '{ print $1, $3, $4 }'
+
+# add an ACL with a user ACE which has no exec permission 
+setfacl -m u:$acl1:r subdir
+
+# 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, $4 }'
+
+# With the bug this gives: `subdir/file2: Permission denied'.
+echo data2 > subdir/file2
+
+# success, all done
+status=0
+exit
diff --git a/105.out b/105.out
new file mode 100644 (file)
index 0000000..41676b5
--- /dev/null
+++ b/105.out
@@ -0,0 +1,3 @@
+QA output created by 105
+-rw-r--r-- root root
+-rw-r--r-- root root
diff --git a/group b/group
index ff5b85b486e33c8ed85c715cc40f02a834536349..959f2d32b27c4f7c9262dffd977a1e9ea4e03e3f 100644 (file)
--- a/group
+++ b/group
@@ -181,5 +181,6 @@ aio         nathans@sgi.com
 102 udf auto
 103 metadata dir ioctl auto
 104 growfs ioctl
+105 acl auto
 112 rw aio auto
 113 rw aio auto