summaryrefslogtreecommitdiff
path: root/regress/usr.bin/ssh/forwarding.sh
diff options
context:
space:
mode:
authorMarkus Friedl <markus@cvs.openbsd.org>2002-02-14 23:18:01 +0000
committerMarkus Friedl <markus@cvs.openbsd.org>2002-02-14 23:18:01 +0000
commit05f7489de58e24cbc2469b7978cbc51138f80120 (patch)
treecbae7c2f6e42d90b3fb9372d71fc0d413d362227 /regress/usr.bin/ssh/forwarding.sh
parent5fc1733621065fd7a8e06dd422d539406f3a4b9d (diff)
serveral tests for ssh-keygen/ssh/sshd/ssh-add/ssh-agent
note that these tests will start sshd on 127.0.0.1:4242 and will fail if the realpath of /usr/src/usr.sbin/ssh/obj/ contains a group or world writeable directory.
Diffstat (limited to 'regress/usr.bin/ssh/forwarding.sh')
-rw-r--r--regress/usr.bin/ssh/forwarding.sh28
1 files changed, 28 insertions, 0 deletions
diff --git a/regress/usr.bin/ssh/forwarding.sh b/regress/usr.bin/ssh/forwarding.sh
new file mode 100644
index 00000000000..37b909546b9
--- /dev/null
+++ b/regress/usr.bin/ssh/forwarding.sh
@@ -0,0 +1,28 @@
+tid="local and remote forwarding"
+
+base=33
+last=$PORT
+fwd=""
+for j in 0 1 2; do
+ for i in 0 1 2; do
+ a=$base$j$i
+ b=`expr $a + 50`
+ c=$last
+ # fwd chain: $a -> $b -> $c
+ fwd="$fwd -L$a:127.0.0.1:$b -R$b:127.0.0.1:$c"
+ last=$a
+ done
+done
+for p in 1 2; do
+ q=`expr 3 - $p`
+ trace "start forwarding, fork to background"
+ ssh -$p -F $OBJ/ssh_config -f $fwd somehost sleep 10
+
+ trace "transfer over forwarded channels and check result"
+ ssh -$q -F $OBJ/ssh_config -p$last -o 'ConnectionAttempts=4' \
+ somehost cat /bin/ls > $OBJ/ls.copy
+ test -f $OBJ/ls.copy || fail "failed copy /bin/ls"
+ cmp /bin/ls $OBJ/ls.copy || fail "corrupted copy of /bin/ls"
+
+ sleep 10
+done