diff options
author | Jameson Graef Rollins <jrollins@finestructure.net> | 2009-01-31 20:43:23 -0500 |
---|---|---|
committer | Jameson Graef Rollins <jrollins@finestructure.net> | 2009-01-31 20:43:23 -0500 |
commit | 8a22863a92cb1df4ed265aed442166c9f1a5387d (patch) | |
tree | c8d3ae2e8c7c415c1aeee7267c013b100939e4eb /src/subcommands/m/import_subkey | |
parent | 54b8a4cdbedafdde87cfa35dc61a48d6a2d46bc6 (diff) |
change hyphens to underscores in function file names, for consistency
with function definitions themselves
Diffstat (limited to 'src/subcommands/m/import_subkey')
-rw-r--r-- | src/subcommands/m/import_subkey | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/src/subcommands/m/import_subkey b/src/subcommands/m/import_subkey new file mode 100644 index 0000000..aa89958 --- /dev/null +++ b/src/subcommands/m/import_subkey @@ -0,0 +1,54 @@ +# -*-shell-script-*- +# This should be sourced by bash (though we welcome changes to make it POSIX sh compliant) + +# Monkeysphere import-subkey subcommand +# +# The monkeysphere scripts are written by: +# Jameson Rollins <jrollins@finestructure.net> +# Jamie McClelland <jm@mayfirst.org> +# Daniel Kahn Gillmor <dkg@fifthhorseman.net> +# +# They are Copyright 2008-2009, and are all released under the GPL, +# version 3 or later. + +# import an existing ssh key as a gpg subkey + +import_subkey() { + local keyFile="~/.ssh/id_rsa" + local keyExpire + local keyID + local gpgOut + local userID + + # get options + while true ; do + case "$1" in + -f|--keyfile) + keyFile="$2" + shift 2 + ;; + -e|--expire) + keyExpire="$2" + shift 2 + ;; + *) + if [ "$(echo "$1" | cut -c 1)" = '-' ] ; then + failure "Unknown option '$1'. +Type '$PGRM help' for usage." + fi + break + ;; + esac + done + + log verbose "importing ssh key..." + fifoDir=$(mktemp -d ${TMPDIR:-/tmp}/tmp.XXXXXXXXXX) + (umask 077 && mkfifo "$fifoDir/pass") + ssh2openpgp | gpg --passphrase-fd 3 3< "$fifoDir/pass" --expert --command-fd 0 --import & + + passphrase_prompt "Please enter your passphrase for $keyID: " "$fifoDir/pass" + + rm -rf "$fifoDir" + wait + log verbose "done." +} |