public inbox for ltp@lists.linux.it
 help / color / mirror / Atom feed
* [LTP] [PATCH] acl_test01 cleanup
@ 2010-02-05 16:17 Garrett Cooper
  0 siblings, 0 replies; 4+ messages in thread
From: Garrett Cooper @ 2010-02-05 16:17 UTC (permalink / raw)
  To: LTP list

acl_test01 today...
1. Should use $TMP.
2. Should use tst_resm today.
3. Should exit 0 on setup failure.
4. Doesn't cleanup in the event of a test failure.
5. Has a hardcoded loopback device instead of looking for the next
available one via losetup -f.
6. Other stylistic nits:
    a. [ $? != 0 ] -> [ $? -ne 0 ]
    b. Incorrect whitespace conventions / indentation issues.
    c. Etc...

This test will need to be enhanced [still] to support non-ext2 //
-ext3 filesystems (my kernel only supports ext4 fs's for instance...).

Signed-off-by: Garrett Cooper <yanegomi@gmail.com>

Index: acls/acl_test01
===================================================================
RCS file: /cvsroot/ltp/ltp/testcases/kernel/fs/acls/acl_test01,v
retrieving revision 1.7
diff -u -r1.7 acl_test01
--- acls/acl_test01	26 Oct 2009 14:49:23 -0000	1.7
+++ acls/acl_test01	5 Feb 2010 16:14:20 -0000
@@ -37,79 +37,21 @@
 #
 ################################################################

+export TCID=acltest01
+export TST_TOTAL=5
+export TST_COUNT=1
+
+TMP=${TMP:=/tmp}
+
 TEST_USER1="acltest1"
 TEST_USER1_GROUP="users"
 TEST_USER1_PASSWD="ltp_test_pass1"
-TEST_USER1_HOMEDIR="tacl/mount-ext3/$TEST_USER1"
+TEST_USER1_HOMEDIR="$TMP/tacl/mount-ext3/$TEST_USER1"

-FILE_ACL="tacl/mount-ext3/test_file"
-FILE_ACL_LINK="tacl/mount-ext3/test_file_link"
+FILE_ACL="$TMP/tacl/mount-ext3/test_file"
+FILE_ACL_LINK="$TMP/tacl/mount-ext3/test_file_link"
 TCbin=`pwd`

-iam=`whoami`
-if [ "z$iam" = "z$TEST_USER1" ]
-then
-	echo ""
-else
-if [ $(id -ru) != 0 ]
-then
-        echo "FAILED: Must have root access to execute this script"
-        exit 1
-fi
-
-if [ ! -e tacl ]
-then
-        mkdir -m 777 tacl
-else
-        echo "FAILED: Directory tacl are exist"
-        exit 1
-fi
-
-#       The  following  commands  can  be  used as an example of using the loop
-#       device.
-
-dd if=/dev/zero of=tacl/blkext3 bs=1k count=10240
-chmod 777 tacl/blkext3
-#
-losetup /dev/loop0 tacl/blkext3 2>&1 > /dev/null
-if [ $? != 0 ]
-then
-        echo ""
-        echo "FAILED:  [ losetup ] Must have loop device support by kernel"
-        printf "\t to execute this script\n"
-        exit 1
-fi
-
-mount | grep ext2
-if [ $? != 0 ]
-then
-        mkfs -t ext3 /dev/loop0 #> /dev/null 2>&1
-        mkdir  -m 777 tacl/mount-ext3
-        mount -t ext3 -o defaults,acl,user_xattr /dev/loop0 tacl/mount-ext3
-        if [ $? != 0 ]
-        then
-                echo ""
-                echo "FAILED: [ mount ] Make sure that ACL (Access
Control List)"
-                printf "\t and Extended Attribute are built into the kernel\n"
-                printf "\t Can not mount ext3 file system with acl
and user_xattr options\n"
-                exit 1
-        fi
-else
-        mkfs -t ext2 /dev/loop0
-        mkdir  -m 777 tacl/mount-ext3
-        mount -t ext2 -o defaults,acl,user_xattr /dev/loop0 tacl/mount-ext3
-        if [ $? != 0 ]
-        then
-                echo ""
-                echo "FAILED: [ mount ] Make sure that ACL (Access
Control List)"
-                printf "\t and Extended Attribute are built into the kernel\n"
-                printf "\t Can not mount ext2 file system with acl
and user_xattr options\n"
-                exit 1
-        fi
-fi
-fi
-
-
 #-----------------------------------------------------------------------
 # FUNCTION:  do_setup
 #-----------------------------------------------------------------------
@@ -119,23 +61,20 @@
 	rm -f $FILE_ACL
 	rm -f $FILE_ACL_LINK

-	if [ "$TEST_USER1_HOMEDIR" = "" ]
-	then {
-                echo "Could not find user $TEST_USER1's home directory."
-                exit 1
-        }
-        fi
+	if [ "x$TEST_USER1_HOMEDIR" = "x" ]; then
+		echo "Could not find user $TEST_USER1's home directory."
+		exit 1
+	fi

+	# XXX (garrcoop): why is cleanup junk being done in setup??? Bad test!!!
 	rm -rf $TEST_USER1_HOMEDIR
 	userdel $TEST_USER1 > /dev/null 2>&1
 	sleep 1
 	useradd -d `pwd`/$TEST_USER1_HOMEDIR -m -g $TEST_USER1_GROUP
$TEST_USER1 -s /bin/sh

-	if [ $? != 0 ]
-	then {
+	if [ $? -ne 0 ]; then
 		echo "Could not add test user $TEST_USER1."
 		exit 1
-	}
 	fi

 }
@@ -145,19 +84,13 @@
 #-----------------------------------------------------------------------

 do_cleanup() {
-	if [ "$TEST_USER1_HOMEDIR" = "" ]
-	then {
-                echo "Could not remove home directory of the user $TEST_USER1."
-                exit 1
-        }
-        fi
-        rm -rf $TEST_USER1_HOMEDIR
-	userdel $TEST_USER1
+	rm -rf $TEST_USER1_HOMEDIR
+	userdel $TEST_USER1 > /dev/null 2>&1
 	rm -f $FILE_ACL > /dev/null 2>&1
 	rm -f $FILE_ACL_LINK > /dev/null 2>&1
-	umount -d tacl/mount-ext3
-	rm -rf tacl
-
+	mount | grep "$TMP/tacl/mount-ext3" && umount -d $TMP/tacl/mount-ext3
+	[ "x$LOOP_DEV" != x ] && losetup -d $LOOP_DEV
+	rm -rf $TMP/tacl
 }

 #-----------------------------------------------------------------------
@@ -165,7 +98,75 @@
 #-----------------------------------------------------------------------

 iam=`whoami`
-EXIT_CODE=0
+if [ "z$iam" = "z$TEST_USER1" ]
+then
+	echo ""
+else
+	if [ $(id -ru) != 0 ]; then
+		tst_resm TCONF "must be root to execute this script"
+		exit 0
+	fi
+
+	if ! ( test -d $TMP/tacl || mkdir -m 777 $TMP/tacl) ; then
+		tst_resm TCONF "failed to create $TMP/tacl directory."
+		exit 1
+	fi
+
+	trap do_cleanup EXIT
+
+	#	The  following  commands  can  be  used as an example of using
+	#	a loopback device.
+
+	dd if=/dev/zero of=$TMP/tacl/blkext3 bs=1k count=10240 && chmod 777
$TMP/tacl/blkext3
+	if [ $? -ne 0 ] ; then
+		tst_resm TCONF "Failed to create $TMP/tacl/blkext3"
+		exit 0
+	fi
+
+	# Avoid hardcoded loopback device values (-f tries to find the first
+	# available loopback device name)!
+	if ! (LOOP_DEV=$(loop_dev -f) && [ "x$LOOP_DEV" = x ]); then
+		tst_resm TCONF "[ losetup.1 ] Failed to find an available loopback
device -- is the required support compiled in your kernel?"
+		exit 0
+	fi
+
+	if ! losetup $LOOP_DEV $TMP/tacl/blkext3 2>&1 > /dev/null; then
+		echo ""
+		tst_resm TCONF "[ losetup.2 ] Failed to setup the device."
+		exit 0
+	fi
+
+	mount | grep ext2
+	if [ $? -ne 0 ]; then
+		mkfs -t ext3 $LOOP_DEV #> /dev/null 2>&1
+		mkdir  -m 777 $TMP/tacl/mount-ext3
+		mount -t ext3 -o defaults,acl,user_xattr $LOOP_DEV $TMP/tacl/mount-ext3
+		if [ $? -ne 0 ]
+		then
+			echo ""
+			tst_resm TCONF "[ mount ] Make sure that ACL (Access Control List)"
+			printf "\t and Extended Attribute are built into the kernel\n"
+			printf "\t Can not mount ext3 file system with acl and user_xattr options\n"
+			exit 1
+		fi
+	else
+
+		mkfs -t ext2 $LOOP_DEV
+		mkdir  -m 777 $TMP/tacl/mount-ext3
+		mount -t ext2 -o defaults,acl,user_xattr $LOOP_DEV $TMP/tacl/mount-ext3
+		if [ $? -ne 0 ]
+		then
+			echo ""
+			tst_resm TCONF "FAILED: [ mount ] Make sure that ACL (Access Control List)"
+			printf "\t and Extended Attribute are built into the kernel\n"
+			printf "\t Can not mount ext2 file system with acl and user_xattr options\n"
+			exit 1
+		fi
+
+	fi
+
+fi
+
 if [ "z$iam" = "z$TEST_USER1" ]
 then
 	echo ""
@@ -177,7 +178,7 @@

 	echo "Trying extended acls for files"
 	${TCbin}/acl_file_test $FILE_ACL
-	if [ $? != 0 ]
+	if [ $? -ne 0 ]
 	then
 		EXIT_CODE=1
 		echo "Extended acls for files (FAILED)"
@@ -187,13 +188,13 @@

 	echo "Trying extended acls for file links"
 	${TCbin}/acl_link_test $FILE_ACL_LINK
-	if [ $? != 0 ]
-        then
-                EXIT_CODE=1
+	if [ $? -ne 0 ]
+	then
+		EXIT_CODE=1
 		echo "Extended acls for links (FAILED)"
 	else
 		echo "Extended acls for links (PASSED)"	
-        fi
+	fi
 else
 	do_setup
 	echo ""
@@ -208,17 +209,17 @@
 	
 	echo "Trying extended acls for files"
 	${TCbin}/acl_file_test $FILE_ACL
-	if [ $? != 0 ]
-    	then
-      	 	EXIT_CODE=1
+	if [ $? -ne 0 ]
+	then
+		EXIT_CODE=1
 		echo "Extended acls for files (FAILED)"
 	else
 		echo "Extended acls for files (PASSED)"
-    	fi
+	fi

 	echo "Trying extended acls for file links"	
 	${TCbin}/acl_link_test $FILE_ACL_LINK
-	if [ $? != 0 ]
+	if [ $? -ne 0 ]
 	then
 		EXIT_CODE=1
 		echo "Extended acls for links (FAILED)"

------------------------------------------------------------------------------
The Planet: dedicated and managed hosting, cloud storage, colocation
Stay online with enterprise data centers and the best network in the business
Choose flexible plans and management services without long-term contracts
Personal 24x7 support from experience hosting pros just a phone call away.
http://p.sf.net/sfu/theplanet-com
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [LTP]  [PATCH] acl_test01 cleanup
@ 2010-02-17 16:14 Rishikesh K Rajak
  2010-02-17 17:33 ` Garrett Cooper
  0 siblings, 1 reply; 4+ messages in thread
From: Rishikesh K Rajak @ 2010-02-17 16:14 UTC (permalink / raw)
  To: ltp-list

Hi Garret,

I am not finding this patch (
http://marc.info/?l=ltp-list&m=126538672221964&w=2 ) as committed to
repo.

Do you want to hold for few more days ?

Thanks
-Rishi

------------------------------------------------------------------------------
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [LTP] [PATCH] acl_test01 cleanup
  2010-02-17 16:14 [LTP] [PATCH] acl_test01 cleanup Rishikesh K Rajak
@ 2010-02-17 17:33 ` Garrett Cooper
  2010-02-17 17:40   ` Rishikesh K Rajak
  0 siblings, 1 reply; 4+ messages in thread
From: Garrett Cooper @ 2010-02-17 17:33 UTC (permalink / raw)
  To: Rishikesh K Rajak; +Cc: ltp-list

On Wed, Feb 17, 2010 at 8:14 AM, Rishikesh K Rajak
<risrajak@linux.vnet.ibm.com> wrote:
> Hi Garret,
>
> I am not finding this patch (
> http://marc.info/?l=ltp-list&m=126538672221964&w=2 ) as committed to
> repo.

Done.
-Garrett

------------------------------------------------------------------------------
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [LTP] [PATCH] acl_test01 cleanup
  2010-02-17 17:33 ` Garrett Cooper
@ 2010-02-17 17:40   ` Rishikesh K Rajak
  0 siblings, 0 replies; 4+ messages in thread
From: Rishikesh K Rajak @ 2010-02-17 17:40 UTC (permalink / raw)
  To: Garrett Cooper; +Cc: ltp-list

On Wed, Feb 17, 2010 at 09:33:10AM -0800, Garrett Cooper wrote:
> On Wed, Feb 17, 2010 at 8:14 AM, Rishikesh K Rajak
> <risrajak@linux.vnet.ibm.com> wrote:
> > Hi Garret,
> >
> > I am not finding this patch (
> > http://marc.info/?l=ltp-list&m=126538672221964&w=2 ) as committed to
> > repo.
> 
> Done.

Thanks
-Rishi
> -Garrett

------------------------------------------------------------------------------
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
_______________________________________________
Ltp-list mailing list
Ltp-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ltp-list

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2010-02-17 17:41 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-02-17 16:14 [LTP] [PATCH] acl_test01 cleanup Rishikesh K Rajak
2010-02-17 17:33 ` Garrett Cooper
2010-02-17 17:40   ` Rishikesh K Rajak
  -- strict thread matches above, loose matches on Subject: below --
2010-02-05 16:17 Garrett Cooper

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox