have the import_key also create the ssh pub file, since it is needed to show full...
[monkeysphere.git] / src / share / mh / import_key
index 2e73a8c6cc32878a11e413ca706f5290d91e55c7..9415b4d72ec934463f19ed8e77d39d06fdcef0e0 100644 (file)
@@ -15,12 +15,6 @@ import_key() {
 
 local hostName
 local userID
-local fingerprint
-
-# check for presense 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)}
 
@@ -32,16 +26,17 @@ chmod 700 "$GNUPGHOME_HOST"
 
 log verbose "importing ssh key..."
 # translate ssh key to a private key
-(umask 077 && \
-       pem2openpgp "$userID" | gpg_host --import)
+PEM2OPENPGP_USAGE_FLAGS=authenticate pem2openpgp "$userID" | \
+    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 to ssh public key file
+create_ssh_pub_file
 
-# 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