# -*-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 <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.

# 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 > /dev/null && \
    failure "Host userID '$userID' already exists."

echo "The following user ID will be added to the host key:"
echo "  $userID"
read -p "Are you sure you would like to add this user ID? (y/N) " OK; OK=${OK:=N}
if [ ${OK/y/Y} != 'Y' ] ; then
    failure "User ID not added."
fi

# edit-key script command to add user ID
adduidCommand=$(cat <<EOF
adduid
$userID


save
EOF
)

# execute edit-key script
if echo "$adduidCommand" | gpg_host_edit ; then

    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

}