X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=src%2Fmonkeysphere-server;h=2b9b7443c1c4fc44ff4a020fb39ab54dc8b81f64;hb=b0ea15c8e359a908583e08da0663d69e353c77dc;hp=3259e3360166b0776c49d3e6b344b817587d1820;hpb=6fb350a883fa4d8b1bc9b5e01cc3b01c96354d08;p=monkeysphere.git diff --git a/src/monkeysphere-server b/src/monkeysphere-server index 3259e33..2b9b744 100755 --- a/src/monkeysphere-server +++ b/src/monkeysphere-server @@ -402,11 +402,41 @@ EOF # revoke hostname user ID to server key revoke_hostname() { + local msg + local uidNum + local tmpuidMatch + local fpr + local linenum + if [ -z "$1" ] ; then failure "You must specify a hostname to revoke." fi - failure "Sorry, not yet implemented." + fpr=$(fingerprint_server_key) + tmpuidMatch="u:$(escape "ssh://$1")" + + if linenum=$(gpg_host --list-keys --with-colons --fixed-list-mode "0x$fpr"\! | egrep '^(uid|uat):' | cut -f2,10 -d: | grep -n -x -F "$tmpuidMatch") ; then + uidNum=${linenum%%:*} + else + failure "no non-revoked hostname '$1' is listed." + fi + + msg="hostname removed by monkeysphere-server on $(date +%F)" + + + revuidCommand=$(cat <