]> git.ipfire.org Git - thirdparty/openssh-portable.git/commitdiff
upstream: When checking for unsafe directories, ignore non-directories
authordtucker@openbsd.org <dtucker@openbsd.org>
Thu, 23 Jan 2020 10:19:59 +0000 (10:19 +0000)
committerDarren Tucker <dtucker@dtucker.net>
Thu, 23 Jan 2020 11:20:53 +0000 (22:20 +1100)
(ie symlinks, where permissions are not relevant).

OpenBSD-Regress-ID: fb6cfc8b022becb62b2dcb99ed3f072b3326e501

regress/test-exec.sh

index c26e47f7f7bb79271c515ccfe7c5d766d8e0302c..f17f9493da9b1c9e6cadfb3358e635fdd2320c0a 100644 (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