projects
/
monkeysphere.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Change import_key to take the path to the file to import as an argument. dkg won...
[monkeysphere.git]
/
src
/
share
/
mh
/
import_key
diff --git
a/src/share/mh/import_key
b/src/share/mh/import_key
index 93afb0a9274871fce0095c5fe905cd5b5d5e01ed..cab2cf55e27df17573840e54e4fcab5882fa0537 100644
(file)
--- a/
src/share/mh/import_key
+++ b/
src/share/mh/import_key
@@
-13,17
+13,14
@@
import_key() {
import_key() {
+local keyFile
local hostName
local userID
local hostName
local userID
-local fingerprint
-# check for presence of secret key
-# FIXME: is this the proper test to be doing here?
-fingerprint_host_key >/dev/null \
- && failure "An OpenPGP host key already exists."
-
-hostName=${1:-$(hostname -f)}
+keyFile="$1"
+[ -f "$keyFile" ]
+hostName=${2:-$(hostname -f)}
userID="ssh://${hostName}"
# create host home
userID="ssh://${hostName}"
# create host home
@@
-32,15
+29,19
@@
chmod 700 "$GNUPGHOME_HOST"
log verbose "importing ssh key..."
# translate ssh key to a private key
log verbose "importing ssh key..."
# translate ssh key to a private key
-PEM2OPENPGP_USAGE_FLAGS=authenticate pem2openpgp "$userID" | gpg_host --import
+PEM2OPENPGP_USAGE_FLAGS=authenticate pem2openpgp "$userID" <"$keyFile" \
+ | gpg_host --import
+
+# load the new host fpr into the fpr variable
+load_fingerprint_secret
-# find the key fingerprint of the newly converted key
-fingerprint=$(fingerprint_host_key)
+# export the host public key to the monkeysphere ssh pub key file
+log debug "creating ssh public key file..."
+ssh-keygen -y -f "$keyFile" > "$HOST_KEY_PUB"
+log info "SSH host public key file: $HOST_KEY_PUB"
-# export public key to file
-log debug "exporting openpgp public key..."
-gpg_host --export-options export-minimal --armor --export "0x${fingerprint}!" > "${MHDATADIR}/ssh_host_rsa_key.pub.gpg"
-log info "SSH host public key in OpenPGP form: ${MHDATADIR}/ssh_host_rsa_key.pub.gpg"
+# export to gpg public key to file
+create_gpg_pub_file
# show info about new key
show_key
# show info about new key
show_key