Add scp's path to test sshd's PATH.
authordtucker <dtucker@openbsd.org>
Fri, 13 Jan 2023 04:23:00 +0000 (04:23 +0000)
committerdtucker <dtucker@openbsd.org>
Fri, 13 Jan 2023 04:23:00 +0000 (04:23 +0000)
If the scp we're testing is fully qualified (eg it's not in the system
PATH) then add its path to the under-test sshd's PATH so we can find it.
Prompted by bz#3518.

regress/usr.bin/ssh/test-exec.sh

index 5587492..8f26b59 100644 (file)
@@ -1,4 +1,4 @@
-#      $OpenBSD: test-exec.sh,v 1.92 2022/07/25 07:12:45 dtucker Exp $
+#      $OpenBSD: test-exec.sh,v 1.93 2023/01/13 04:23:00 dtucker Exp $
 #      Placed in the Public Domain.
 
 #SUDO=sudo
@@ -332,6 +332,13 @@ cat << EOF > $OBJ/sshd_config
        Subsystem       sftp    $SFTPSERVER
 EOF
 
+# If we're testing a non-installed scp, add its directory to sshd's PATH
+# so we can test it.
+case "$SCP" in
+/*)    PATH_WITH_SCP="`dirname $SCP`:$PATH"
+       echo "  SetEnv PATH='$PATH_WITH_SCP'" >>$OBJ/sshd_config ;;
+esac
+
 # This may be necessary if /usr/src and/or /usr/obj are group-writable,
 # but if you aren't careful with permissions then the unit tests could
 # be abused to locally escalate privileges.