Damien Miller | 38cd435 | 2002-05-01 13:17:33 +1000 | [diff] [blame] | 1 | # $OpenBSD: stderr-after-eof.sh,v 1.1 2002/03/23 16:38:09 markus Exp $ |
| 2 | # Placed in the Public Domain. |
| 3 | |
| 4 | tid="stderr data after eof" |
| 5 | |
| 6 | DATA=/etc/motd |
| 7 | DATA=${OBJ}/data |
| 8 | COPY=${OBJ}/copy |
| 9 | |
Darren Tucker | c376a88 | 2003-09-04 14:32:02 +1000 | [diff] [blame^] | 10 | if [ -x "`which md5sum 2>&1`" ]; then |
| 11 | CHECKSUM=md5sum |
| 12 | elif [ -x "`which openssl 2>&1`" ]; then |
| 13 | CHECKSUM="openssl md5" |
| 14 | elif [ -x "`which cksum 2>&1`" ]; then |
| 15 | CHECKSUM=cksum |
| 16 | elif [ -x "`which sum 2>&1`" ]; then |
| 17 | CHECKSUM=sum |
| 18 | else |
| 19 | fatal "No checksum program available, aborting $tid test" |
| 20 | fi |
Damien Miller | 38cd435 | 2002-05-01 13:17:33 +1000 | [diff] [blame] | 21 | |
| 22 | # setup data |
| 23 | rm -f ${DATA} ${COPY} |
| 24 | cp /dev/null ${DATA} |
| 25 | for i in 1 2 3 4 5 6; do |
Darren Tucker | c376a88 | 2003-09-04 14:32:02 +1000 | [diff] [blame^] | 26 | (date;echo $i) | $CHECKSUM >> ${DATA} |
Damien Miller | 38cd435 | 2002-05-01 13:17:33 +1000 | [diff] [blame] | 27 | done |
| 28 | |
| 29 | ${SSH} -2 -F $OBJ/ssh_proxy otherhost \ |
| 30 | exec sh -c \'"exec > /dev/null; sleep 2; cat ${DATA} 1>&2 $s"\' \ |
| 31 | 2> ${COPY} |
| 32 | r=$? |
| 33 | if [ $r -ne 0 ]; then |
| 34 | fail "ssh failed with exit code $r" |
| 35 | fi |
| 36 | egrep 'Disconnecting: Received extended_data after EOF' ${COPY} && |
| 37 | fail "ext data received after eof" |
| 38 | cmp ${DATA} ${COPY} || fail "stderr corrupt" |
| 39 | |
| 40 | rm -f ${DATA} ${COPY} |