mirror of git://anongit.mindrot.org/openssh.git
41 lines
959 B
Bash
41 lines
959 B
Bash
# $OpenBSD: stderr-after-eof.sh,v 1.1 2002/03/23 16:38:09 markus Exp $
|
|
# Placed in the Public Domain.
|
|
|
|
tid="stderr data after eof"
|
|
|
|
DATA=/etc/motd
|
|
DATA=${OBJ}/data
|
|
COPY=${OBJ}/copy
|
|
|
|
if [ -x "`which md5sum 2>&1`" ]; then
|
|
CHECKSUM=md5sum
|
|
elif [ -x "`which openssl 2>&1`" ]; then
|
|
CHECKSUM="openssl md5"
|
|
elif [ -x "`which cksum 2>&1`" ]; then
|
|
CHECKSUM=cksum
|
|
elif [ -x "`which sum 2>&1`" ]; then
|
|
CHECKSUM=sum
|
|
else
|
|
fatal "No checksum program available, aborting $tid test"
|
|
fi
|
|
|
|
# setup data
|
|
rm -f ${DATA} ${COPY}
|
|
cp /dev/null ${DATA}
|
|
for i in 1 2 3 4 5 6; do
|
|
(date;echo $i) | $CHECKSUM >> ${DATA}
|
|
done
|
|
|
|
${SSH} -2 -F $OBJ/ssh_proxy otherhost \
|
|
exec sh -c \'"exec > /dev/null; sleep 2; cat ${DATA} 1>&2 $s"\' \
|
|
2> ${COPY}
|
|
r=$?
|
|
if [ $r -ne 0 ]; then
|
|
fail "ssh failed with exit code $r"
|
|
fi
|
|
egrep 'Disconnecting: Received extended_data after EOF' ${COPY} &&
|
|
fail "ext data received after eof"
|
|
cmp ${DATA} ${COPY} || fail "stderr corrupt"
|
|
|
|
rm -f ${DATA} ${COPY}
|