diff options
Diffstat (limited to 'g10/keyid.c')
-rw-r--r-- | g10/keyid.c | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/g10/keyid.c b/g10/keyid.c index 9d987179d..9c5138605 100644 --- a/g10/keyid.c +++ b/g10/keyid.c @@ -535,6 +535,35 @@ revokestr_from_pk( PKT_public_key *pk ) return mk_datestr (buffer, atime); } + +const char * +usagestr_from_pk( PKT_public_key *pk ) +{ + static char buffer[10]; + int i = 0; + unsigned int use = pk->pubkey_usage; + + if ( use & PUBKEY_USAGE_SIG ) + { + if (pk->is_primary) + buffer[i++] = 'C'; + buffer[i++] = 'S'; + } + + if ( use & PUBKEY_USAGE_ENC ) + buffer[i++] = 'E'; + + if ( (use & PUBKEY_USAGE_AUTH) ) + buffer[i++] = 'A'; + + while (i < 4) + buffer[i++] = ' '; + + buffer[i] = 0; + return buffer; +} + + const char * colon_strtime (u32 t) { |