Also show the algorithm used.

Signed-off-by: Jonas Rebmann <[email protected]>
---
 commands/keys.c             |  8 ++------
 include/crypto/public_key.h | 12 ++++++++++++
 2 files changed, 14 insertions(+), 6 deletions(-)

diff --git a/commands/keys.c b/commands/keys.c
index 616d44c25a..83c3ed533d 100644
--- a/commands/keys.c
+++ b/commands/keys.c
@@ -8,12 +8,8 @@ static int do_keys(int argc, char *argv[])
        int id;
 
        for_each_public_key(key, id) {
-               printf("KEY: %*phN", key->hashlen, key->hash);
-
-               if (key->key_name_hint)
-                       printf(" (%s)\n", key->key_name_hint);
-               else
-                       printf("\n");
+               printf("KEY: %*phN\tTYPE: %s\tKEYRING: %s\tHINT: %s\n", 
key->hashlen,
+                      key->hash, public_key_type_string(key->type), 
key->keyring, key->key_name_hint);
        }
 
        return 0;
diff --git a/include/crypto/public_key.h b/include/crypto/public_key.h
index 4954fab089..0fd8e1e304 100644
--- a/include/crypto/public_key.h
+++ b/include/crypto/public_key.h
@@ -13,6 +13,18 @@ enum public_key_type {
        PUBLIC_KEY_TYPE_ECDSA,
 };
 
+static inline const char *public_key_type_string(enum public_key_type type)
+{
+       switch (type) {
+       case PUBLIC_KEY_TYPE_RSA:
+               return "RSA";
+       case PUBLIC_KEY_TYPE_ECDSA:
+               return "ECDSA";
+       default:
+               return "unknown";
+       }
+}
+
 struct public_key {
        enum public_key_type type;
        const char *key_name_hint;

-- 
2.51.2.535.g419c72cb8a


Reply via email to