Call for testing: OpenSSH-6.5
Damien Miller
djm at mindrot.org
Sat Jan 25 12:13:37 EST 2014
On Fri, 24 Jan 2014, Hisashi T Fujinaka wrote:
> On Sat, 25 Jan 2014, Damien Miller wrote:
>
> > You'll probably need this patch too, to make sure you are testing the
> > right scp - our regress tests were incorrectly testing the system one
> > rather than the one that was just built:
> >
> >
> > commit b0e0f760b861676a3fe5c40133b270713d5321a9
>
> I think I'm doing something wrong because I'm still stuck at the copy.
> Maybe I can get it to dump a core file.
There will be two sftp processes run in the test - see if you can get
a core and ktrace from each. I used something like this (patch from
memory):
Index: regress/scp-ssh-wrapper.sh
===================================================================
RCS file: /var/cvs/openssh/regress/scp-ssh-wrapper.sh,v
retrieving revision 1.4
diff -u -p -r1.4 scp-ssh-wrapper.sh
--- regress/scp-ssh-wrapper.sh 24 Jan 2014 03:27:06 -0000 1.4
+++ regress/scp-ssh-wrapper.sh 25 Jan 2014 01:12:30 -0000
@@ -54,6 +54,6 @@ badserver_4)
*)
set -- $arg
shift
- exec $SCP "$@"
+ exec ktruss -o /tmp/scp-remote.ktrace $SCP "$@"
;;
esac
Index: regress/scp.sh
===================================================================
RCS file: /var/cvs/openssh/regress/scp.sh,v
retrieving revision 1.13
diff -u -p -r1.13 scp.sh
--- regress/scp.sh 24 Jan 2014 03:27:06 -0000 1.13
+++ regress/scp.sh 25 Jan 2014 01:13:12 -0000
@@ -29,63 +29,63 @@ scpclean() {
verbose "$tid: simple copy local file to local file"
scpclean
-$SCP $scpopts ${DATA} ${COPY} || fail "copy failed"
+ktruss -o /tmp/scp-local.ktrace $SCP $scpopts ${DATA} ${COPY} || fail "copy failed"
cmp ${DATA} ${COPY} || fail "corrupted copy"
verbose "$tid: simple copy local file to remote file"
scpclean
-$SCP $scpopts ${DATA} somehost:${COPY} || fail "copy failed"
+ktruss -o /tmp/scp-local.ktrace $SCP $scpopts ${DATA} somehost:${COPY} || fail "copy failed"
cmp ${DATA} ${COPY} || fail "corrupted copy"
verbose "$tid: simple copy remote file to local file"
scpclean
-$SCP $scpopts somehost:${DATA} ${COPY} || fail "copy failed"
+ktruss -o /tmp/scp-local.ktrace $SCP $scpopts somehost:${DATA} ${COPY} || fail "copy failed"
cmp ${DATA} ${COPY} || fail "corrupted copy"
verbose "$tid: simple copy local file to remote dir"
scpclean
cp ${DATA} ${COPY}
-$SCP $scpopts ${COPY} somehost:${DIR} || fail "copy failed"
+ktruss -o /tmp/scp-local.ktrace $SCP $scpopts ${COPY} somehost:${DIR} || fail "copy failed"
cmp ${COPY} ${DIR}/copy || fail "corrupted copy"
verbose "$tid: simple copy local file to local dir"
scpclean
cp ${DATA} ${COPY}
-$SCP $scpopts ${COPY} ${DIR} || fail "copy failed"
+ktruss -o /tmp/scp-local.ktrace $SCP $scpopts ${COPY} ${DIR} || fail "copy failed"
cmp ${COPY} ${DIR}/copy || fail "corrupted copy"
verbose "$tid: simple copy remote file to local dir"
scpclean
cp ${DATA} ${COPY}
-$SCP $scpopts somehost:${COPY} ${DIR} || fail "copy failed"
+ktruss -o /tmp/scp-local.ktrace $SCP $scpopts somehost:${COPY} ${DIR} || fail "copy failed"
cmp ${COPY} ${DIR}/copy || fail "corrupted copy"
verbose "$tid: recursive local dir to remote dir"
scpclean
rm -rf ${DIR2}
cp ${DATA} ${DIR}/copy
-$SCP $scpopts -r ${DIR} somehost:${DIR2} || fail "copy failed"
+ktruss -o /tmp/scp-local.ktrace $SCP $scpopts -r ${DIR} somehost:${DIR2} || fail "copy failed"
diff ${DIFFOPT} ${DIR} ${DIR2} || fail "corrupted copy"
verbose "$tid: recursive local dir to local dir"
scpclean
rm -rf ${DIR2}
cp ${DATA} ${DIR}/copy
-$SCP $scpopts -r ${DIR} ${DIR2} || fail "copy failed"
+ktruss -o /tmp/scp-local.ktrace $SCP $scpopts -r ${DIR} ${DIR2} || fail "copy failed"
diff ${DIFFOPT} ${DIR} ${DIR2} || fail "corrupted copy"
verbose "$tid: recursive remote dir to local dir"
scpclean
rm -rf ${DIR2}
cp ${DATA} ${DIR}/copy
-$SCP $scpopts -r somehost:${DIR} ${DIR2} || fail "copy failed"
+ktruss -o /tmp/scp-local.ktrace $SCP $scpopts -r somehost:${DIR} ${DIR2} || fail "copy failed"
diff ${DIFFOPT} ${DIR} ${DIR2} || fail "corrupted copy"
verbose "$tid: shell metacharacters"
scpclean
(cd ${DIR} && \
touch '`touch metachartest`' && \
-$SCP $scpopts *metachar* ${DIR2} 2>/dev/null; \
+ktruss -o /tmp/scp-local.ktrace $SCP $scpopts *metachar* ${DIR2} 2>/dev/null; \
[ ! -f metachartest ] ) || fail "shell metacharacters"
if [ ! -z "$SUDO" ]; then
@@ -119,7 +119,7 @@ verbose "$tid: detect non-directory targ
scpclean
echo a > ${COPY}
echo b > ${COPY2}
-$SCP $scpopts ${DATA} ${COPY} ${COPY2}
+ktruss -o /tmp/scp-local.ktrace $SCP $scpopts ${DATA} ${COPY} ${COPY2}
cmp ${COPY} ${COPY2} >/dev/null && fail "corrupt target"
scpclean
More information about the openssh-unix-dev
mailing list