# $OpenBSD: exit-status.sh,v 1.7 2015/03/03 22:35:19 markus Exp $ # Placed in the Public Domain. setglobal tid = '"remote exit status'" for p in [$(SSH_PROTOCOLS)] { for s in [0 1 4 5 44] { trace "proto $p status $s" verbose "test $tid: proto $p status $s" $(SSH) -$p -F $OBJ/ssh_proxy otherhost exit $s setglobal r = $Status if test $r -ne $s { fail "exit code mismatch for protocol $p: $r != $s" } # same with early close of stdout/err $(SSH) -$p -F $OBJ/ssh_proxy -n otherhost \ exec sh -c '''"sleep 2; exec > /dev/null 2>&1; sleep 3; exit $s"''' setglobal r = $Status if test $r -ne $s { fail "exit code (with sleep) mismatch for protocol $p: $r != $s" } } }