diff options
author | Damien Miller <djm@mindrot.org> | 2024-01-16 14:40:18 +1100 |
---|---|---|
committer | Damien Miller <djm@mindrot.org> | 2024-01-16 14:40:18 +1100 |
commit | 0d96b1506b2f4757fefa5d1f884d49e96a6fd4c3 (patch) | |
tree | 79529d32b4355e8d641555f24452a03a2f9e6371 | |
parent | 50080fa42f5f744b798ee29400c0710f1b59f50e (diff) |
skip tests that use multiplexing on Windows
Some tests here use multiplexing, skip these if DISABLE_FD_PASSING
is set. Should unbreak tests on Windows.
-rw-r--r-- | regress/channel-timeout.sh | 70 |
1 files changed, 37 insertions, 33 deletions
diff --git a/regress/channel-timeout.sh b/regress/channel-timeout.sh index 4293f017..97708f2a 100644 --- a/regress/channel-timeout.sh +++ b/regress/channel-timeout.sh @@ -74,40 +74,44 @@ if [ $r -ne 23 ]; then fail "ssh failed" fi -verbose "multiplexed command timeout" -(cat $OBJ/sshd_proxy.orig ; echo "ChannelTimeout session:command=1") \ - > $OBJ/sshd_proxy -open_mux -mux_client "sleep 5 ; exit 23" -r=$? -if [ $r -ne 255 ]; then - fail "ssh returned unexpected error code $r" -fi -close_mux - -verbose "irrelevant multiplexed command timeout" -(cat $OBJ/sshd_proxy.orig ; echo "ChannelTimeout session:shell=1") \ - > $OBJ/sshd_proxy -open_mux -mux_client "sleep 5 ; exit 23" -r=$? -if [ $r -ne 23 ]; then - fail "ssh returned unexpected error code $r" +if config_defined DISABLE_FD_PASSING ; then + verbose "skipping multiplexing tests" +else + verbose "multiplexed command timeout" + (cat $OBJ/sshd_proxy.orig ; echo "ChannelTimeout session:command=1") \ + > $OBJ/sshd_proxy + open_mux + mux_client "sleep 5 ; exit 23" + r=$? + if [ $r -ne 255 ]; then + fail "ssh returned unexpected error code $r" + fi + close_mux + + verbose "irrelevant multiplexed command timeout" + (cat $OBJ/sshd_proxy.orig ; echo "ChannelTimeout session:shell=1") \ + > $OBJ/sshd_proxy + open_mux + mux_client "sleep 5 ; exit 23" + r=$? + if [ $r -ne 23 ]; then + fail "ssh returned unexpected error code $r" + fi + close_mux + + verbose "global command timeout" + (cat $OBJ/sshd_proxy.orig ; echo "ChannelTimeout global=10") \ + > $OBJ/sshd_proxy + open_mux + mux_client "sleep 1 ; echo ok ; sleep 1; echo ok; sleep 60; touch $OBJ/finished.1" >/dev/null & + mux_client "sleep 60 ; touch $OBJ/finished.2" >/dev/null & + mux_client "sleep 2 ; touch $OBJ/finished.3" >/dev/null & + wait + test -f $OBJ/finished.1 && fail "first mux process completed" + test -f $OBJ/finished.2 && fail "second mux process completed" + test -f $OBJ/finished.3 || fail "third mux process did not complete" + close_mux fi -close_mux - -verbose "global command timeout" -(cat $OBJ/sshd_proxy.orig ; echo "ChannelTimeout global=10") \ - > $OBJ/sshd_proxy -open_mux -mux_client "sleep 1 ; echo ok ; sleep 1; echo ok; sleep 60; touch $OBJ/finished.1" >/dev/null & -mux_client "sleep 60 ; touch $OBJ/finished.2" >/dev/null & -mux_client "sleep 2 ; touch $OBJ/finished.3" >/dev/null & -wait -test -f $OBJ/finished.1 && fail "first mux process completed" -test -f $OBJ/finished.2 && fail "second mux process completed" -test -f $OBJ/finished.3 || fail "third mux process did not complete" -close_mux # Set up a "slow sftp server" that sleeps before executing the real one. cat > $OBJ/slow-sftp-server.sh << _EOF |