1# -*-shell-script-*- 2# This should be sourced by bash (though we welcome changes to make it POSIX sh compliant) 3 4# Monkeysphere authentication remove-certifier subcommand 5# 6# The monkeysphere scripts are written by: 7# Jameson Rollins <jrollins@finestructure.net> 8# Jamie McClelland <jm@mayfirst.org> 9# Daniel Kahn Gillmor <dkg@fifthhorseman.net> 10# 11# They are Copyright 2008-2009, and are all released under the GPL, 12# version 3 or later. 13 14# delete a certifiers key from the host keyring 15 16remove_certifier() { 17 18local keyID 19local fingerprint 20 21keyID="$1" 22if [ -z "$keyID" ] ; then 23 failure "You must specify the key ID of a key to remove." 24fi 25 26# FIXME: should we be doing a fancier list_certifier output here? 27gpg_core --list-key --fingerprint "0x${keyID}!" || failure 28 29if [ "$PROMPT" != "false" ] ; then 30 printf "Really remove the above listed identity certifier? (Y/n) " >&2 31 read OK; OK=${OK:-Y} 32 if [ "${OK/y/Y}" != 'Y' ] ; then 33 failure "Identity certifier not removed." 34 fi 35else 36 log debug "certifier removed without prompting." 37fi 38 39# delete the requested key from the sphere keyring 40if gpg_sphere --delete-key --batch --yes "0x${keyID}!" ; then 41 # delete key from core keyring as well 42 gpg_core --delete-key --batch --yes "0x${keyID}!" 43 44 # update the trustdb for the authentication keyring 45 gpg_sphere --check-trustdb 46 47 log info "Identity certifier removed." 48else 49 failure "Problem removing identity certifier." 50fi 51 52} 53