X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=src%2Fmonkeysphere;h=fe92960472b6b114fea610238084c5755c609ba4;hb=30bc68284d25706ff91403a8bdb9a6e126d92e23;hp=a763151fbdcda814dce35dfdb81982727c710207;hpb=8ab97c9c35f502005c23eb7adb3a8a0177f11630;p=monkeysphere.git diff --git a/src/monkeysphere b/src/monkeysphere index a763151..fe92960 100755 --- a/src/monkeysphere +++ b/src/monkeysphere @@ -48,9 +48,9 @@ subcommands: ssh-proxycommand HOST [PORT] monkeysphere ssh ProxyCommand --no-connect do not make TCP connection to host subkey-to-ssh-agent (s) store authentication subkey in ssh-agent - sshfpr (f) KEYID output ssh fingerprint of gpg key - keys-for-userid (u) USERID output valid keys for user id literal + keys-for-userid (u) USERID output valid keys for given user ids + sshfprs-for-userid USERID output ssh fingerprints for given user ids gen-subkey (g) [KEYID] generate an authentication subkey --length (-l) BITS key length in bits (2048) @@ -68,7 +68,7 @@ gpg_user() { # output the ssh fingerprint of a gpg key gpg_ssh_fingerprint() { keyid="$1" - local tmpfile=$(mktemp) + local tmpfile=$(msmktempfile) # trap to remove tmp file if break trap "rm -f $tmpfile" EXIT @@ -271,7 +271,8 @@ case $COMMAND in subkey_to_ssh_agent "$@" ;; - 'sshfpr'|'f') + 'sshfpr') + echo "Warning: 'sshfpr' is deprecated. Please use 'sshfprs-for-userid' instead." >&2 gpg_ssh_fingerprint "$@" ;; @@ -280,8 +281,24 @@ case $COMMAND in keys_for_userid "$@" ;; + 'sshfprs-for-userid') + CHECK_KEYSERVER=${MONKEYSPHERE_CHECK_KEYSERVER:=${CHECK_KEYSERVER:="true"}} + keytmpdir=$(msmktempdir) + # use a file named " " to avoid arbitrary non-whitespace text + # in the fingerprint output + keytmpfile="$keytmpdir/ " + cd "$keytmpdir" + keys_for_userid "$@" | while read KEYLINE ; do + printf '%s\n' "$KEYLINE" > "$keytmpdir/ " + ssh-keygen -l -f ' ' + done + rm -f "$keytmpfile" + rmdir "$keytmpdir" + ;; + 'keys-from-userid') echo "Warning: 'keys-from-userid' is deprecated. Please use 'keys-for-userid' instead." >&2 + CHECK_KEYSERVER=${MONKEYSPHERE_CHECK_KEYSERVER:=${CHECK_KEYSERVER:="true"}} keys_for_userid "$@" ;;