Home | History | Annotate | Download | only in telnet
      1 #!/bin/sh
      2 #   Copyright (c) International Business Machines  Corp., 2000
      3 #
      4 #   This program is free software;  you can redistribute it and/or modify
      5 #   it under the terms of the GNU General Public License as published by
      6 #   the Free Software Foundation; either version 2 of the License, or
      7 #   (at your option) any later version.
      8 #
      9 #   This program is distributed in the hope that it will be useful,
     10 #   but WITHOUT ANY WARRANTY;  without even the implied warranty of
     11 #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See
     12 #   the GNU General Public License for more details.
     13 #
     14 #   You should have received a copy of the GNU General Public License
     15 #   along with this program;  if not, write to the Free Software
     16 #   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
     17 #
     18 #    03/01 Robbie Williamson (robbiew (at] us.ibm.com)
     19 
     20 TCID="telnet01"
     21 TST_TOTAL=1
     22 
     23 TST_USE_LEGACY_API=1
     24 . tst_net.sh
     25 
     26 setup()
     27 {
     28 	tst_test_cmds telnet expect
     29 
     30 	if [ -z $RUSER ]; then
     31 		RUSER=root
     32 	fi
     33 
     34 	if [ -z $PASSWD ]; then
     35 		tst_brkm TCONF "Please set PASSWD for $RUSER."
     36 	fi
     37 
     38 	if [ -z $RHOST ]; then
     39 		tst_brkm TCONF "Please set RHOST."
     40 	fi
     41 
     42 	if [ -z $LOOPCOUNT ]; then
     43 		LOOPCOUNT=25
     44 	fi
     45 }
     46 
     47 do_test()
     48 {
     49 	tst_resm TINFO "Starting"
     50 
     51 	for i in $(seq 1 ${LOOPCOUNT})
     52 	do
     53 		telnet_test || return 1
     54 	done
     55 }
     56 
     57 telnet_test()
     58 {
     59 	tst_resm TINFO "login with telnet($i/$LOOPCOUNT)"
     60 
     61 	expect -c "
     62 		spawn telnet $RHOST
     63 
     64 		expect -re \"login:\"
     65 		send \"$RUSER\r\"
     66 
     67 		expect -re \"Password:\"
     68 		send \"$PASSWD\r\"
     69 
     70 		expect {
     71 			\"incorrect\" {
     72 				exit 1
     73 			} \"$RUSER@\" {
     74 				send \"LC_ALL=C ls -l /etc/hosts | \\
     75 				       wc -w > $RUSER.$RHOST\rexit\r\";
     76 				exp_continue}
     77 		}
     78 
     79 	" > /dev/null || return 1
     80 
     81 	tst_resm TINFO "checking telnet status($i/$LOOPCOUNT)"
     82 	tst_rhost_run -u $RUSER -c "grep -q 9 $RUSER.$RHOST" || return 1
     83 	tst_rhost_run -u $RUSER -c "rm -f $RUSER.$RHOST"
     84 }
     85 
     86 setup
     87 
     88 do_test
     89 if [ $? -ne 0 ]; then
     90 	tst_resm TFAIL "Test $TCID failed."
     91 else
     92 	tst_resm TPASS "Test $TCID succeeded."
     93 fi
     94 
     95 tst_exit
     96