summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xsrc/monkeysphere-host22
-rw-r--r--src/share/mh/add_hostname2
-rw-r--r--src/share/mh/revoke_hostname3
3 files changed, 8 insertions, 19 deletions
diff --git a/src/monkeysphere-host b/src/monkeysphere-host
index 2bef23c..9dcd331 100755
--- a/src/monkeysphere-host
+++ b/src/monkeysphere-host
@@ -134,28 +134,18 @@ check_host_no_key() {
Please run 'monkeysphere-host import-key...' first."
}
-# output the index of a user ID on the host key
-# return 1 if user ID not found
+# return 0 if user ID was found.
+# return 1 if user ID not found.
find_host_userid() {
local userID="$1"
local tmpuidMatch
- local line
# match to only "unknown" user IDs (host has no need for ultimate trust)
- tmpuidMatch="-:$(echo $userID | gpg_escape)"
+ tmpuidMatch="uid:-:$(echo $userID | gpg_escape)"
- # find the index of the requsted user ID
- # NOTE: this is based on circumstantial evidence that the order of
- # this output is the appropriate index
- line=$(gpg_host_list | egrep '^uid:' | cut -f2,10 -d: | \
- grep -n -x -F "$tmpuidMatch" 2>/dev/null)
-
- if [ "$line" ] ; then
- echo ${line%%:*}
- return 0
- else
- return 1
- fi
+ # See whether the requsted user ID is present
+ gpg_host_list | cut -f1,2,10 -d: | \
+ grep -q -x -F "$tmpuidMatch" 2>/dev/null
}
# show info about the host key
diff --git a/src/share/mh/add_hostname b/src/share/mh/add_hostname
index 37cfd3c..136b678 100644
--- a/src/share/mh/add_hostname
+++ b/src/share/mh/add_hostname
@@ -28,7 +28,7 @@ fi
userID="ssh://${1}"
# test that the desired user ID does not already exist
-find_host_userid "$userID" > /dev/null && \
+find_host_userid "$userID" && \
failure "Host userID '$userID' already exists."
if [ "$PROMPT" = "true" ] ; then
diff --git a/src/share/mh/revoke_hostname b/src/share/mh/revoke_hostname
index b139cee..b3b8d7a 100644
--- a/src/share/mh/revoke_hostname
+++ b/src/share/mh/revoke_hostname
@@ -19,7 +19,6 @@ local userID
local fingerprint
local tmpuidMatch
local line
-local uidIndex
local message
local revuidCommand
@@ -30,7 +29,7 @@ fi
userID="ssh://${1}"
# make sure the user ID to revoke
-uidIndex=$(find_host_userid "$userID") || \
+find_host_userid "$userID" || \
failure "No non-revoked user ID found matching '$userID'."
if [ "$PROMPT" = "true" ] ; then