]> git.ipfire.org Git - thirdparty/openssh-portable.git/commitdiff
upstream: Instead of skipping the all-tokens test if we don't have
authordtucker@openbsd.org <dtucker@openbsd.org>
Sat, 14 Jan 2023 09:57:08 +0000 (09:57 +0000)
committerDarren Tucker <dtucker@dtucker.net>
Sat, 14 Jan 2023 10:07:36 +0000 (21:07 +1100)
OpenSSL (since we use it to compute the hash), put the hash at the end and
just omit it if we don't have it.  Prompted by bz#3521.

OpenBSD-Regress-ID: c79ecba64250ed3b6417294b6c965e6b12ca5eea

regress/percent.sh

index ed5c604d1d0babaead63145a4e788b41874e2b23..3dfa8d2dfe0871113657761c44bf481bfc10f00f 100644 (file)
@@ -1,4 +1,4 @@
-#      $OpenBSD: percent.sh,v 1.15 2023/01/06 12:33:33 dtucker Exp $
+#      $OpenBSD: percent.sh,v 1.16 2023/01/14 09:57:08 dtucker Exp $
 #      Placed in the Public Domain.
 
 tid="percent expansions"
@@ -12,6 +12,7 @@ USER=`id -u -n`
 USERID=`id -u`
 HOST=`hostname | cut -f1 -d.`
 HOSTNAME=`hostname`
+HASH=""
 
 # Localcommand is evaluated after connection because %T is not available
 # until then.  Because of this we use a different method of exercising it,
@@ -98,10 +99,13 @@ for i in matchexec localcommand remotecommand controlpath identityagent \
        # containing %d for UserKnownHostsFile
        if [ "$i" != "userknownhostsfile" ]; then
                trial $i '%d' $HOME
+               in='%%/%i/%h/%d/%L/%l/%n/%p/%r/%u'
+               out="%/$USERID/127.0.0.1/$HOME/$HOST/$HOSTNAME/somehost/$PORT/$REMUSER/$USER"
                if [ ! -z "${HASH}" ]; then
-                       trial $i '%%/%C/%i/%h/%d/%L/%l/%n/%p/%r/%u' \
-                           "%/$HASH/$USERID/127.0.0.1/$HOME/$HOST/$HOSTNAME/somehost/$PORT/$REMUSER/$USER"
+                       in="$in/%C"
+                       out="$out/$HASH"
                fi
+               trial $i "$in" "$out"
        fi
 done