# -*-shell-script-*- # This should be sourced by bash (though we welcome changes to make it POSIX sh compliant) # Monkeysphere host add-hostname subcommand # # The monkeysphere scripts are written by: # Jameson Rollins # Jamie McClelland # Daniel Kahn Gillmor # # They are Copyright 2008-2009, and are all released under the GPL, # version 3 or later. # add hostname user ID to server key add_hostname() { local userID local fingerprint local tmpuidMatch local line local adduidCommand if [ -z "$1" ] ; then failure "You must specify a hostname to add." fi userID="ssh://${1}" # test that the desired user ID does not already exist find_host_userid "$userID" && \ failure "Host userID '$userID' already exists." if [ "$PROMPT" = "true" ] ; then printf "The following user ID will be added to the host key:\n %s\nAre you sure you would like to add this user ID? (Y/n) " "$userID" >&2 read OK; OK=${OK:=Y} if [ "${OK/y/Y}" != 'Y' ] ; then failure "User ID not added." fi else log debug "adding user ID without prompting." fi # execute edit-key script if <"$GNUPGHOME_HOST/secring.gpg" "$SYSSHAREDIR/keytrans" adduserid \ "$HOST_FINGERPRINT" "$userID" | gpg_host --import ; then gpg_host --check-trustdb update_gpg_pub_file show_key echo echo "NOTE: User ID added to key, but key not published." echo "Run '$PGRM publish-key' to publish the new user ID." else failure "Problem adding user ID." fi }