#!/bin/sh set -e cd $(dirname $0) . ../../common/config.sh . ../../common/log.sh log_start "$0" "su can be used to switch to a non-root user" # no testsuite password # root password: rootF00barbaz # myuser password: myuserF00barbaz save_config # restore the files on exit trap 'log_status "$0" "FAILURE"; restore_config' 0 change_config ./run_su.exp myuser myuserF00barbaz '$ ' echo -n "Check /var/log/sulog..." wc -l /var/log/sulog > tmp/sulog d=$(date +"SU %m/%d %H:%M") cat /var/log/sulog | \ grep -E -v "$d \+ /dev/pts/[0-9]* root-testsuite" | \ grep -E -v "$d \+ /dev/pts/[0-9]* testsuite-myuser" \ >> tmp/sulog || true diff -auN tmp/sulog data/sulog echo "OK" rm -f tmp/sulog log_status "$0" "SUCCESS" restore_config trap '' 0