aboutsummaryrefslogtreecommitdiffstats
path: root/g10/keylist.c
diff options
context:
space:
mode:
Diffstat (limited to 'g10/keylist.c')
-rw-r--r--g10/keylist.c88
1 files changed, 32 insertions, 56 deletions
diff --git a/g10/keylist.c b/g10/keylist.c
index f3fdb15be..8693b343f 100644
--- a/g10/keylist.c
+++ b/g10/keylist.c
@@ -605,9 +605,9 @@ list_keyblock_print ( KBNODE keyblock, int secret, int fpr, void *opaque )
struct sig_stats *stats=opaque;
int skip_sigs=0;
int newformat=((opt.list_options&LIST_SHOW_VALIDITY) && !secret)
- || (opt.list_options & (LIST_SHOW_LONG_KEYIDS
- | LIST_SHOW_UNUSABLE_UIDS
- | LIST_SHOW_UNUSABLE_SUBKEYS));
+ || (opt.list_options & (LIST_SHOW_UNUSABLE_UIDS
+ | LIST_SHOW_UNUSABLE_SUBKEYS))
+ || (keystrlen()>8);
/* get the keyid from the keyblock */
node = find_kbnode( keyblock, secret? PKT_SECRET_KEY : PKT_PUBLIC_KEY );
@@ -623,16 +623,10 @@ list_keyblock_print ( KBNODE keyblock, int secret, int fpr, void *opaque )
sk = node->pkt->pkt.secret_key;
keyid_from_sk( sk, keyid );
- printf("sec%c %4u%c/",(sk->protect.s2k.mode==1001)?'#':
- (sk->protect.s2k.mode==1002)?'>':' ',
- nbits_from_sk( sk ),pubkey_letter( sk->pubkey_algo ));
-
- if(opt.list_options&LIST_SHOW_LONG_KEYIDS)
- printf("%08lX%08lX",(ulong)keyid[0],(ulong)keyid[1]);
- else
- printf("%08lX",(ulong)keyid[1]);
-
- printf(" %s%s",datestr_from_sk( sk ),newformat?"":" " );
+ printf("sec%c %4u%c/%s %s%s",(sk->protect.s2k.mode==1001)?'#':
+ (sk->protect.s2k.mode==1002)?'>':' ',
+ nbits_from_sk( sk ),pubkey_letter( sk->pubkey_algo ),
+ keystr(keyid),datestr_from_sk( sk ),newformat?"":" " );
if(newformat && sk->expiredate )
printf(_(" [expires: %s]"), expirestr_from_sk( sk ) );
@@ -652,15 +646,9 @@ list_keyblock_print ( KBNODE keyblock, int secret, int fpr, void *opaque )
check_trustdb_stale();
- printf("pub %4u%c/",
- nbits_from_pk(pk),pubkey_letter(pk->pubkey_algo));
-
- if(opt.list_options&LIST_SHOW_LONG_KEYIDS)
- printf("%08lX%08lX",(ulong)keyid[0],(ulong)keyid[1]);
- else
- printf("%08lX",(ulong)keyid[1]);
-
- printf(" %s%s",datestr_from_pk( pk ),newformat?"":" " );
+ printf("pub %4u%c/%s %s%s",
+ nbits_from_pk(pk),pubkey_letter(pk->pubkey_algo),
+ keystr(keyid),datestr_from_pk( pk ),newformat?"":" " );
/* We didn't include this before in the key listing, but there
is room in the new format, so why not? */
@@ -685,7 +673,6 @@ list_keyblock_print ( KBNODE keyblock, int secret, int fpr, void *opaque )
for( kbctx=NULL; (node=walk_kbnode( keyblock, &kbctx, 0)) ; ) {
if( node->pkt->pkttype == PKT_USER_ID && !opt.fast_list_mode ) {
- int indent;
PKT_user_id *uid=node->pkt->pkt.user_id;
if((uid->is_expired || uid->is_revoked)
@@ -703,18 +690,20 @@ list_keyblock_print ( KBNODE keyblock, int secret, int fpr, void *opaque )
if(!any && newformat)
printf("\n");
- if(uid->is_revoked || uid->is_expired)
- printf("uid%*s[%s] ",
- (opt.list_options&LIST_SHOW_LONG_KEYIDS)?16:8,"",
- uid->is_revoked?_("revoked"):_("expired"));
- else if((opt.list_options&LIST_SHOW_VALIDITY) && pk)
+ if((uid->is_revoked || uid->is_expired)
+ || ((opt.list_options&LIST_SHOW_VALIDITY) && pk))
{
- const char *validity=
- trust_value_to_string(get_validity(pk,uid));
+ const char *validity;
+ int indent;
- /* Includes the 3 spaces for [, ], and " ". */
- indent=((opt.list_options&LIST_SHOW_LONG_KEYIDS)?23:15)
- -strlen(validity);
+ if(uid->is_revoked)
+ validity=_("revoked");
+ else if(uid->is_expired)
+ validity=_("expired");
+ else
+ validity=trust_value_to_string(get_validity(pk,uid));
+
+ indent=(keystrlen()+7)-strlen(validity);
if(indent<0)
indent=0;
@@ -722,8 +711,7 @@ list_keyblock_print ( KBNODE keyblock, int secret, int fpr, void *opaque )
printf("uid%*s[%s] ",indent,"",validity);
}
else if(newformat)
- printf("uid%*s",
- (opt.list_options&LIST_SHOW_LONG_KEYIDS)?26:18,"");
+ printf("uid%*s",keystrlen()+10,"");
else if(any)
printf("uid%*s",29,"");
@@ -761,13 +749,9 @@ list_keyblock_print ( KBNODE keyblock, int secret, int fpr, void *opaque )
}
keyid_from_pk( pk2, keyid2 );
- printf("sub %4u%c/",
- nbits_from_pk( pk2 ),pubkey_letter( pk2->pubkey_algo ));
- if(opt.list_options&LIST_SHOW_LONG_KEYIDS)
- printf("%08lX%08lX",(ulong)keyid2[0],(ulong)keyid2[1]);
- else
- printf("%08lX",(ulong)keyid2[1]);
- printf(" %s",datestr_from_pk(pk2));
+ printf("sub %4u%c/%s %s",
+ nbits_from_pk( pk2 ),pubkey_letter( pk2->pubkey_algo ),
+ keystr(keyid2),datestr_from_pk(pk2));
if( pk2->is_revoked )
printf(_(" [revoked: %s]"), revokestr_from_pk(pk2));
else if( pk2->has_expired )
@@ -792,15 +776,11 @@ list_keyblock_print ( KBNODE keyblock, int secret, int fpr, void *opaque )
}
keyid_from_sk( sk2, keyid2 );
- printf("ssb%c %4u%c/",
+ printf("ssb%c %4u%c/%s %s",
(sk->protect.s2k.mode==1001)?'#':
(sk->protect.s2k.mode==1002)?'>':' ',
- nbits_from_sk( sk2 ),pubkey_letter( sk2->pubkey_algo ));
- if(opt.list_options&LIST_SHOW_LONG_KEYIDS)
- printf("%08lX%08lX",(ulong)keyid2[0],(ulong)keyid2[1]);
- else
- printf("%08lX",(ulong)keyid2[1]);
- printf(" %s",datestr_from_sk( sk2 ) );
+ nbits_from_sk( sk2 ),pubkey_letter( sk2->pubkey_algo ),
+ keystr(keyid2),datestr_from_sk( sk2 ) );
if( sk2->expiredate )
printf(_(" [expires: %s]"), expirestr_from_sk( sk2 ) );
putchar('\n');
@@ -868,7 +848,7 @@ list_keyblock_print ( KBNODE keyblock, int secret, int fpr, void *opaque )
}
fputs( sigstr, stdout );
- printf("%c%c %c%c%c%c%c%c ",
+ printf("%c%c %c%c%c%c%c%c %s %s",
sigrc,(sig->sig_class-0x10>0 &&
sig->sig_class-0x10<4)?'0'+sig->sig_class-0x10:' ',
sig->flags.exportable?' ':'L',
@@ -877,12 +857,8 @@ list_keyblock_print ( KBNODE keyblock, int secret, int fpr, void *opaque )
sig->flags.notation?'N':' ',
sig->flags.expired?'X':' ',
(sig->trust_depth>9)?'T':
- (sig->trust_depth>0)?'0'+sig->trust_depth:' ');
- if(opt.list_options&LIST_SHOW_LONG_KEYIDS)
- printf("%08lX%08lX",(ulong)sig->keyid[0],(ulong)sig->keyid[1]);
- else
- printf("%08lX",(ulong)sig->keyid[1]);
- printf(" %s", datestr_from_sig(sig));
+ (sig->trust_depth>0)?'0'+sig->trust_depth:' ',
+ keystr(sig->keyid),datestr_from_sig(sig));
if(opt.list_options&LIST_SHOW_SIG_EXPIRE)
printf(" %s", expirestr_from_sig(sig));
printf(" ");