1255670Sdes#	$OpenBSD: ssh-com-sftp.sh,v 1.7 2013/05/17 04:29:14 dtucker Exp $
298937Sdes#	Placed in the Public Domain.
398937Sdes
498937Sdestid="basic sftp put/get with ssh.com server"
598937Sdes
6124208SdesSFTPCMDFILE=${OBJ}/batch
798937Sdes
8124208Sdescat >$SFTPCMDFILE <<EOF
9124208Sdesversion
10124208Sdesget $DATA ${COPY}.1
11124208Sdesput $DATA ${COPY}.2
12124208SdesEOF
13124208Sdes
1498937SdesBUFFERSIZE="5 1000 32000 64000"
1598937SdesREQUESTS="1 2 10"
1698937Sdes
1798937Sdes#TEST_COMBASE=/path/to/ssh/com/binaries
1898937Sdesif [ "X${TEST_COMBASE}" = "X" ]; then
1998937Sdes	fatal '$TEST_COMBASE is not set'
2098937Sdesfi
2198937Sdes
2298937SdesVERSIONS="
2398937Sdes	2.0.10
2498937Sdes	2.0.12
2598937Sdes	2.0.13
2698937Sdes	2.1.0
2798937Sdes	2.2.0
2898937Sdes	2.3.0
2998937Sdes	2.3.1
3098937Sdes	2.4.0
3198937Sdes	3.0.0
32113908Sdes	3.1.0
33113908Sdes	3.2.0
34124208Sdes	3.2.2
35124208Sdes	3.2.3
36128456Sdes	3.2.5
37128456Sdes	3.2.9
38128456Sdes	3.2.9.1
39113908Sdes	3.3.0"
4098937Sdes
4198937Sdes# go for it
4298937Sdesfor v in ${VERSIONS}; do
4398937Sdes	server=${TEST_COMBASE}/${v}/sftp-server2
4498937Sdes	if [ ! -x ${server} ]; then
4598937Sdes		continue
4698937Sdes	fi
4798937Sdes	verbose "sftp-server $v"
4898937Sdes	for B in ${BUFFERSIZE}; do
4998937Sdes		for R in ${REQUESTS}; do
5098937Sdes			verbose "test $tid: buffer_size $B num_requests $R"
5198937Sdes			rm -f ${COPY}.1 ${COPY}.2
52204861Sdes			${SFTP} -D ${server} -B $B -R $R -b $SFTPCMDFILE \
53124208Sdes			> /dev/null 2>&1
5498937Sdes			r=$?
5598937Sdes			if [ $r -ne 0 ]; then
5698937Sdes				fail "sftp failed with $r"
57124208Sdes			else                                
58124208Sdes				cmp $DATA ${COPY}.1 || fail "corrupted copy after get"
59124208Sdes				cmp $DATA ${COPY}.2 || fail "corrupted copy after put"
6098937Sdes			fi
6198937Sdes		done
6298937Sdes	done
6398937Sdesdone
64124208Sdesrm -f ${COPY}.1 ${COPY}.2                
65124208Sdesrm -f $SFTPCMDFILE
66