don't use /dev/stdin hack with ssh-keygen to get ssh fingerprint. just use a tmp...
authorJameson Graef Rollins <jrollins@finestructure.net>
Thu, 19 Feb 2009 09:30:40 +0000 (04:30 -0500)
committerJameson Graef Rollins <jrollins@finestructure.net>
Thu, 19 Feb 2009 09:30:40 +0000 (04:30 -0500)
src/monkeysphere-host

index 00f7c3441a8437bc92704779cafc2d1ede500d69..a67715f3ae30fd60f92d9263c591ecc8082159ce 100755 (executable)
@@ -172,6 +172,11 @@ show_key() {
     # import the host key into the tmp dir
     gpg --quiet --import <"$HOST_KEY_FILE"
 
+    # create the ssh key
+    TMPSSH="$GNUPGHOME"/ssh_host_key_rsa_pub
+    openpgp2ssh <"$HOST_KEY_FILE" 2>/dev/null >"$TMPSSH"
+
+    # get the gpg fingerprint
     HOST_FINGERPRINT=$(gpg --quiet --list-keys --with-colons --with-fingerprint \
        | grep '^fpr:' | cut -d: -f10 )
 
@@ -188,9 +193,7 @@ show_key() {
 
     # list the ssh fingerprint
     echo -n "ssh fingerprint: "
-    ssh-keygen -l -f /dev/stdin \
-       <<<$(openpgp2ssh <"$HOST_KEY_FILE" 2>/dev/null) \
-       | awk '{ print $1, $2, $4 }'
+    ssh-keygen -l -f "$TMPSSH" | awk '{ print $1, $2, $4 }'
 
     # remove the tmp file
     trap - EXIT