diff options
author | Damien Miller <djm@cvs.openbsd.org> | 2018-03-02 02:53:28 +0000 |
---|---|---|
committer | Damien Miller <djm@cvs.openbsd.org> | 2018-03-02 02:53:28 +0000 |
commit | a078c51c1645f251dbe3c9dc98b7d2b176cac87e (patch) | |
tree | f5672720c8d94e0993e0a15f959f8adb57e0d1db /regress | |
parent | f089cc5093df774e6ac4756b43a8ec15e39a999c (diff) |
fix testing of pty option, include positive test and testing of
restrict keyword
Diffstat (limited to 'regress')
-rw-r--r-- | regress/usr.bin/ssh/key-options.sh | 43 |
1 files changed, 36 insertions, 7 deletions
diff --git a/regress/usr.bin/ssh/key-options.sh b/regress/usr.bin/ssh/key-options.sh index 2adee683347..aa5f8bf9770 100644 --- a/regress/usr.bin/ssh/key-options.sh +++ b/regress/usr.bin/ssh/key-options.sh @@ -1,4 +1,4 @@ -# $OpenBSD: key-options.sh,v 1.4 2017/04/30 23:34:55 djm Exp $ +# $OpenBSD: key-options.sh,v 1.5 2018/03/02 02:53:27 djm Exp $ # Placed in the Public Domain. tid="key options" @@ -21,12 +21,41 @@ for c in 'command="echo bar"' 'no-pty,command="echo bar"'; do done # Test no-pty -sed 's/.*/no-pty &/' $origkeys >$authkeys -verbose "key option proto no-pty" -r=`${SSH} -q -F $OBJ/ssh_proxy somehost tty` -if [ -f "$r" ]; then - fail "key option failed no-pty (pty $r)" -fi +expect_pty_succeed() { + which=$1 + opts=$2 + rm -f $OBJ/data + sed "s/.*/$opts &/" $origkeys >$authkeys + verbose "key option pty $which" + ${SSH} -ttq -F $OBJ/ssh_proxy somehost "tty > $OBJ/data; exit 0" + if [ $? -ne 0 ] ; then + fail "key option failed $which" + else + r=`cat $OBJ/data` + if [ ! -e "$r" ]; then + fail "key option failed $which (pty $r)" + fi + fi +} +expect_pty_fail() { + which=$1 + opts=$2 + rm -f $OBJ/data + sed "s/.*/$opts &/" $origkeys >$authkeys + verbose "key option pty $which" + ${SSH} -ttq -F $OBJ/ssh_proxy somehost "tty > $OBJ/data; exit 0" + if [ $? -eq 0 ]; then + r=`cat $OBJ/data` + if [ -e "$r" ]; then + fail "key option failed $which (pty $r)" + fi + fi +} +# First ensure that we can allocate a pty by default. +expect_pty_succeed "default" "" +expect_pty_fail "no-pty" "no-pty" +expect_pty_fail "restrict" "restrict" +expect_pty_succeed "restrict,pty" "restrict,pty" # Test environment= echo 'PermitUserEnvironment yes' >> $OBJ/sshd_proxy |