]> git.ipfire.org Git - thirdparty/openssh-portable.git/commitdiff
upstream: Add percent_expand test for 'Match Exec'.
authordtucker@openbsd.org <dtucker@openbsd.org>
Fri, 3 Apr 2020 03:14:03 +0000 (03:14 +0000)
committerDamien Miller <djm@mindrot.org>
Fri, 3 Apr 2020 04:46:13 +0000 (15:46 +1100)
OpenBSD-Regress-ID: a41c14fd6a0b54d66aa1e9eebfb9ec962b41232f

regress/percent.sh

index 84999fd0fe1ada60fc71e0e069697d1fad7c9920..7e19abe8f37bdad6482b87bec7a260da47fd5687 100644 (file)
@@ -1,4 +1,4 @@
-#      $OpenBSD: percent.sh,v 1.1 2020/04/03 02:33:31 dtucker Exp $
+#      $OpenBSD: percent.sh,v 1.2 2020/04/03 03:14:03 dtucker Exp $
 #      Placed in the Public Domain.
 
 tid="percent expansions"
@@ -19,14 +19,24 @@ trial()
        opt="$1"; arg="$2"; expect="$3"
 
        trace "test $opt=$arg $expect"
-       if [ "$opt" = "localcommand" ]; then
+       rm -f $OBJ/actual
+       case "$opt" in
+       localcommand)
                ${SSH} -F $OBJ/ssh_proxy -o $opt="echo '$arg' >$OBJ/actual" \
                    somehost true
                got=`cat $OBJ/actual`
-       else
+               ;;
+       matchexec)
+               (cat $OBJ/ssh_proxy && \
+                echo "Match Exec \"echo '$arg' >$OBJ/actual\"") \
+                   >$OBJ/ssh_proxy_match
+               ${SSH} -F $OBJ/ssh_proxy_match remuser@somehost true || true
+               got=`cat $OBJ/actual`
+               ;;
+       *)
                got=`${SSH} -F $OBJ/ssh_proxy -o $opt="$arg" -G \
                    remuser@somehost | awk '$1=="'$opt'"{print $2}'`
-       fi
+       esac
        if [ "$got" != "$expect" ]; then
                fail "$opt=$arg expect $expect got $got"
        else
@@ -34,7 +44,8 @@ trial()
        fi
 }
 
-for i in localcommand remotecommand controlpath identityagent forwardagent; do
+for i in matchexec localcommand remotecommand controlpath identityagent \
+    forwardagent; do
        if [ "$i" = "localcommand" ]; then
                HASH=94237ca18fe6b187dccf57e5593c0bb0a29cc302
                REMUSER=$USER