upstream: When checking for unsafe directories, ignore non-directories

(ie symlinks, where permissions are not relevant).

OpenBSD-Regress-ID: fb6cfc8b022becb62b2dcb99ed3f072b3326e501
This commit is contained in:
dtucker@openbsd.org 2020-01-23 10:19:59 +00:00 committed by Darren Tucker
parent 74deb7029b
commit ba247af8e9

View File

@ -1,4 +1,4 @@
# $OpenBSD: test-exec.sh,v 1.71 2020/01/23 03:42:41 dtucker Exp $
# $OpenBSD: test-exec.sh,v 1.72 2020/01/23 10:19:59 dtucker Exp $
# Placed in the Public Domain.
#SUDO=sudo
@ -449,10 +449,12 @@ else
unsafe=""
dir="${OBJ}"
while test ${dir} != "/"; do
perms=`ls -ld ${dir}`
case "${perms}" in
if test -d "${dir}" ; then
perms=`ls -ld ${dir}`
case "${perms}" in
?????w????*|????????w?*) unsafe="${unsafe} ${dir}" ;;
esac
esac
fi
dir=`dirname ${dir}`
done
if ! test -z "${unsafe}"; then