diff options
Diffstat (limited to 'g10/keylist.c')
-rw-r--r-- | g10/keylist.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/g10/keylist.c b/g10/keylist.c index 49c7afdb5..54296e7b8 100644 --- a/g10/keylist.c +++ b/g10/keylist.c @@ -315,23 +315,17 @@ print_capabilities (PKT_public_key *pk, PKT_secret_key *sk, KBNODE keyblock) } } - if ( keyblock ) { /* figure our the usable capabilities */ + if ( keyblock ) { /* figure out the usable capabilities */ KBNODE k; int enc=0, sign=0, cert=0, disabled=0; for (k=keyblock; k; k = k->next ) { if ( k->pkt->pkttype == PKT_PUBLIC_KEY || k->pkt->pkttype == PKT_PUBLIC_SUBKEY ) { - u32 kid[2]; pk = k->pkt->pkt.public_key; - if(k->pkt->pkttype==PKT_PUBLIC_KEY) - { - keyid_from_pk(pk,kid); - - if(is_disabled(NULL,kid)) - disabled=1; - } + if(pk->is_primary) + disabled=is_disabled(pk); if ( pk->is_valid && !pk->is_revoked && !pk->has_expired ) { if ( pk->pubkey_usage & PUBKEY_USAGE_ENC ) |