diff options
Diffstat (limited to 'regress/exit-status.sh')
-rw-r--r-- | regress/exit-status.sh | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/regress/exit-status.sh b/regress/exit-status.sh new file mode 100644 index 0000000..aadf99f --- /dev/null +++ b/regress/exit-status.sh @@ -0,0 +1,22 @@ +# $OpenBSD: exit-status.sh,v 1.8 2017/04/30 23:34:55 djm Exp $ +# Placed in the Public Domain. + +tid="remote exit status" + +for s in 0 1 4 5 44; do + trace "status $s" + verbose "test $tid: status $s" + ${SSH} -F $OBJ/ssh_proxy otherhost exit $s + r=$? + if [ $r -ne $s ]; then + fail "exit code mismatch for: $r != $s" + fi + + # same with early close of stdout/err + ${SSH} -F $OBJ/ssh_proxy -n otherhost exec \ + sh -c \'"sleep 2; exec > /dev/null 2>&1; sleep 3; exit $s"\' + r=$? + if [ $r -ne $s ]; then + fail "exit code (with sleep) mismatch for: $r != $s" + fi +done |