From ab0052af6f276ac3c461c035a1191457aff19bd2 Mon Sep 17 00:00:00 2001 From: pengzhao Date: Tue, 11 Mar 2003 07:17:03 +0000 Subject: [PATCH] Bug 828 is fixed by Peng Zhao, arrpoved by Andreas. runas.c allows the root to "runas" another user to do things. --- lustre/tests/Makefile.am | 3 ++- lustre/tests/sanity.sh | 14 ++++++++------ 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/lustre/tests/Makefile.am b/lustre/tests/Makefile.am index 628c46b..6d23b3d 100644 --- a/lustre/tests/Makefile.am +++ b/lustre/tests/Makefile.am @@ -26,7 +26,7 @@ noinst_PROGRAMS = openunlink testreq truncate directio openme writeme open_delay noinst_PROGRAMS += munlink tchmod toexcl fsx test_brw openclose createdestroy noinst_PROGRAMS += stat createmany statmany multifstat createtest mlink # noinst_PROGRAMS += ldaptest -noinst_PROGRAMS += checkstat wantedi statone +noinst_PROGRAMS += checkstat wantedi statone runas sbin_PROGRAMS = mcreate mkdirmany # ldaptest_SOURCES = ldaptest.c @@ -52,6 +52,7 @@ statone_SOURCES = statone.c mkdirmany_SOURCES = mkdirmany.c multifstat_SOURCES = multifstat.c checkstat_SOURCES = checkstat.c +runas_SOURCES = runas.c wantedi_SOURCES = wantedi.c createtest_SOURCES = createtest.c open_delay_SOURCES = open_delay.c diff --git a/lustre/tests/sanity.sh b/lustre/tests/sanity.sh index c3e201f..5c4d47d 100644 --- a/lustre/tests/sanity.sh +++ b/lustre/tests/sanity.sh @@ -12,6 +12,9 @@ LSTRIPE=${LSTRIPE:-lstripe} MCREATE=${MCREATE:-mcreate} TOEXCL=${TOEXCL:-toexcl} +RUNAS_ID=${RUNAS_ID:-500} +RUNAS=${RUNAS:-"runas -u $RUNAS_ID"} + MOUNT=${MOUNT:-/mnt/lustre} DIR=${DIR:-$MOUNT} export NAME=$NAME @@ -298,14 +301,13 @@ $START log '== unpack tar archive as non-root user =========== test 22' mkdir $DIR/d22 -which sudo && chown 4711 $DIR/d22 -SUDO=`which sudo 2> /dev/null` && SUDO="$SUDO -u #4711" || SUDO="" -echo '**** FIX THIS TEST ****' -SUDO="" -$SUDO tar cf - /etc/hosts /etc/sysconfig/network | $SUDO tar xfC - $DIR/d22 +[ $UID -ne 0 ] && RUNAS="" +[ $UID -ne 0 ] && RUNAS_ID="$UID" +chown $RUNAS_ID $DIR/d22 +$RUNAS tar cf - /etc/hosts /etc/sysconfig/network | $RUNAS tar xfC - $DIR/d22 ls -lR $DIR/d22/etc $CHECKSTAT -t dir $DIR/d22/etc || error -[ -z "$SUDO" ] || $CHECKSTAT -u \#4711 $DIR/d22/etc || error +$CHECKSTAT -u \#$RUNAS_ID $DIR/d22/etc || error pass $CLEAN $START -- 1.8.3.1