upstream: regress test for unmatched glob characters; fails before

previous commit but passes now. bz3488; prodded by dtucker@

OpenBSD-Regress-ID: 0cc5cc9ea4a6fd170dc61b9212f15badaafb3bbd
This commit is contained in:
djm@openbsd.org 2022-10-24 21:52:50 +00:00 committed by Damien Miller
parent a4821a5924
commit 7190154de2
No known key found for this signature in database

View File

@ -15,6 +15,8 @@ fi
COPY2=${OBJ}/copy2
DIR=${COPY}.dd
DIR2=${COPY}.dd2
COPY3=${OBJ}/copy.glob[123]
DIR3=${COPY}.dd.glob[456]
SRC=`dirname ${SCRIPT}`
cp ${SRC}/scp-ssh-wrapper.sh ${OBJ}/scp-ssh-wrapper.scp
@ -22,9 +24,9 @@ chmod 755 ${OBJ}/scp-ssh-wrapper.scp
export SCP # used in scp-ssh-wrapper.scp
scpclean() {
rm -rf ${COPY} ${COPY2} ${DIR} ${DIR2}
mkdir ${DIR} ${DIR2}
chmod 755 ${DIR} ${DIR2}
rm -rf ${COPY} ${COPY2} ${DIR} ${DIR2} ${COPY3} ${DIR3}
mkdir ${DIR} ${DIR2} ${DIR3}
chmod 755 ${DIR} ${DIR2} ${DIR3}
}
for mode in scp sftp ; do
@ -113,6 +115,30 @@ for mode in scp sftp ; do
$SCP $scpopts -r somehost:${DIR} ${DIR2} || fail "copy failed"
diff ${DIFFOPT} ${DIR} ${DIR2} || fail "corrupted copy"
verbose "$tag: unmatched glob file local->remote"
scpclean
$SCP $scpopts ${DATA} somehost:${COPY3} || fail "copy failed"
cmp ${DATA} ${COPY3} || fail "corrupted copy"
verbose "$tag: unmatched glob file remote->local"
# NB. no clean
$SCP $scpopts somehost:${COPY3} ${COPY2} || fail "copy failed"
cmp ${DATA} ${COPY2} || fail "corrupted copy"
verbose "$tag: unmatched glob dir recursive local->remote"
scpclean
rm -rf ${DIR3}
cp ${DATA} ${DIR}/copy
cp ${DATA} ${DIR}/copy.glob[1234]
$SCP $scpopts -r ${DIR} somehost:${DIR3} || fail "copy failed"
diff -rN ${DIR} ${DIR3} || fail "corrupted copy"
verbose "$tag: unmatched glob dir recursive remote->local"
# NB. no clean
rm -rf ${DIR2}
$SCP $scpopts -r somehost:${DIR3} ${DIR2} || fail "copy failed"
diff -rN ${DIR} ${DIR2} || fail "corrupted copy"
verbose "$tag: shell metacharacters"
scpclean
(cd ${DIR} && \