xref: /freebsd/crypto/openssh/regress/ssh-com-sftp.sh (revision 064bee341e6c590dedc1d33eb6025e1f446f33a6)
1*ce3adf43SDag-Erling Smørgrav#	$OpenBSD: ssh-com-sftp.sh,v 1.7 2013/05/17 04:29:14 dtucker Exp $
2*ce3adf43SDag-Erling Smørgrav#	Placed in the Public Domain.
3*ce3adf43SDag-Erling Smørgrav
4*ce3adf43SDag-Erling Smørgravtid="basic sftp put/get with ssh.com server"
5*ce3adf43SDag-Erling Smørgrav
6*ce3adf43SDag-Erling SmørgravSFTPCMDFILE=${OBJ}/batch
7*ce3adf43SDag-Erling Smørgrav
8*ce3adf43SDag-Erling Smørgravcat >$SFTPCMDFILE <<EOF
9*ce3adf43SDag-Erling Smørgravversion
10*ce3adf43SDag-Erling Smørgravget $DATA ${COPY}.1
11*ce3adf43SDag-Erling Smørgravput $DATA ${COPY}.2
12*ce3adf43SDag-Erling SmørgravEOF
13*ce3adf43SDag-Erling Smørgrav
14*ce3adf43SDag-Erling SmørgravBUFFERSIZE="5 1000 32000 64000"
15*ce3adf43SDag-Erling SmørgravREQUESTS="1 2 10"
16*ce3adf43SDag-Erling Smørgrav
17*ce3adf43SDag-Erling Smørgrav#TEST_COMBASE=/path/to/ssh/com/binaries
18*ce3adf43SDag-Erling Smørgravif [ "X${TEST_COMBASE}" = "X" ]; then
19*ce3adf43SDag-Erling Smørgrav	fatal '$TEST_COMBASE is not set'
20*ce3adf43SDag-Erling Smørgravfi
21*ce3adf43SDag-Erling Smørgrav
22*ce3adf43SDag-Erling SmørgravVERSIONS="
23*ce3adf43SDag-Erling Smørgrav	2.0.10
24*ce3adf43SDag-Erling Smørgrav	2.0.12
25*ce3adf43SDag-Erling Smørgrav	2.0.13
26*ce3adf43SDag-Erling Smørgrav	2.1.0
27*ce3adf43SDag-Erling Smørgrav	2.2.0
28*ce3adf43SDag-Erling Smørgrav	2.3.0
29*ce3adf43SDag-Erling Smørgrav	2.3.1
30*ce3adf43SDag-Erling Smørgrav	2.4.0
31*ce3adf43SDag-Erling Smørgrav	3.0.0
32*ce3adf43SDag-Erling Smørgrav	3.1.0
33*ce3adf43SDag-Erling Smørgrav	3.2.0
34*ce3adf43SDag-Erling Smørgrav	3.2.2
35*ce3adf43SDag-Erling Smørgrav	3.2.3
36*ce3adf43SDag-Erling Smørgrav	3.2.5
37*ce3adf43SDag-Erling Smørgrav	3.2.9
38*ce3adf43SDag-Erling Smørgrav	3.2.9.1
39*ce3adf43SDag-Erling Smørgrav	3.3.0"
40*ce3adf43SDag-Erling Smørgrav
41*ce3adf43SDag-Erling Smørgrav# go for it
42*ce3adf43SDag-Erling Smørgravfor v in ${VERSIONS}; do
43*ce3adf43SDag-Erling Smørgrav	server=${TEST_COMBASE}/${v}/sftp-server2
44*ce3adf43SDag-Erling Smørgrav	if [ ! -x ${server} ]; then
45*ce3adf43SDag-Erling Smørgrav		continue
46*ce3adf43SDag-Erling Smørgrav	fi
47*ce3adf43SDag-Erling Smørgrav	verbose "sftp-server $v"
48*ce3adf43SDag-Erling Smørgrav	for B in ${BUFFERSIZE}; do
49*ce3adf43SDag-Erling Smørgrav		for R in ${REQUESTS}; do
50*ce3adf43SDag-Erling Smørgrav			verbose "test $tid: buffer_size $B num_requests $R"
51*ce3adf43SDag-Erling Smørgrav			rm -f ${COPY}.1 ${COPY}.2
52*ce3adf43SDag-Erling Smørgrav			${SFTP} -D ${server} -B $B -R $R -b $SFTPCMDFILE \
53*ce3adf43SDag-Erling Smørgrav			> /dev/null 2>&1
54*ce3adf43SDag-Erling Smørgrav			r=$?
55*ce3adf43SDag-Erling Smørgrav			if [ $r -ne 0 ]; then
56*ce3adf43SDag-Erling Smørgrav				fail "sftp failed with $r"
57*ce3adf43SDag-Erling Smørgrav			else
58*ce3adf43SDag-Erling Smørgrav				cmp $DATA ${COPY}.1 || fail "corrupted copy after get"
59*ce3adf43SDag-Erling Smørgrav				cmp $DATA ${COPY}.2 || fail "corrupted copy after put"
60*ce3adf43SDag-Erling Smørgrav			fi
61*ce3adf43SDag-Erling Smørgrav		done
62*ce3adf43SDag-Erling Smørgrav	done
63*ce3adf43SDag-Erling Smørgravdone
64*ce3adf43SDag-Erling Smørgravrm -f ${COPY}.1 ${COPY}.2
65*ce3adf43SDag-Erling Smørgravrm -f $SFTPCMDFILE
66