diff options
author | nekral-guest <nekral-guest@5a98b0ae-9ef6-0310-add3-de5d479b70d7> | 2011-07-26 15:33:12 +0000 |
---|---|---|
committer | nekral-guest <nekral-guest@5a98b0ae-9ef6-0310-add3-de5d479b70d7> | 2011-07-26 15:33:12 +0000 |
commit | 871df6e34bb754bf3c54fbca503b2acfc6e6c5d1 (patch) | |
tree | 394e47814a1da8608d0a1648433384fc211ee060 /tests/log/faillog/40_faillog-l-a-u_range_open/faillog.test | |
parent | 279b8e9b69276457ff50f67a6e693e6cb7812b41 (diff) | |
download | shadow-871df6e34bb754bf3c54fbca503b2acfc6e6c5d1.tar.gz |
Added tests for faillog.
Diffstat (limited to 'tests/log/faillog/40_faillog-l-a-u_range_open/faillog.test')
-rwxr-xr-x | tests/log/faillog/40_faillog-l-a-u_range_open/faillog.test | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/tests/log/faillog/40_faillog-l-a-u_range_open/faillog.test b/tests/log/faillog/40_faillog-l-a-u_range_open/faillog.test new file mode 100755 index 00000000..1c5fe418 --- /dev/null +++ b/tests/log/faillog/40_faillog-l-a-u_range_open/faillog.test @@ -0,0 +1,73 @@ +#!/bin/sh + +set -e + +cd $(dirname $0) + +. ../../../common/config.sh +. ../../../common/log.sh + +log_start "$0" "reports all entry from /var/log/faillog" + +save_config + +# restore the files on exit +trap 'log_status "$0" "FAILURE"; restore_config' 0 + +change_config + +echo -n "Create an empty /var/log/faillog (it will not be restored)..." +> /var/log/faillog +echo "OK" + +echo -n "Trigger a connection as foo..." +./login.exp foo +echo "OK" +sleep 1 +echo -n "Trigger a connection as bar..." +./login.exp bar +echo "OK" +echo -n "Trigger a connection as baz..." +./login.exp baz +echo "OK" + +echo -n "Remove users foo, bar, baz from passwd and shadow..." +cp /etc/passwd /etc/shadow tmp/ +sed -e '/^(foo|bar|baz):/d' -i /etc/passwd +sed -e '/^(foo|bar|baz):/d' -i /etc/shadow +echo "OK" + +echo -n "reset baz (faillog -a -l 10 -u 1001-)..." +faillog -a -l 10 -u 1001- +echo "OK" + +echo -n "Restore user foo..." +mv tmp/passwd tmp/shadow /etc/ +echo "OK" + +echo -n "faillog..." +faillog > tmp/faillog.out +echo "OK." + +echo "faillog :" +echo "=======================================================================" +cat tmp/faillog.out +echo "=======================================================================" + +echo -n "Check the list of users with failures..." +cut -c-28 tmp/faillog.out > tmp/faillog.list +diff -au data/faillog.list tmp/faillog.list +echo "OK" +echo "There should be 6 or 7 secondes remaining for baz..." +grep "^baz .* \[[67]s left\]$" tmp/faillog.out +echo "OK" +echo "There should be 3 or 4 secondes remaining for bar..." +grep "^bar .* \[[34]s left\]$" tmp/faillog.out +echo "OK." + +rm -f tmp/faillog.out tmp/faillog.list + +log_status "$0" "SUCCESS" +restore_config +trap '' 0 + |