xref: /freebsd/crypto/openssh/regress/putty-transfer.sh (revision 3332f1b444d4a73238e9f59cca27bfc95fe936bd)
1#	$OpenBSD: putty-transfer.sh,v 1.7 2020/01/23 11:19:12 dtucker Exp $
2#	Placed in the Public Domain.
3
4tid="putty transfer data"
5
6if test "x$REGRESS_INTEROP_PUTTY" != "xyes" ; then
7	echo "putty interop tests not enabled"
8	exit 0
9fi
10
11if [ "`${SSH} -Q compression`" = "none" ]; then
12	comp="0"
13else
14	comp="0 1"
15fi
16
17for c in $comp; do
18	verbose "$tid: compression $c"
19	rm -f ${COPY}
20	cp ${OBJ}/.putty/sessions/localhost_proxy \
21	    ${OBJ}/.putty/sessions/compression_$c
22	echo "Compression=$c" >> ${OBJ}/.putty/sessions/kex_$k
23	env HOME=$PWD ${PLINK} -load compression_$c -batch \
24	    -i ${OBJ}/putty.rsa2 cat ${DATA} > ${COPY}
25	if [ $? -ne 0 ]; then
26		fail "ssh cat $DATA failed"
27	fi
28	cmp ${DATA} ${COPY}		|| fail "corrupted copy"
29
30	for s in 10 100 1k 32k 64k 128k 256k; do
31		trace "compression $c dd-size ${s}"
32		rm -f ${COPY}
33		dd if=$DATA obs=${s} 2> /dev/null | \
34			env HOME=$PWD ${PLINK} -load compression_$c \
35			    -batch -i ${OBJ}/putty.rsa2 \
36			    "cat > ${COPY}"
37		if [ $? -ne 0 ]; then
38			fail "ssh cat $DATA failed"
39		fi
40		cmp $DATA ${COPY}	|| fail "corrupted copy"
41	done
42done
43rm -f ${COPY}
44
45