51 lines
765 B
Bash
Executable File
51 lines
765 B
Bash
Executable File
#!/bin/sh
|
|
|
|
set -e
|
|
|
|
cd $(dirname $0)
|
|
|
|
# Rational:
|
|
# Test chage with bogus inputs
|
|
|
|
# no testsuite password
|
|
# root password: rootF00barbaz
|
|
# myuser password: myuserF00barbaz
|
|
|
|
save()
|
|
{
|
|
[ ! -d tmp ] && mkdir tmp
|
|
for i in passwd group shadow gshadow
|
|
do
|
|
[ -f /etc/$i ] && cp /etc/$i tmp/$i
|
|
[ -f /etc/$i- ] && cp /etc/$i- tmp/$i-
|
|
done
|
|
|
|
true
|
|
}
|
|
|
|
restore()
|
|
{
|
|
for i in passwd group shadow gshadow
|
|
do
|
|
[ -f tmp/$i ] && cp tmp/$i /etc/$i && rm tmp/$i
|
|
[ -f tmp/$i- ] && cp tmp/$i- /etc/$i- && rm tmp/$i-
|
|
done
|
|
rm -f tmp/out
|
|
rmdir tmp
|
|
}
|
|
|
|
save
|
|
|
|
# restore the files on exit
|
|
trap 'if [ "$?" != "0" ]; then echo "FAIL"; fi; restore' 0
|
|
|
|
for i in passwd group shadow gshadow
|
|
do
|
|
cp data/$i /etc
|
|
done
|
|
|
|
echo "interactive test"
|
|
./run.exp $(date "+%Y-%m-%d")
|
|
|
|
echo "OK"
|