Call for testing: OpenSSH 8.4

Mark D. Baushke mdb at juniper.net
Mon Sep 21 17:32:37 AEST 2020


Hi Darren,

Darren Tucker <dtucker at dtucker.net> writes:

> What's the problem on OS X?

On macOS Catalina (10.15.6) it seems that multiplex.sh is failing.
(Configured to use homebrew's openssl 1.1.1g)

mdb at mdb-mbp$make tests LTESTS=multiplex
./install-sh -c -d `pwd`/regress/unittests/test_helper
./install-sh -c -d `pwd`/regress/unittests/sshbuf
./install-sh -c -d `pwd`/regress/unittests/sshkey
./install-sh -c -d `pwd`/regress/unittests/sshsig
./install-sh -c -d `pwd`/regress/unittests/bitmap
./install-sh -c -d `pwd`/regress/unittests/conversion
./install-sh -c -d `pwd`/regress/unittests/hostkeys
./install-sh -c -d `pwd`/regress/unittests/kex
./install-sh -c -d `pwd`/regress/unittests/match
./install-sh -c -d `pwd`/regress/unittests/utf8
./install-sh -c -d `pwd`/regress/misc/kexfuzz
./install-sh -c -d `pwd`/regress/misc/sk-dummy
[ -f `pwd`/regress/Makefile ] || \
	    ln -s `cd . && pwd`/regress/Makefile `pwd`/regress/Makefile
(cd openbsd-compat && /Library/Developer/CommandLineTools/usr/bin/make)
make[1]: Nothing to be done for `all'.
BUILDDIR=`pwd`; \
	cd ./regress || exit $?; \
	EGREP='/usr/bin/grep -E' \
	/Library/Developer/CommandLineTools/usr/bin/make \
		.OBJDIR="${BUILDDIR}/regress" \
		.CURDIR="`pwd`" \
		BUILDDIR="${BUILDDIR}" \
		OBJ="${BUILDDIR}/regress/" \
		PATH="${BUILDDIR}:${PATH}" \
		TEST_ENV=MALLOC_OPTIONS="" \
		TEST_MALLOC_OPTIONS="" \
		TEST_SSH_SCP="${BUILDDIR}/scp" \
		TEST_SSH_SSH="${BUILDDIR}/ssh" \
		TEST_SSH_SSHD="${BUILDDIR}/sshd" \
		TEST_SSH_SSHAGENT="${BUILDDIR}/ssh-agent" \
		TEST_SSH_SSHADD="${BUILDDIR}/ssh-add" \
		TEST_SSH_SSHKEYGEN="${BUILDDIR}/ssh-keygen" \
		TEST_SSH_SSHPKCS11HELPER="${BUILDDIR}/ssh-pkcs11-helper" \
		TEST_SSH_SSHKEYSCAN="${BUILDDIR}/ssh-keyscan" \
		TEST_SSH_SFTP="${BUILDDIR}/sftp" \
		TEST_SSH_PKCS11_HELPER="${BUILDDIR}/ssh-pkcs11-helper" \
		TEST_SSH_SK_HELPER="${BUILDDIR}/ssh-sk-helper" \
		TEST_SSH_SFTPSERVER="${BUILDDIR}/sftp-server" \
		TEST_SSH_PLINK="plink" \
		TEST_SSH_PUTTYGEN="puttygen" \
		TEST_SSH_CONCH="conch" \
		TEST_SSH_IPV6="yes" \
		TEST_SSH_UTF8="yes" \
		TEST_SSH_ECC="yes" \
		TEST_SHELL="sh" \
		EXEEXT="" \
		file-tests && echo all file-tests passed
/Users/mdb/Work/openssh-versions/openssh-git/openssh/ssh-keygen -if /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/rsa_ssh2.prv | diff - /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/rsa_openssh.prv
tr '\n' '\r' </Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/rsa_ssh2.prv > /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/rsa_ssh2_cr.prv
/Users/mdb/Work/openssh-versions/openssh-git/openssh/ssh-keygen -if /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/rsa_ssh2_cr.prv | diff - /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/rsa_openssh.prv
awk '{print $0 "\r"}' /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/rsa_ssh2.prv > /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/rsa_ssh2_crnl.prv
/Users/mdb/Work/openssh-versions/openssh-git/openssh/ssh-keygen -if /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/rsa_ssh2_crnl.prv | diff - /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/rsa_openssh.prv
cat /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/rsa_openssh.prv > /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress//t2.out
chmod 600 /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress//t2.out
/Users/mdb/Work/openssh-versions/openssh-git/openssh/ssh-keygen -yf /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress//t2.out | diff - /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/rsa_openssh.pub
/Users/mdb/Work/openssh-versions/openssh-git/openssh/ssh-keygen -ef /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/rsa_openssh.pub >/Users/mdb/Work/openssh-versions/openssh-git/openssh/regress//t3.out
/Users/mdb/Work/openssh-versions/openssh-git/openssh/ssh-keygen -if /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress//t3.out | diff - /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/rsa_openssh.pub
/Users/mdb/Work/openssh-versions/openssh-git/openssh/ssh-keygen -E md5 -lf /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/rsa_openssh.pub |\
		awk '{print $2}' | diff - /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/t4.ok
/Users/mdb/Work/openssh-versions/openssh-git/openssh/ssh-keygen -Bf /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/rsa_openssh.pub |\
		awk '{print $2}' | diff - /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/t5.ok
/Users/mdb/Work/openssh-versions/openssh-git/openssh/ssh-keygen -if /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/dsa_ssh2.prv > /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress//t6.out1
/Users/mdb/Work/openssh-versions/openssh-git/openssh/ssh-keygen -if /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/dsa_ssh2.pub > /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress//t6.out2
chmod 600 /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress//t6.out1
/Users/mdb/Work/openssh-versions/openssh-git/openssh/ssh-keygen -yf /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress//t6.out1 | diff - /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress//t6.out2
/Users/mdb/Work/openssh-versions/openssh-git/openssh/ssh-keygen -lf /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress//t7.out > /dev/null
/Users/mdb/Work/openssh-versions/openssh-git/openssh/ssh-keygen -Bf /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress//t7.out > /dev/null
/Users/mdb/Work/openssh-versions/openssh-git/openssh/ssh-keygen -lf /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress//t8.out > /dev/null
/Users/mdb/Work/openssh-versions/openssh-git/openssh/ssh-keygen -Bf /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress//t8.out > /dev/null
test "yes" != yes || \
	/Users/mdb/Work/openssh-versions/openssh-git/openssh/ssh-keygen -lf /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress//t9.out > /dev/null
test "yes" != yes || \
	/Users/mdb/Work/openssh-versions/openssh-git/openssh/ssh-keygen -Bf /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress//t9.out > /dev/null
/Users/mdb/Work/openssh-versions/openssh-git/openssh/ssh-keygen -lf /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress//t10.out > /dev/null
/Users/mdb/Work/openssh-versions/openssh-git/openssh/ssh-keygen -Bf /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress//t10.out > /dev/null
/Users/mdb/Work/openssh-versions/openssh-git/openssh/ssh-keygen -E sha256 -lf /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/rsa_openssh.pub |\
		awk '{print $2}' | diff - /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/t11.ok
/Users/mdb/Work/openssh-versions/openssh-git/openssh/ssh-keygen -lf /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress//t12.out.pub | grep test-comment-1234 >/dev/null
all file-tests passed
BUILDDIR=`pwd`; \
	cd ./regress || exit $?; \
	EGREP='/usr/bin/grep -E' \
	/Library/Developer/CommandLineTools/usr/bin/make \
		.OBJDIR="${BUILDDIR}/regress" \
		.CURDIR="`pwd`" \
		BUILDDIR="${BUILDDIR}" \
		OBJ="${BUILDDIR}/regress/" \
		PATH="${BUILDDIR}:${PATH}" \
		TEST_ENV=MALLOC_OPTIONS="" \
		TEST_MALLOC_OPTIONS="" \
		TEST_SSH_SCP="${BUILDDIR}/scp" \
		TEST_SSH_SSH="${BUILDDIR}/ssh" \
		TEST_SSH_SSHD="${BUILDDIR}/sshd" \
		TEST_SSH_SSHAGENT="${BUILDDIR}/ssh-agent" \
		TEST_SSH_SSHADD="${BUILDDIR}/ssh-add" \
		TEST_SSH_SSHKEYGEN="${BUILDDIR}/ssh-keygen" \
		TEST_SSH_SSHPKCS11HELPER="${BUILDDIR}/ssh-pkcs11-helper" \
		TEST_SSH_SSHKEYSCAN="${BUILDDIR}/ssh-keyscan" \
		TEST_SSH_SFTP="${BUILDDIR}/sftp" \
		TEST_SSH_PKCS11_HELPER="${BUILDDIR}/ssh-pkcs11-helper" \
		TEST_SSH_SK_HELPER="${BUILDDIR}/ssh-sk-helper" \
		TEST_SSH_SFTPSERVER="${BUILDDIR}/sftp-server" \
		TEST_SSH_PLINK="plink" \
		TEST_SSH_PUTTYGEN="puttygen" \
		TEST_SSH_CONCH="conch" \
		TEST_SSH_IPV6="yes" \
		TEST_SSH_UTF8="yes" \
		TEST_SSH_ECC="yes" \
		TEST_SHELL="sh" \
		EXEEXT="" \
		t-exec && echo all t-exec passed
run test multiplex.sh ...
test connection multiplexing: envpass
test connection multiplexing: transfer
test connection multiplexing: forward
cmp: EOF on /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/copy
ssh: corrupted copy of /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/data
/Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/multiplex.sh: line 86: 58948 Terminated: 15          $NC -N -l 127.0.0.1 $((${PORT} + 1)) < ${DATA} > /dev/null
test connection multiplexing: status 0 ()
test connection multiplexing: status 0 (-Oproxy)
test connection multiplexing: status 1 ()
test connection multiplexing: status 1 (-Oproxy)
test connection multiplexing: status 4 ()
test connection multiplexing: status 4 (-Oproxy)
test connection multiplexing: status 5 ()
test connection multiplexing: status 5 (-Oproxy)
test connection multiplexing: status 44 ()
test connection multiplexing: status 44 (-Oproxy)
test connection multiplexing: cmd check
test connection multiplexing: cmd forward local (TCP)
test connection multiplexing: cmd forward remote (TCP)
test connection multiplexing: cmd forward local (UNIX)
test connection multiplexing: cmd forward remote (UNIX)
test connection multiplexing: cmd exit
test connection multiplexing: cmd stop
failed connection multiplexing
make[1]: *** [t-exec] Error 1
make: *** [t-exec] Error 2
mdb at mdb-mbp$ ls regress/failed*
regress/failed-regress.log	regress/failed-sshd.log
regress/failed-ssh.log
mdb at mdb-mbp$ for fail in regress/failed*; do echo "=== $fail start ==="; cat $fail; echo "=== $fail end ==="; done
=== regress/failed-regress.log start ===
trace: forward over TCP/IP and check result
debug1: multiplexing control connection
debug3: fd 6 is O_NONBLOCK
debug3: fd 6 is O_NONBLOCK
debug1: channel 1: new [mux-control]
debug3: channel_post_mux_listener: new mux channel 1 fd 6
debug3: mux_master_read_cb: channel 1: hello sent
debug3: mux_master_read_cb: channel 1 packet type 0x00000001 len 4
debug2: mux_master_process_hello: channel 1 client version 4
debug3: mux_master_read_cb: channel 1 packet type 0x10000006 len 42
debug2: mux_master_process_open_fwd: channel 1: request local forward 127.0.0.1:4244 -> 127.0.0.1:4243
debug3: channel_setup_fwd_listener_tcpip: type 2 wildcard 0 addr 127.0.0.1
debug1: Local forwarding listening on 127.0.0.1 port 4244.
bind [127.0.0.1]:4244: Address already in use
channel_setup_fwd_listener_tcpip: cannot listen to port: 4244
mux_master_process_open_fwd: requested local forward 127.0.0.1:4244 -> 127.0.0.1:4243 failed
debug2: channel 1: ctl read<=0 rfd 6 len 0
debug2: channel 1: read failed
debug2: channel 1: chan_shutdown_read (i0 o0 sock 6 wfd 6 efd -1 [closed])
debug2: channel 1: input open -> drain
debug2: channel 1: ibuf empty
debug2: channel 1: input drain -> closed
debug2: channel 1: rcvd close
debug2: channel 1: output open -> drain
debug2: channel 1: obuf empty
debug2: channel 1: chan_shutdown_write (i3 o1 sock 6 wfd 6 efd -1 [closed])
debug2: channel 1: chan_shutdown_write: shutdown() failed for fd 6 [i3 o1]: Socket is not connected
debug2: channel 1: output drain -> closed
debug2: channel 1: is dead (local)
debug2: channel 1: gc: notify user
debug3: mux_master_control_cleanup_cb: entering for channel 1
debug2: channel 1: gc: user detached
debug2: channel 1: is dead (local)
debug2: channel 1: garbage collecting
debug1: channel 1: free: mux-control, nchannels 2
debug3: channel 1: status: The following connections are open:
  #1 mux-control (t16 nr0 i3/0 o3/0 e[closed]/0 fd 6/6/-1 sock 6 cc -1)

FAIL: ssh: corrupted copy of /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/data

=== regress/failed-regress.log end ===
=== regress/failed-ssh.log start ===
trace: forward over TCP/IP and check result
debug2: fd 4 setting O_NONBLOCK
debug2: mux_client_hello_exchange: master version 4
debug3: mux_client_forwards: request forwardings: 1 local, 0 remote
debug1: Requesting forwarding of local forward 127.0.0.1:4244 -> 127.0.0.1:4243
mux_client_forward: forwarding request failed: Port forwarding failed
muxclient: master forward request failed
FAIL: ssh: corrupted copy of /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/data

=== regress/failed-ssh.log end ===
=== regress/failed-sshd.log start ===
trace: forward over TCP/IP and check result
FAIL: ssh: corrupted copy of /Users/mdb/Work/openssh-versions/openssh-git/openssh/regress/data

=== regress/failed-sshd.log end ===
mdb at mdb-mbp$ 



More information about the openssh-unix-dev mailing list