From a4df65b9fc68a555a7d8781700475fb03ed6e694 Mon Sep 17 00:00:00 2001 From: Darren Tucker Date: Fri, 17 May 2013 09:37:31 +1000 Subject: [PATCH] - dtucker@cvs.openbsd.org 2013/04/22 07:28:53 [multiplex.sh] Add tests for -Oforward and -Ocancel for local and remote forwards --- ChangeLog | 2 +- regress/multiplex.sh | 23 ++++++++++++++++++++++- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 3b50d2e55..46f2d5e8b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -25,7 +25,7 @@ [regress/Makefile regress/sftp-chroot.sh] test sshd ChrootDirectory+internal-sftp; feedback & ok dtucker@ - dtucker@cvs.openbsd.org 2013/04/22 07:23:08 - [multiplex.sh] + [regress/multiplex.sh] Write mux master logs to regress.log instead of ssh.log to keep separate 20130516 diff --git a/regress/multiplex.sh b/regress/multiplex.sh index 619fec9b9..8389b3840 100644 --- a/regress/multiplex.sh +++ b/regress/multiplex.sh @@ -1,4 +1,4 @@ -# $OpenBSD: multiplex.sh,v 1.19 2013/04/22 07:23:08 dtucker Exp $ +# $OpenBSD: multiplex.sh,v 1.20 2013/04/22 07:28:53 dtucker Exp $ # Placed in the Public Domain. CTL=/tmp/openssh.regress.ctl-sock.$$ @@ -12,6 +12,7 @@ fi DATA=/bin/ls${EXEEXT} COPY=$OBJ/ls.copy +P=3301 # test port wait_for_mux_master_ready() { @@ -96,6 +97,26 @@ verbose "test $tid: cmd check" ${SSH} -F $OBJ/ssh_config -S $CTL -Ocheck otherhost >>$TEST_REGRESS_LOGFILE 2>&1 \ || fail "check command failed" +verbose "test $tid: cmd forward local" +${SSH} -F $OBJ/ssh_config -S $CTL -Oforward -L $P:localhost:$PORT otherhost \ + || fail "request local forward failed" +${SSH} -F $OBJ/ssh_config -p$P otherhost true \ + || fail "connect to local forward port failed" +${SSH} -F $OBJ/ssh_config -S $CTL -Ocancel -L $P:localhost:$PORT otherhost \ + || fail "cancel local forward failed" +${SSH} -F $OBJ/ssh_config -p$P otherhost true \ + && fail "local forward port still listening" + +verbose "test $tid: cmd forward remote" +${SSH} -F $OBJ/ssh_config -S $CTL -Oforward -R $P:localhost:$PORT otherhost \ + || fail "request remote forward failed" +${SSH} -F $OBJ/ssh_config -p$P otherhost true \ + || fail "connect to remote forwarded port failed" +${SSH} -F $OBJ/ssh_config -S $CTL -Ocancel -R $P:localhost:$PORT otherhost \ + || fail "cancel remote forward failed" +${SSH} -F $OBJ/ssh_config -p$P otherhost true \ + && fail "remote forward port still listening" + verbose "test $tid: cmd exit" ${SSH} -F $OBJ/ssh_config -S $CTL -Oexit otherhost >>$TEST_REGRESS_LOGFILE 2>&1 \ || fail "send exit command failed"