* keyserver.c (keyserver_search_prompt): Make sure the search string is
[gnupg.git] / g10 / keyid.c
index 581d95f..aa9ec0b 100644 (file)
@@ -212,6 +212,30 @@ keystr_from_sk(PKT_secret_key *sk)
   return keystr(sk->keyid);
 }
 
+const char *
+keystr_from_desc(KEYDB_SEARCH_DESC *desc)
+{
+  if(desc->mode==KEYDB_SEARCH_MODE_LONG_KID)
+    return keystr(desc->u.kid);
+  else if(desc->mode==KEYDB_SEARCH_MODE_FPR20)
+    {
+      u32 keyid[2];
+
+      keyid[0] = (unsigned char)desc->u.fpr[12] << 24
+       | (unsigned char)desc->u.fpr[13] << 16
+       | (unsigned char)desc->u.fpr[14] << 8
+       | (unsigned char)desc->u.fpr[15] ;
+      keyid[1] = (unsigned char)desc->u.fpr[16] << 24
+       | (unsigned char)desc->u.fpr[17] << 16
+       | (unsigned char)desc->u.fpr[18] << 8
+       | (unsigned char)desc->u.fpr[19] ;
+
+      return keystr(keyid);
+    }
+  else
+    BUG();
+}
+
 /****************
  * Get the keyid from the secret key and put it into keyid
  * if this is not NULL. Return the 32 low bits of the keyid.