freebsd-skq/crypto/openssh/regress/sftp-chroot.sh

33 lines
845 B
Bash
Raw Permalink Normal View History

2018-05-06 12:27:04 +00:00
# $OpenBSD: sftp-chroot.sh,v 1.6 2018/02/09 03:42:57 dtucker Exp $
2013-09-18 17:27:38 +00:00
# Placed in the Public Domain.
tid="sftp in chroot"
CHROOT=/var/run
FILENAME=testdata_${USER}
PRIVDATA=${CHROOT}/${FILENAME}
2017-01-31 12:33:47 +00:00
if [ -z "$SUDO" -a ! -w /var/run ]; then
2018-05-06 12:27:04 +00:00
echo "need SUDO to create file in /var/run, test won't work without"
echo SKIPPED
exit 0
2013-09-18 17:27:38 +00:00
fi
2016-03-10 20:10:25 +00:00
if ! $OBJ/check-perm -m chroot "$CHROOT" ; then
echo "skipped: $CHROOT is unsuitable as ChrootDirectory"
exit 0
fi
2013-09-18 17:27:38 +00:00
$SUDO sh -c "echo mekmitastdigoat > $PRIVDATA" || \
fatal "create $PRIVDATA failed"
start_sshd -oChrootDirectory=$CHROOT -oForceCommand="internal-sftp -d /"
verbose "test $tid: get"
2014-03-22 15:23:38 +00:00
${SFTP} -S "$SSH" -F $OBJ/ssh_config host:/${FILENAME} $COPY \
>>$TEST_REGRESS_LOGFILE 2>&1 || \
2013-09-18 17:27:38 +00:00
fatal "Fetch ${FILENAME} failed"
cmp $PRIVDATA $COPY || fail "$PRIVDATA $COPY differ"
$SUDO rm $PRIVDATA