* Move do_setup and do_cleanup into the file of ssh_setup.
* Use test.sh instead of net_cmdlib.sh
* Define local exists function instead of which in cmdlib.sh
* Abandon trap and use tst_exit.
* Make the test like:
(set TCID TST_TOTAL ...)
setup
do_test
check_result
tst_exit
* Some cleanup.
Signed-off-by: Zeng Linggang <[email protected]>
---
testcases/network/tcp_cmds/ssh/ssh01 | 83 +++++++++-----------------------
testcases/network/tcp_cmds/ssh/ssh01_s1 | 36 ++++++++------
testcases/network/tcp_cmds/ssh/ssh02 | 83 +++++++++-----------------------
testcases/network/tcp_cmds/ssh/ssh02_s1 | 36 ++++++++------
testcases/network/tcp_cmds/ssh/ssh03 | 78 ++++++++----------------------
testcases/network/tcp_cmds/ssh/ssh03_s1 | 36 ++++++++------
testcases/network/tcp_cmds/ssh/ssh_setup | 63 ++++++++++++++++++++++++
7 files changed, 192 insertions(+), 223 deletions(-)
create mode 100755 testcases/network/tcp_cmds/ssh/ssh_setup
diff --git a/testcases/network/tcp_cmds/ssh/ssh01
b/testcases/network/tcp_cmds/ssh/ssh01
index a0c66f5..06a830a 100755
--- a/testcases/network/tcp_cmds/ssh/ssh01
+++ b/testcases/network/tcp_cmds/ssh/ssh01
@@ -25,69 +25,34 @@
# HISTORY:
# 03/03 Jerone Young ([email protected])
#
+# DESCRIPTION:
+# Create test user
+# Make sure test user can't login with invalid password
+# Cleanup test user from system
+# Exit with exit code of script called upon
-#-----------------------------------------------------------------------
-# FUNCTION: do_setup
-#-----------------------------------------------------------------------
-
-do_setup()
+setup()
{
- export RHOST="localhost"
- export TEST_USER="ssh_usr1"
- export TEST_USER_PASSWD="now_this_is_a_good_ltp_test_password"
- export TEST_USER_HOMEDIR="/home/$TEST_USER"
-
- exists expect ssh ssh01_s1 useradd userdel
-
- trap do_cleanup EXIT
-
- # erase user if he/she already exists, so we can have a clean env
- userdel -r $TEST_USER
- [ -d "$TEST_USER_HOMEDIR" ] && rm -rf "$TEST_USER_HOMEDIR"
- sleep 1
-
- tst_setup
-
- if ! useradd -m -d "$TEST_USER_HOMEDIR" $TEST_USER; then
- end_testcase "Could not add test user $TEST_USER to system $RHOST."
- fi
-
- echo "$TEST_USER_PASSWD" | passwd --stdin $TEST_USER
-
- # create users home diretory (SLES 8 does not do this, even when specified
- # in adduser)
- if [ ! -d "$TEST_USER_HOMEDIR" ]; then
- USER_UID=$(id -u $TEST_USER)
- USER_GID=$(id -g $TEST_USER)
- if ! mkdir -p "$TEST_USER_HOMEDIR"; then
- end_testcase "Failed to create $TEST_USER_HOMEDIR"
- fi
- chown -Rf $USER_UID.$USER_GID "$TEST_USER_HOMEDIR"
- fi
+ exists ssh01_s1
+ export TEST_USER="ssh_usr1"
}
-#-----------------------------------------------------------------------
-# FUNCTION: do_cleanup
-#-----------------------------------------------------------------------
+TCID="$0"
+TST_TOTAL=1
-do_cleanup()
-{
- userdel -r $TEST_USER
- [ -d "$TEST_USER_HOMEDIR" ] && rm -rf "$TEST_USER_HOMEDIR"
- tst_cleanup
-}
+. test.sh
+. ssh_setup
-#-----------------------------------------------------------------------
-# FUNCTION: MAIN
-#
-# DESCRIPTION: Create Test User
-# Call upon script to make sure test user cannont log in with invalid
password
-# Cleanup Test User from system
-# Exit with exit code of script called upon
-#-----------------------------------------------------------------------
-. net_cmdlib.sh
-
-read_opts $*
+setup
do_setup
-ssh01_s1 || end_testcase "Testcase failed"
-do_cleanup
+TST_CLEANUP=do_cleanup
+
+ssh01_s1
+ret=$?
+if [ $ret -ne 0 ]; then
+ tst_resm TFAIL "Test $TCID FAIL"
+else
+ tst_resm TPASS "Test $TCID PASS"
+fi
+
+tst_exit
diff --git a/testcases/network/tcp_cmds/ssh/ssh01_s1
b/testcases/network/tcp_cmds/ssh/ssh01_s1
index c1cc127..ab86e2a 100755
--- a/testcases/network/tcp_cmds/ssh/ssh01_s1
+++ b/testcases/network/tcp_cmds/ssh/ssh01_s1
@@ -45,22 +45,28 @@ set PASSWD "invalid_password!"
spawn ssh -l $RUSER $RHOST whoami
while 1 {
- sleep 2
- expect {
+ sleep 2
+ expect {
- "Are you sure you want to continue connecting (yes/no)?" { exp_send
"yes\r"}
- "assword:" {exp_send "$PASSWD\r"}
- -re "Permission denied (.*)\." {
- send_user "SSH would not allow $RUSER to login with invalid
password, Test Passed \n"
- send_user "\nTEST_PASSED\n"
- exit 0
- }
- "$RUSER" {
- send_user "SSH allowed $RUSER to login with invalid pass, Test
Failed \n"
- exit 1
- }
- }
- sleep 1
+ "Are you sure you want to continue connecting (yes/no)?" {
+ exp_send "yes\r"
+ }
+ "assword:" {
+ exp_send "$PASSWD\r"
+ }
+ -re "Permission denied (.*)\." {
+ send_user "SSH would not allow $RUSER to login with\
+ invalid password, Test Passed \n"
+ send_user "\nTEST_PASSED\n"
+ exit 0
+ }
+ "$RUSER" {
+ send_user "SSH allowed $RUSER to login with invalid\
+ pass, Test Failed \n"
+ exit 1
+ }
+ }
+ sleep 1
}
exit 1
diff --git a/testcases/network/tcp_cmds/ssh/ssh02
b/testcases/network/tcp_cmds/ssh/ssh02
index 2d82acb..edf7434 100755
--- a/testcases/network/tcp_cmds/ssh/ssh02
+++ b/testcases/network/tcp_cmds/ssh/ssh02
@@ -25,69 +25,34 @@
# HISTORY:
# 03/03 Jerone Young ([email protected])
#
+# DESCRIPTION:
+# Create Test User
+# Make sure an invalid user can not have access
+# Cleanup Test User from system
+# Exit with exit code of script called upon
-#-----------------------------------------------------------------------
-# FUNCTION: do_setup
-#-----------------------------------------------------------------------
-
-do_setup()
+setup()
{
- export RHOST="localhost"
- export TEST_USER="ssh_usr2"
- export TEST_USER_PASSWD="now_this_is_a_good_ltp_test_password"
- export TEST_USER_HOMEDIR="/home/$TEST_USER"
-
- exists expect ssh ssh02_s1 useradd userdel
-
- trap do_cleanup EXIT
-
- # erase user if he/she already exists, so we can have a clean env
- userdel -r $TEST_USER
- [ -d "$TEST_USER_HOMEDIR" ] && rm -rf "$TEST_USER_HOMEDIR"
- sleep 1
-
- tst_setup
-
- if ! useradd -m -d "$TEST_USER_HOMEDIR" $TEST_USER; then
- end_testcase "Could not add test user $TEST_USER to system $RHOST."
- fi
-
- echo "$TEST_USER_PASSWD" | passwd --stdin $TEST_USER
-
- # create users home diretory (SLES 8 does not do this, even when specified
- # in adduser)
- if [ ! -d "$TEST_USER_HOMEDIR" ]; then
- USER_UID=$(id -u $TEST_USER)
- USER_GID=$(id -g $TEST_USER)
- if ! mkdir -p "$TEST_USER_HOMEDIR"; then
- end_testcase "Failed to create $TEST_USER_HOMEDIR"
- fi
- chown -Rf $USER_UID.$USER_GID "$TEST_USER_HOMEDIR"
- fi
+ exists ssh02_s1
+ export TEST_USER="ssh_usr2"
}
-#-----------------------------------------------------------------------
-# FUNCTION: do_cleanup
-#-----------------------------------------------------------------------
+TCID="$0"
+TST_TOTAL=1
-do_cleanup()
-{
- userdel -r $TEST_USER
- [ -d "$TEST_USER_HOMEDIR" ] && rm -rf "$TEST_USER_HOMEDIR"
- tst_cleanup
-}
+. test.sh
+. ssh_setup
-#-----------------------------------------------------------------------
-# FUNCTION: MAIN
-#
-# DESCRIPTION: Create Test User
-# Call upon script to make sure an invalid user can not have access
-# Cleanup Test User from system
-# Exit with exit code of script called upon
-#-----------------------------------------------------------------------
-. net_cmdlib.sh
-
-read_opts $*
+setup
do_setup
-ssh02_s1 || end_testcase "Testcase failed"
-do_cleanup
+TST_CLEANUP=do_cleanup
+
+ssh02_s1
+ret=$?
+if [ $ret -ne 0 ]; then
+ tst_resm TFAIL "Test $TCID FAIL"
+else
+ tst_resm TPASS "Test $TCID PASS"
+fi
+
+tst_exit
diff --git a/testcases/network/tcp_cmds/ssh/ssh02_s1
b/testcases/network/tcp_cmds/ssh/ssh02_s1
index d49e1e9..cf95709 100755
--- a/testcases/network/tcp_cmds/ssh/ssh02_s1
+++ b/testcases/network/tcp_cmds/ssh/ssh02_s1
@@ -46,22 +46,28 @@ set RUSER "Invaild_User"
spawn ssh -l $RUSER $RHOST whoami
while 1 {
- sleep 2
- expect {
+ sleep 2
+ expect {
- "Are you sure you want to continue connecting (yes/no)?" { exp_send
"yes\r"}
- "assword:" {exp_send "$PASSWD\r"}
- -re "Permission denied (.*)\." {
- send_user "SSH would not allow $RUSER to login with invalid
password, Test Passed \n"
- send_user "\nTEST_PASSED\n"
- exit 0
- }
- "$RUSER" {
- send_user "SSH allowed $RUSER to login with invalid pass, Test
Failed \n"
- exit 1
- }
- }
- sleep 1
+ "Are you sure you want to continue connecting (yes/no)?" {
+ exp_send "yes\r"
+ }
+ "assword:" {
+ exp_send "$PASSWD\r"
+ }
+ -re "Permission denied (.*)\." {
+ send_user "SSH would not allow $RUSER to login with\
+ invalid password, Test Passed \n"
+ send_user "\nTEST_PASSED\n"
+ exit 0
+ }
+ "$RUSER" {
+ send_user "SSH allowed $RUSER to login with invalid\
+ pass, Test Failed \n"
+ exit 1
+ }
+ }
+ sleep 1
}
exit 1
diff --git a/testcases/network/tcp_cmds/ssh/ssh03
b/testcases/network/tcp_cmds/ssh/ssh03
index 49b6527..b50c9aa 100755
--- a/testcases/network/tcp_cmds/ssh/ssh03
+++ b/testcases/network/tcp_cmds/ssh/ssh03
@@ -26,68 +26,28 @@
# 03/03 Jerone Young ([email protected])
#
-#-----------------------------------------------------------------------
-# FUNCTION: do_setup
-#-----------------------------------------------------------------------
-
-do_setup()
+setup()
{
- export RHOST="localhost"
- export TEST_USER="ssh_usr3"
- export TEST_USER_PASSWD="now_this_is_a_good_ltp_test_password"
- export TEST_USER_HOMEDIR="/home/$TEST_USER"
-
- exists expect ssh ssh03_s1 useradd userdel
-
- trap do_cleanup EXIT
-
- # erase user if he/she already exists, so we can have a clean env
- userdel -r $TEST_USER
- [ -d "$TEST_USER_HOMEDIR" ] && rm -rf "$TEST_USER_HOMEDIR"
- sleep 1
-
- tst_setup
-
- if ! useradd -m -d "$TEST_USER_HOMEDIR" $TEST_USER; then
- end_testcase "Could not add test user $TEST_USER to system $RHOST."
- fi
-
- echo "$TEST_USER_PASSWD" | passwd --stdin $TEST_USER
-
- # create users home diretory (SLES 8 does not do this, even when specified
- # in adduser)
- if [ ! -d "$TEST_USER_HOMEDIR" ]; then
- USER_UID=$(id -u $TEST_USER)
- USER_GID=$(id -g $TEST_USER)
- if ! mkdir -p "$TEST_USER_HOMEDIR"; then
- end_testcase "Failed to create $TEST_USER_HOMEDIR"
- fi
- chown -Rf $USER_UID.$USER_GID "$TEST_USER_HOMEDIR"
- fi
+ exists ssh03_s1
+ export TEST_USER="ssh_usr3"
}
-#-----------------------------------------------------------------------
-# FUNCTION: do_cleanup
-#-----------------------------------------------------------------------
+TCID="$0"
+TST_TOTAL=1
-do_cleanup()
-{
- userdel -r $TEST_USER
- [ -d "$TEST_USER_HOMEDIR" ] && rm -rf "$TEST_USER_HOMEDIR"
- tst_cleanup
-}
+. test.sh
+. ssh_setup
-#-----------------------------------------------------------------------
-# FUNCTION: MAIN
-#
-# DESCRIPTION: Create Test User
-# Call upon script to make sure a valid user can have access
-# Cleanup Test User from system
-# Exit with exit code of script called upon
-#-----------------------------------------------------------------------
-. net_cmdlib.sh
-
-read_opts $*
+setup
do_setup
-ssh03_s1 || end_testcase "Testcase failed"
-do_cleanup
+TST_CLEANUP=do_cleanup
+
+ssh03_s1
+ret=$?
+if [ $ret -ne 0 ]; then
+ tst_resm TFAIL "Test $TCID FAIL"
+else
+ tst_resm TPASS "Test $TCID PASS"
+fi
+
+tst_exit
diff --git a/testcases/network/tcp_cmds/ssh/ssh03_s1
b/testcases/network/tcp_cmds/ssh/ssh03_s1
index bf6aada..e3f8ceb 100755
--- a/testcases/network/tcp_cmds/ssh/ssh03_s1
+++ b/testcases/network/tcp_cmds/ssh/ssh03_s1
@@ -39,25 +39,29 @@ set timeout 90
send_user "TEST: SSH allow (non-root) valid User \n"
-
spawn ssh -l $RUSER $RHOST whoami
while 1 {
- sleep 2
- expect {
-
- "Are you sure you want to continue connecting (yes/no)?" { exp_send
"yes\r"}
- "assword:" {exp_send "$PASSWD\r"}
- -re "Permission denied (.*)\." {
- send_user "\nSSH would not allow $RUSER to login, Test FAILED \n"
- exit 1
- }
- "$RUSER" {
- send_user "SSH allowed $RUSER to login, Test PASSED \n"
- exit 0
- }
- }
- sleep 1
+ sleep 2
+ expect {
+
+ "Are you sure you want to continue connecting (yes/no)?" {
+ exp_send "yes\r"
+ }
+ "assword:" {
+ exp_send "$PASSWD\r"
+ }
+ -re "Permission denied (.*)\." {
+ send_user "\nSSH would not allow $RUSER to login, Test\
+ FAILED \n"
+ exit 1
+ }
+ "$RUSER" {
+ send_user "SSH allowed $RUSER to login, Test PASSED \n"
+ exit 0
+ }
+ }
+ sleep 1
}
exit 1
diff --git a/testcases/network/tcp_cmds/ssh/ssh_setup
b/testcases/network/tcp_cmds/ssh/ssh_setup
new file mode 100755
index 0000000..f0d6f7c
--- /dev/null
+++ b/testcases/network/tcp_cmds/ssh/ssh_setup
@@ -0,0 +1,63 @@
+#!/bin/sh
+################################################################################
+## Copyright (c) International Business Machines Corp., 2000
##
+##
##
+## This program is free software; you can redistribute it and/or modify
##
+## it under the terms of the GNU General Public License as published by
##
+## the Free Software Foundation; either version 2 of the License, or
##
+## (at your option) any later version.
##
+##
##
+## This program is distributed in the hope that it will be useful,
##
+## but WITHOUT ANY WARRANTY; without even the implied warranty of
##
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See
##
+## the GNU General Public License for more details.
##
+##
##
+## You should have received a copy of the GNU General Public License
##
+## along with this program; if not, write to the Free Software Foundation,
##
+## Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
##
+##
##
+################################################################################
+
+exists()
+{
+ for cmd in $*; do
+ if ! command -v $cmd > /dev/null 2>&1; then
+ tst_brkm TBROK "$cmd: command not found"
+ fi
+ done
+}
+
+do_setup()
+{
+ export RHOST="localhost"
+ export TEST_USER_PASSWD="now_this_is_a_good_ltp_test_password"
+ export TEST_USER_HOMEDIR="/home/$TEST_USER"
+
+ exists expect ssh useradd userdel
+
+ # erase user if he/she already exists, so we can have a clean env
+ do_cleanup
+ sleep 1
+
+ if ! useradd -m -d "$TEST_USER_HOMEDIR" $TEST_USER; then
+ tst_brkm TBROK "Failed to add user $TEST_USER to system $RHOST."
+ fi
+
+ echo "$TEST_USER_PASSWD" | passwd --stdin $TEST_USER
+
+ # create users home diretory (SLES 8 does not do this, even when
+ # specified in adduser)
+ if [ ! -d "$TEST_USER_HOMEDIR" ]; then
+ USER_UID=$(id -u $TEST_USER)
+ USER_GID=$(id -g $TEST_USER)
+ if ! mkdir -p "$TEST_USER_HOMEDIR"; then
+ tst_brkm TBROK "Failed to create $TEST_USER_HOMEDIR"
+ fi
+ chown -Rf $USER_UID.$USER_GID "$TEST_USER_HOMEDIR"
+ fi
+}
+
+do_cleanup()
+{
+ userdel -r $TEST_USER 2> /dev/null
+}
--
1.9.3
------------------------------------------------------------------------------
Infragistics Professional
Build stunning WinForms apps today!
Reboot your WinForms applications with our WinForms controls.
Build a bridge from your legacy apps to the future.
http://pubads.g.doubleclick.net/gampad/clk?id=153845071&iu=/4140/ostg.clktrk
_______________________________________________
Ltp-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ltp-list